D A T A M A N A G E M E N T

Cargando...

¿Qué es SQL Server Integration Service?

SQL Server Integration Service (en adelante SSIS) es un componente que permite generar procesos de migración de grandes cantidades de datos de diferentes orígenes llamados ETL.

Dispone de un entorno de desarrollo gráfico integrado en Visual Studio (para ello es necesario instalar los Data Tools). SSIS dispone de procesos que realizan “cosas” como ejecutar un Script SQL, leer datos de un fichero, leer datos de una tabla… y cada proceso se uno con otro mediante flujos de trabajo pudiendo comunicar ambos procesos.

Los proyectos ETL de SSIS tienen sentido cuando se pueden ejecutar y automatizar sin la necesidad de abrir el proyecto con Visual Studio, para ello, SSIS puede generar un paquete que se podrá ejecutar desde el agente de programación SQL Server Agent o crear un paquete ejecutable que y ejecutarlo desde línea de comandos.

SSIS es la evolución de los antiguos paquetes DTS y muchos DBA llaman a los nuevos paquetes de SSIS paquetes DTSX ya que esta es su extensión.

Uno de los inconvenientes de SSIS es que los paquetes desarrollados con una versión actual no se pueden ejecutar ni editar en versiones anteriores y paquetes diseñados con versiones anteriores, por lo general, se pueden ejecutar en versiones de SQL Server posteriores pero si el paquete falla en la ejecución, este debe editarse desde la versión correcta.

Versiones y Características

Los paquetes SSIS empezaron a usarse desde la versión de SQL Server 2008, anterior a esta versión se utilizaban los paquetes DTS.

Como toda herramienta, SSIS ha tenido una evolución que a continuación se detalla.

  • SQL Server 2008: Los paquetes SSIS se diseñaban directamente sobre SQL Server 2008 con la herramienta Business intelligence Development Studio.
  • SQL Server 2012: Los paquetes SSIS para esta versión de SQL Server se pueden programar desde Visual Studio 2015 instalando SQL Server Data Tools o desde la versión de Visual Studio 2012 instalando SQL Server Data Tools: inteligencia empresarial para Visual Studio 2012
  •  SQL Server 2014: Los paquetes SSIS para esta versión de SQL Server se pueden programar desde Visual Studio 2015 instalando SQL Server Data Tools o desde la versión de Visual Studio 2013 instalando SQL Server Data Tools: inteligencia empresarial para Visual Studio 2013
  • SQL Server 2016: Los paquetes se diseñan sobre una versión de Visual Studio superior a la 2015 e instalando SQL Server Data Tools para Visual Studio 2015.

A continuación, se presenta varios puntos a favor y en contra de SQL Server Integration Service respecto a Pentaho Data Integration

Pros y contras respecto a pentaho data integration

SQL Server Integration Service

Pros:

  • IDE optimizado e integrado con las herramientas de Microsoft y Visual Studio
  • Se puede tener varios paquetes ETL en una misma solución y por lo tanto mayor control
  • Optimizado para trabajar con SQL Server
  • Puede ser un origen de datos para Reporting Service (SSRS)

Contra:

  • Pocos orígenes de datos
  • No tiene conexión por JDBC por lo que se excluye la conexión con muchos gestores de bases de datos
  • Acceso a API Rest es necesario usar un Script C# para hacer petición HTTP y el objeto JSON que recibe no se puede parsear si no se instala una DDL externa
  • No tiene un visor de datos para cada paso. Es necesario habilitar en el flujo la opción de “Visualizar datos”.
  • Solo funciona en Windows para la ejecución y para el desarrollo.

Pentaho Data Integration

Pros:

  • Multitud de orígenes de datos
  • Multitud de pasos para transformar y trabajar con el flujo de datos
  • Funciona en cualquier sistema operativo que ejecute JAVA
  • Cada paso tiene un visor de datos
  • Se ejecuta con un comando por lo que no se necesita de una herramienta especial
  • Para la automatización se puede crear una tarea programada en Windows o un registro en el cron de linux

Contra:

  • Necesita JAVA por lo que es más lento que SSIS
  • No tiene el concepto de proyecto/solución. Se diseñan transformaciones y trabajos independientes y después se orquestan en un JOB.

Instalación de SQL SERVER

Instalar SQL Server para realizar los ejercicios prácticos, además, para automatizar los procesos se necesitará hacer uso del agente del sql server.

Enlace: https://www.microsoft.com/es-es/sql-server/sql-server-downloads 

Seleccionar la versión Express.

A partir de este paso la instalación es muy sencilla. Configurar la BBDD SQL Server para que se inicie automáticamente al iniciar el PC.

