Automatización de canalizaciones de datos en Snowflake
Emily Melhuish
Technical Curriculum Developer, Snowflake
Caso de uso:

Tablas externas
CREATE EXTERNAL TABLE logistics.supplier_inventory
WITH LOCATION = @harbr_stage/inventory/
FILE_FORMAT = (TYPE = 'PARQUET')
AUTO_REFRESH = TRUE;
-- Consultar inventario del socio
SELECT supplier_id,
COUNT(*) AS file_count,
SUM(quantity) AS total_units
FROM logistics.supplier_inventory
WHERE delivery_date >= '2024-01-01'
GROUP BY supplier_id;
Tablas externas
-- Consulta directa, sin carga
SELECT * FROM
logistics.supplier_inventory
WHERE supplier_id = 'SUP-042';
Cargar con COPY INTO
-- Cargar una vez, consultar rápido
COPY INTO logistics.delivery_events
FROM @harbr_stage/events/;
¿Cómo aseguramos leer bien desde S3, Azure Blob o GCS?
Apache = Formato de tabla abierto: datos no ligados a ningún motor

Gestionado por Snowflake
CREATE ICEBERG TABLE
logistics.shipments
CATALOG = 'SNOWFLAKE'
EXTERNAL_VOLUME = 'harbr_s3_vol'
BASE_LOCATION = 'iceberg/shipments/';
Gestionado externamente
CREATE ICEBERG TABLE
logistics.partner_data
CATALOG = 'glue_catalog'
EXTERNAL_VOLUME = 'harbr_s3_vol'
CATALOG_TABLE_NAME =
'partner.deliveries';
Automatización de canalizaciones de datos en Snowflake