Tutorial de SSIS para principiantes: ¿Qué es? Architectura, Paquetes

¿Qué es SSIS?

Servicio de integración de SQL Server (SSIS) es un componente de la Microsoft SQL Server Software de base de datos que se puede utilizar para ejecutar una amplia gama de tareas de migración de datos. SSIS es una herramienta de almacenamiento de datos rápida y flexible que se utiliza para la extracción, carga y transformación de datos, como limpieza, agregación, fusión de datos, etc.

Facilita la transferencia de datos de una base de datos a otra. SSIS puede extraer datos de una amplia variedad de fuentes como bases de datos de SQL Server, archivos de Excel, Oracle y bases de datos DB2, etc.

SSIS también incluye herramientas gráficas y asistentes para realizar funciones de flujo de trabajo como envío de mensajes de correo electrónico, operaciones FTP, fuentes de datos y destinos.

¿Por qué utilizamos SSIS?

Estas son las razones clave para utilizar la herramienta SSIS:

  • La herramienta SSIS le ayuda a fusionar datos de varios almacenes de datos
  • Automatiza funciones administrativas y carga de datos
  • Pobla Data Marts y almacenes de datos
  • Le ayuda a limpiar y estandarizar datos.
  • Integración de BI en un proceso de transformación de datos
  • Automatización de funciones administrativas y carga de datos
  • SIS contiene una GUI que ayuda a los usuarios a transformar datos fácilmente en lugar de escribir programas grandes.
  • Puede cargar millones de filas de una fuente de datos a otra en muy pocos minutos.
  • Identificar, capturar y procesar cambios de datos.
  • Coordinar el mantenimiento, procesamiento o análisis de datos.
  • SSIS elimina la necesidad de programadores incondicionales
  • SSIS ofrece un sólido manejo de errores y eventos

Historia de SSIS

Antes de SSIS se utilizaba SQL Server, Data Transformation Services (DTS), que formaba parte de SQL Server 7 y 2000.

Versión Detail
SQL Server 2005 El Microsoft El equipo decidió renovar DTS. Sin embargo, en lugar de actualizar DTS, decidieron llamar al producto Servicios de Integración (SSIS).
Versión del servidor SQL 2008 Se realizaron muchas mejoras de rendimiento en SSIS. También se introdujeron nuevas fuentes.
SQL Server 2012 Fue el lanzamiento más importante para SSIS. Con esta versión, se introdujo el concepto del modelo de implementación del proyecto. Permite proyectos completos y sus paquetes se implementan en un servidor, en lugar de paquetes específicos.
SQL Server 2014 En esta versión, no se realizan muchos cambios para SSIS. Pero se agregaron nuevas fuentes o transformaciones que se realizaron mediante descargas separadas a través del Código.Plex o el paquete de características de SQL Server.
En SQL Server 2016 La versión le permite implementar proyectos completos, en lugar de paquetes individuales. Hay fuentes adicionales, especialmente la nube y fuentes de big data, y se realizaron pocos cambios en el catálogo.

Características destacadas de SSIS

A continuación, se muestran algunas características básicas importantes de SSIS:

  • Ambientes de estudio
  • Funciones relevantes de integración de datos
  • Velocidad de implementación efectiva
  • Estrecha integración con otros Microsoft familia SQL
  • Transformación de consultas de minería de datos
  • Transformaciones de agrupación y búsqueda difusa
  • Transformaciones de extracción y búsqueda de términos
  • Componentes de conectividad de datos de mayor velocidad, como conectividad a SAP or Oracle

SSIS Architectura

SSIS Architectura
SSIS Architectura

Los siguientes son los componentes de la arquitectura SSIS:

  • Flujo de control (almacena contenedores y tareas)
  • Flujo de datos (origen, destino, transformaciones)
  • Manejador de eventos (envío de mensajes, correos electrónicos)
  • Explorador de paquetes (ofrece una vista única de todo el paquete)
  • Parámetros (interacción del usuario)