Este es el resultado de la instalación, en mi caso he seleccionado todo lo que se podía haber seleccionado.

Instalación de SQL Server Management Studio

Para la interacción con SQL Server se puede usar DBeaver pero este no puede sacar el máximo rendimiento a las características que SQL Server tiene, es necesario instalar el gestor oficial de base de datos (sql server Management Studio).

Enlace descarga: https://docs.microsoft.com/es-es/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-2017 

Crear una nueva base de datos llamada “formacion”, es la que se usará para realizar las pruebas con SSIS.

Instalación de Visual Studio

Para la formación se va a usar Visual Studio 2017 en su versión Community

Enlace de descarga de visual studio: https://visualstudio.microsoft.com/es/downloads/ 

No seleccionar ninguna opción ya que, al terminar de instalar Visual Studio básico, instalaremos después los Data Tools Business Intelligence para Visual Studio. Es un componente para los proyectos de BI en Visual Studio.

Una vez instalado Visual Studio se abrirá el IDE, en mi caso he escogido el Template oscuro por comodidad.

Comprobar los proyectos que se pueden realizar con visual studio recién instalado

Al pulsar en archivo->Nuevo->Proyecto aparecerá la pantalla con las opciones de crear nuevos proyectos. No aparecerá ningún tipo de proyecto ya que no se ha instalado ningún componente para Visual Studio.

Instalar los Data Tools para Visual Studio

Antes de instalar los data tools hay que reiniciar el equipo.

Enlace manual instalación: https://docs.microsoft.com/es-es/sql/ssdt/download-sql-server-data-tools-ssdt?view=sql-server-2017#ssdt-for-vs-2017-standalone-installer

Enlace descarga: https://docs.microsoft.com/es-es/sql/ssdt/download-sql-server-data-tools-ssdt?view=sql-server-2017#ssdt-for-vs-2017-standalone-installer 

Después de unos 15min los data tools se habrá terminado de instalar. Aprovechad para ir a tomar un café.

Creación de un nuevo proyecto

Para la creación de un nuevo proyecto es necesario hacer click en archivo->Nuevo->Proyecto e inmediatamente aparecerá la ventana para seleccionar el tipo de proyecto a crear.

Seleccionar el apartado de Business Intelligence y el proyecto de Integration Services. Dar un nombre al proyecto y seleccionar la ruta donde vais a guardar el proyecto.

Estos son los archivos que genera Visual Studio, para abrir el proyecto después de cerrarlo se hará a través del fichero “MiPrimerProyecto.sln” que es el fichero solución.

Descripción de la ventana de diseño

A continuación se explica un poco la pantalla de desarrollo de Visual Studio con SSIS para familiarizarnos un poco con el entorno.

ADMINISTRADOR DE CONEXIONES

El administrador de conexiones permite crear conexiones hacia base de datos, hacia ficheros de texto etc… Similar a las conexiones de PDI. Las conexiones a las BBDD solo se permiten si estas permiten conexiones OLE DB o ADO.NET. Por ejemplo, para conectar a MySQL es necesario instalar el driver OLE DB en la máquina que va a ejecutar los paquetes SSIS.

EXPLORADOR DE SOLUCIONES Y PROPIEDADES

El explorador de soluciones (proyecto) permite ver todos los paquetes de SSIS que contiene la solución, por defecto al crear un proyecto este contiene un solo paquete, pero se podría crear más teniendo así varias ETL en una misma solución.

En la ventana de Propiedades aparecer todas las propiedades del componente que esté seleccionado actualmente. Por ejemplo, si se selecciona un paquete se podrá modificar propiedades de este paquete como requerir o no autenticación etc…

CUADRO DE HERRAMIENTAS

Flujo de control

El cuadro de herramientas para el Flujo de control tiene estas opciones o tareas, es el equivalente a las opciones que trae Pentaho cuando se crea un JOB.

Flujo de datos

El diseñador de flujo de datos es el equivalente al diseñador de las transformaciones de PDI. Para añadir un flujo de datos hay que arrastrar la “Tarea Flujo de datos” al diseñador y después hacer doble click para abrir el diseñador de Flujo de datos y no de control.

Una vez abierto el diseñador de flujo de datos aparece en el Cuadro de herramientas de SSIS todas las tareas posibles para transformar los datos, muy similar a PDI.

Pentaho Data Integration

Si es la primera vez que accedes al blog quizás te interese echar un vistazo a los artículos donde se habla de una alternativa gratuita.

Enlace: https://datamanagement.es/category/pentaho/

Leave a Comment

Virgen del pilar nº4, ático H

03330 Crevillente (Alicante)