Este documento resume los conceptos clave de Integration Services (SSIS) para optimizar la carga de datos. Explica la arquitectura de BI y cómo SSIS se usa en procesos ETL para cargar áreas de staging y dimensiones en el data warehouse. También revisa los componentes más utilizados en SSIS, cómo diseñar paquetes, y optimizar buffers para mejorar el rendimiento.
2. Agenda
• Arquitectura de BI (ETL área)
• Integration Services en procesos de ETL
– Cargando el área de Staging
– Cargando Dimensiones en el Data Warehouse
• Recuerda
– Componentes más utilizados
– Cómo diseñar
– Optimizando buffers
4. SSIS como herramienta ETL
Text mining Data mining Mobile
components components data
Custom Merges
source
Warehouse
Standard Data cleansing
sources components
Reports
SQL Server Integration Services
5. SSIS: Un arma de doble filo
• Puede:
– Agregar un problema
– O contribuir a la solución
• Es necesario
– Coordinar los procesos
– Manejar las Cadenas de
dependencia
6. Cargando el área de Staging
• Mínimo impacto sobre el origen
• Trazabilidad de cambios
• Generación de Deltas
• Limpieza de datos
8. Cargando el Data Warehouse
• Cargando Tablas de Dimensiones
– SCD (Slowly Changing Dimensions)
• Dimensiones lentamente cambiantes
• Dimensiones de variación lenta (B.O.L.)
• Cargando Tablas de Hechos
• Limpieza de datos
11. Componentes más usados
• Ordenaciones
– Sort
• Para evitar joins en Select al origen
– Lookup
– Merge Join
• Gestion del flujo de datos
– Conditional Split
– Multicast
– Union All
• Transformaciones
– Derived Column
12. Componentes más usados
• Actualizar datos
– OLE DB Command
– Ole DB Destination + SQL Task en el ControlFlow
• SCD
– SCD Wizard
– SCD de Terceros (ej: Kimball)
– SCD Personalizado
• Script Task / Script Component
SQLU Summit
15. Optimizando Buffers
• Streaming
– Reutiliza el Buffer
– Ejemplos: Data Convert, Derived Column, Lookup
• Bloqueo parcial
– Copia datos a un nuevo buffer
– Ejemplos: Pivot, Un-pivot, Merge, Merge Join, Union All
• Bloqueo
– Necesita todas las filas de entrada antes de continuar
– Copia datos a un nuevo buffer
– Ejemplos: Aggregate, Sort, Row Sampling, Fuzzy Grouping
17. SSIS – Uso eficiente
• Todas las transformaciones, limpiezas, cálculos, joins, etc,
se hacen en el Data Flow
• Optimizar lecturas en origen:
– SELECT <Col1>,…,<ColN>
From <Tabla>
Where <Sólo las filas que necesito>
[order by <Col1>,…, <ColN>]
• Optimizar escrituras en destino
– Bulk Insert
– No fila a fila