Vamos a comenzar a generar toda la información de configuración necesaria y a almacenarla, tanto en el archivo XML como en SQL Server, según lo visto anteriormente.

A continuación vamos a ir realizando paso a paso las tareas de configuración del paquete. Vamos al menú ‘SSIS‘ y elegimos la opción ‘Configuraciones de paquetes…‘. En el formulario que aparece, habilitamos el CheckBox ‘Habilitar configuraciones de paquetes‘, y pulsamos el botón ‘Agregar‘, accediendo así al asistente de configuración de paquetes. En dicho asistente, pulsamos ‘Siguiente‘ en la primera pantalla de presentación. Nos encontramos en la pantalla de selección de tipo de configuración, aquí seleccionamos ‘Archivo de configuración XML‘ en el ComboBox, y damos el nombre ‘Prueba01.dtsconfig‘, almacenándolo en la misma ruta donde tenemos el paquete, tal y como se muestra en la siguiente imagen.

Despliegue de paquetes de Integration Services – Parte 3
Figura 5. Seleccionar tipo de configuración, archivo XML.

En la pantalla de selección de propiedades a exportar, elegimos ‘ConnectionString‘ de la cadena de conexión a la base de datos ‘Configuracion‘.

Despliegue de paquetes de Integration Services – Parte 3
Figura 6. Selección de propiedades a almacenar en el archivo de configuración, archivo XML.

 

En la siguiente pantalla asignamos el nombre ‘XML con conexion a Configuracion‘, y pulsamos ‘Finalizar‘. Ya tenemos configurado el primer archivo XML, en el que, simplemente, vamos a almacenar la cadena de conexión a la base de datos ‘Configuracion‘, que contendrá el resto de la información. Es conveniente, que dicha cadena de conexión utilice autenticación Windows, para no almacenar allí información que facilite el acceso a dicha base de datos. En nuestro caso, y sólo a modo de ejemplo, para el entorno de desarrollo también hemos utilizado el login ‘sa’ en esta cadena de conexión, pero eso no podremos hacerlo, bajo ningún concepto, en el entorno de explotación.

Hay que remarcar que este fichero XML puede ser usado por otros paquetes, evitando crear uno por cada paquete, y además conteniendo la misma información, ya que la base de datos de configuración se llama igual. Simplemente, daremos el mismo nombre a la hora de crearlo.

Vamos a repetir todos los pasos, ahora para grabar en la base de datos ‘Configuracion‘ en la tabla ‘dbo.[SSIS Configurations]‘, para ello, pulsaremos de nuevo el botón ‘Agregar‘, accediendo de nuevo al asistente de configuración de paquetes. En la pantalla ‘Seleccionar tipo de configuracion‘, ahora elegiremos como tipo de configuración ‘SQL Server‘, en conexión elegimos ‘localhost.configuracion.sa‘, y en tabla de configuración pulsamos el botón ‘Nueva‘, revisamos el código de creación de la tabla, y sin cambiar nada, pulsamos el botón ‘Aceptar‘. En filtro, asignamos el valor ‘Conexiones01‘.

Despliegue de paquetes de Integration Services – Parte 3
Figura 7. Seleccionar tipo de configuración, SQL Server.

En este caso, lo que vamos a seleccionar, son las cadenas de conexión a los servidores de origen y destino de los datos.

Despliegue de paquetes de Integration Services – Parte 3
Figura 8. Selección de propiedades a almacenar en el archivo de configuración, SQL Server.

 

Obteniendo, como resultado final, la creación de ambas configuraciones de paquetes, y el orden en que se utilizarán. En nuestro caso, en primer lugar, se leerá el archivo XML, y en segundo lugar, el resto de la configuración.

 

Despliegue de paquetes de Integration Services – Parte 3
Figura 9. Resultado del organizador de configuraciones de paquetes.
Despliegue de paquetes de Integration Services – Parte 3
Figura 10. Información almacenada en la tabla ‘dbo.[SSIS Configurations]’
Al igual que con el archivo XML, podemos reutilizar esta información para diferentes paquetes, si van a utilizar conexiones comunes, y evitar duplicarla. Para ello, deberíamos crear una tercera configuración para conexiones específicas, aunque este punto lo dejamos en manos del lector, no lo vamos a desarrollar aquí por cuestiones de espacio.Adicionalmente, podemos aprovechar esta base de datos, ‘Configuraciones‘, para incluir en ella información de loggin de ejecución de los paquetes, y así reutilizar la misma conexión.Nota: nunca se almacena la password de la cadena de conexión, ni en el archivo XML, ni en las filas de la tabla de configuración. Es por seguridad, por tanto el paquete no se va a poder ejecutar correctamente. Hay que editar el archivo o actualizar la fila de la tabla con el Connectionstring correcto, es decir, agregarle ‘…;password=xxxx;…‘. Por supuesto, es recomendable, siempre que sea posible, utilizar autenticación integrada, con lo que evitamos este problema, y sobre todo mejoramos la seguridad.En el siguiente post, haremos el despliegue del paquete en el servidor, modificaremos los datos de configuración, adaptándolos al nuevo entorno, y lo ejecutaremos desde SQL Server Management Studio. Finalmente programaremos su ejecución periódica, creando un job.

 

0 Shares:
Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

You May Also Like
Arquitectura Power BI Premium
Leer más

Arquitecturas Power BI Premium

Repasamos las posibles arquitecturas que puede tomar un proyecto de BI, partiendo de un escenario de Power BI Premium y en el que principalmente el dato viene de orígenes ya estructurados, analizando las principales ventajas e inconvenientes de cada uno, para poder elegir siempre el mejor camino.
Leer más

SQL Server downgrades: Enterprise Edition a Standard Edition

Un problema habitual al que nos tenemos que enfrentar es el realizar downgrades de SQL Server Enterprise Edition a Standard Edition. Las razones pueden ser desde un error cuando se realizó el despliegue inicial hasta un cambio para obtener una reducción de costes en licenciamiento. La forma soportada para realizar este cambio pasa por una desinstalación completa de la instancia y una reinstalación.
Leer más

Seguimiento de métricas en tiempo real con PowerBI y PowerShell

En este artículo vamos a ver como enviar un stream de datos a PowerBi mediante un pequeño script de powershell para hacer un seguimiento en tiempo real de unos sensores (por ejemplo), también podríamos usar el script para enviar cualquier tipo de información de monitorización, como datos de un log, estadísticas de uso de una base de datos o cualquier otra métrica que queramos monitorizar en tiempo real.