Entendamos cada componente en detalle:

1. Flujo de control

El flujo de control es el cerebro del paquete SSIS. Le ayuda a organizar el orden de ejecución de todos sus componentes. Los componentes contienen contenedores y tareas que se gestionan mediante restricciones de prioridad.

2. Restricciones de precedencia

La restricción de precedencia es un componente del paquete que dirige las tareas a ejecutar en un orden predefinido. También define el flujo de trabajo de todo el paquete SSIS. Controla la ejecución de las dos tareas vinculadas ejecutando las tareas de destino en función del resultado de la tarea anterior: reglas comerciales que se definen mediante expresiones especiales.

3. Tarea

Una "tarea" es una unidad de trabajo individual. Es lo mismo que un método/función utilizado en un lenguaje de programación. Sin embargo, en SSIS, no se utilizan métodos de codificación. En su lugar, utilizará la técnica de arrastrar y soltar para diseñar superficies y configurarlas.

4. Contenedores

El contenedor son unidades para agrupar tareas en unidades de trabajo. Además de ofrecer coherencia visual, también le permite declarar variables y controladores de eventos que deberían estar en el alcance de ese contenedor específico.

Cuatro tipos de contenedores en SSIS son:

  • Un contenedor de secuencia
  • Un contenedor de bucle For
  • Contenedor de bucle Foreach

Contenedor de secuencia: le permite organizar tareas subsidiarias agrupándolas y le permite aplicar transacciones o asignar registros al contenedor.

Para contenedor de bucle:Proporciona la misma funcionalidad que el contenedor de secuencias, excepto que también le permite ejecutar las tareas varias veces. Sin embargo, se basa en una condición de evaluación, como un bucle del 1 al 100.

Para cada contenedor de bucle: También permite bucles. Pero la diferencia es que en lugar de usar una expresión de condición, el bucle se realiza sobre un conjunto de objetos, como archivos en una carpeta.

5. Flujo de datos

El uso principal de la herramienta SSIS es extraer datos en la memoria del servidor, transformarlos y escribirlos en otro destino. Si Control Flow es el cerebro, Data Flow es el corazón de SSIS

6. Paquetes SSIS

Otro componente fundamental de SSIS es la noción de paquete. Se trata de una colección de tareas que se ejecutan de manera ordenada. En este caso, las restricciones de presidente ayudan a gestionar el orden en el que se ejecutará la tarea.

Un paquete puede ayudarle a guardar archivos en un SQL Server, en la base de datos msdb o del catálogo de paquetes. Se puede guardar como un archivo .dtsx, que es un archivo estructurado muy similar a los archivos .rdl de Reporting Services.

Paquetes SSIS

7 Parámetros

Los parámetros se comportan de forma muy parecida a una variable, pero con algunas excepciones importantes. Se puede colocar fácilmente fuera del paquete. Se pueden designar como valores que deben pasarse para que se inicie el paquete.

Tipos de tareas SSIS

En la herramienta SSIS, puede agregar una tarea para controlar el flujo. Existen diferentes tipos de tareas que realizan diversos tipos de trabajos.

Algunas tareas importantes de SSIS se mencionan a continuación:

Nombre de la tarea Descripción
Ejecutar tarea SQL Como sugiere su nombre, ejecutará una declaración SQL en una base de datos relacional.
Tarea de flujo de datos Esta tarea puede leer datos de una o más fuentes. Transforme los datos cuando estén en la memoria y escríbalos en uno o más destinos.
Tarea de procesamiento de servicios de análisis Utilice esta tarea para procesar objetos de un modelo tabular o como un cubo SSAS.
Ejecutar tarea de paquete El usuario puede utilizar esta tarea SSIS para ejecutar otros paquetes desde el mismo proyecto.
Ejecutar tarea de proceso Con la ayuda de esta tarea, puede especificar parámetros de línea de comando.
Tarea del sistema de archivos Realiza manipulaciones en el sistema de archivos. Como mover, renombrar, eliminar archivos y crear directorios.
Tareas FTP Le permite realizar funcionalidades FTP básicas.
Tarea de secuencia de comandos Ésta es una tarea en blanco. Puede escribir código NET que realice cualquier tarea; quieres realizar.
Enviar Mail Tarea Puede enviar un correo electrónico para notificar a los usuarios que su paquete ha finalizado o que se ha producido algún error.
Tarea de inserción masiva El uso puede cargar datos en una tabla mediante el comando de inserción masiva.
Tarea de secuencia de comandos Ejecuta un conjunto de VB.NET o codificación C# dentro de un entorno de Visual Studio.
Tarea de servicio web Ejecuta un método en un servicio web.
Tarea de vigilancia de eventos WMI Esta tarea permite que el paquete SSIS espere y responda a ciertos eventos WMI.
Tarea XML Esta tarea le ayuda a fusionar, dividir o reformatear cualquier archivo XML.

Otras herramientas ETL importantes

  • SAP Servicios de datos
  • Gestión de datos SAS
  • Oracle Constructor de almacenes (OWB)
  • PowerCenter Informática
  • IBM Servidor de información de infosfera
  • Repertorio Elixir para ETL de datos
  • Flujo de datos de Sargent

Ventajas y desventajas de usar SSIS

La herramienta SSIS ofrece las siguientes ventajas:

  • Amplia documentación y soporte.
  • Facilidad y rapidez de implementación.
  • Estrecha integración con SQL Server y estudio visual
  • Integración de datos estandarizados
  • Ofrece capacidades basadas en mensajes en tiempo real
  • Soporte para modelo de distribución.
  • Le ayuda a eliminar la red como cuello de botella para la inserción de datos mediante SSIS en SQL
  • SISS le permite utilizar el destino de SQL Server en lugar de OLE DB para cargar los datos más rápido

Desventajas de SSIS

Algunos inconvenientes de utilizar herramientas SSIS son los siguientes:

  • A veces crea problemas en entornos que no son de Windows.
  • Visión y estrategia poco claras
  • SSIS carece de soporte para estilos de integración de datos alternativos
  • Integración problemática con otros productos.

Ejemplo de mejores prácticas de SSIS

  • SSIS es una canalización en memoria. Por eso es importante asegurarse de que todas las transformaciones ocurran en la memoria.
  • Intente minimizar las operaciones registradas
  • Planifique la capacidad entendiendo la utilización de recursos
  • Optimice la transformación de búsqueda SQL, el origen de datos y el destino
  • Programarlo y distribuirlo correctamente

Resum

  • La forma completa de SSIS es SQL Server Integration Services.
  • La herramienta SSIS le ayuda a fusionar datos de varios almacenes de datos
  • Las versiones importantes del servicio de integración de SQL Server son 2005, 2008, 2012, 2014 y 216.
  • Los entornos de estudio, las funciones de integración de datos relevantes y la velocidad de implementación efectiva son algunas características importantes de SSIS
  • El flujo de control, el flujo de datos, el controlador de eventos, el explorador de paquetes y los parámetros son componentes esenciales de la arquitectura SSIS.
  • Ejecutar tarea SQL, Tarea de flujo de datos, Tarea de procesamiento de Analysis Services, Ejecutar tarea de paquete, Ejecutar tarea de proceso, Tarea de sistema de archivos, Tareas FTP, Enviar Mail Tarea, Tarea de servicio web son algunas importantes
  • Amplia documentación y soporte.
  • El mayor inconveniente de SSIS es que carece de soporte para estilos alternativos de integración de datos.
  • SAP Servicios de Datos, SAS Gestión de Datos, Oracle Constructor de almacenes (OWB), PowerCenter Informatica, IBM Servidor de información de infosfera
  • SSIS es una canalización en memoria. Por tanto, es fundamental asegurarse de que todas las transformaciones se produzcan en la memoria.