SlideShare une entreprise Scribd logo
1  sur  24
Introducción a SSIS con Biml 
15 de Octubre (12 pm GMT -5) 
Guillermo Caicedo 
Resúmen: 
En esta sesión aprenderemos los fundamentos del 
BimlScript y mostraremos los beneficios de la 
creación de patrones de diseño para la 
automatización de los procesos de SSIS. 
Próximos Eventos 
Creando Reportes personalizados 
en ERP - MS Dynamics AX 2012 y 
SQL Server 2012 
22 de Octubre 
Juan Manuel Rafael Fabián 
Escalando con SQL Server hasta 
la nube, un trayecto necesario 
29 de Octubre 
Adrián Miranda Cordero 
Recuperación de desastres y 
soluciones de alta disponibilidad 
con SQL Server 
12 de Noviembre 
Michelle Gutzait 
Está por comenzar:
Introducción a SSIS con Biml</> 
15 de octubre de 2014 
Guillermo Caicedo 
Consultor | Nagnoi, LLC 
Presidente, Puerto Rico PASS 
guillermo.caicedo@sqltitan.com 
@sqltitan www.prpass.org 
www.facebook.com/prpass 
www.twitter.com/prpass
Agenda 
- Introducción 
- ¿Biml? 
- Sintaxis Básico 
- BimlScript
Introducción 
“Gran porcentaje de los proyectos de inteligencia de negocios 
fracasan.” 
Gartner - http://www.gartner.com/newsroom/id/492112 
“Existe frustración en el lado del negocio que no obtenemos valor lo 
suficientemente rápido.” 
David Stodder (TDWI) 
http://www.searchdatamanagement.techtarget.com/news/2240225751/Agile-data- 
warehousing-casts-business-light-on-dark-process 
“Una de las razones es el entendimiento de los esfuerzos de la etapa 
de ETL.” 
Kimball: 70% del tiempo de construir un DW esta en el ETL 
http://www.informationweek.com/the-38-subsystems-of-etl/55300422
Flujo de datos en un DW 
Data Sources 
Staging Area 
Manual 
Cleansing 
Data Warehouse 
Data Marts 
Iterativo 
Client 
Access
Introducción 
Una gran cantidad de paquetes de SSIS son muy similares 
• paquetes para carga de archivos planos 
• paquetes para actualización de dimensiones 
• paquetes para carga de fact tables 
• … 
• … pero toman una gran cantidad de tiempo para crear
¿Que soluciones tenemos? 
reutilización de código 
• SSIS básicamente solo soporta copy/paste 
• copy/paste a mejorado grandemente desde SQL 2012 
• patrones de diseño 
• ejemplo: paquete de carga incremental 
• SQL Server 2012 Integration Services Design Patterns 
• creación de plantillas 
• construcción de un paquete que sirva como plantilla 
• sálvalo en C:Program Files (x86)Microsoft Visual Studio 
11.0Common7IDEPrivateAssembliesProjectItemsDataTransformationProjectDataTransformationItems 
• pero sigue siendo requerido el editar cada uno de los paquetes 
• (q pasaría si se nos olvida editar una parte crucial del proceso?)
Desarrollo basado en metadata 
primera opción: paquete de SSIS dinámico 
1. lee la metadata de unas tablas 
2. genera el código 
• usualmente genera T-SQL o comandos bcp 
• utiliza T-SQL o C# 
• ejemplo: SELECT … INTO 
3. itera sobre el código generado 
4. ejecuta cada consulta 
desventajas 
• complejidad de los proyectos 
• no se utiliza el poder de SSIS 
• no hay paralelismo 
• dificultad para el manejo de errores 
• dificultad para incorporar “lógica de negocio”
¿Biml? 
segunda opción: 
• Biml es un lenguaje basado en XML (lenguaje de marcas extensible) y un 
compilador 
• Traduce metadata a soluciones de inteligencia de negocio para SQL Server 
• soporta objetos de SSIS y SSAS 
• Desarrollado por Varigence 
• http://www.varigence.com 
• http://www.bimlscript.com 
• MIST: versión completa y comercial de Biml
BIDS Helper 
BIDS Helper contiene la versión open source de Biml 
• add-on gratis! para Visual Studio 
• esta disponible para las versiones SSIS 2005, 2008, 2008R2, 2012 (y 2014?) 
• soporta funcionalidades limitadas a la creación de paquetes de SSIS 
¿que nos ofrece Biml? 
• poderosa herramienta de generación de código 
• reutiliza patrones y componentes de BI 
• crea tu patrón en Biml y genera todos tus paquetes con la misma estructura y consistencia 
• lenguaje de programación basado en .NET 
• código de C# puede incorporarse a un script de Biml para generar objetos basado en metadata 
• ¿No le gusta Biml? 
• Los paquetes generados son paquetes de SSIS comunes, pueden editarse con las misma herramientas 
BIDS/SSDT/SSDTBI
Estructura básica de un script de Biml 
Biml 
Connections 
FileFormats 
Packages 
Tasks 
Containers 
Tasks 
Dataflow 
Precedence constraints 
Transformations
Sintaxis Básica 
BIML Tags (Root Node) 
<Biml xmlns="http://schemas.varigence.com/biml.xsd"> 
</Biml> 
Add Connections 
<Biml xmlns="http://schemas.varigence.com/biml.xsd"> 
<Connections> 
<Connection Name=“DataConnection" ConnectionString="Data Source=.sql2012;Initial Catalog=Northwind;Provider=SQLNCLI10.1;Integrated 
Security=SSPI; " /> 
</Connections> 
</Biml> 
Add Packages 
<Biml xmlns="http://schemas.varigence.com/biml.xsd"> 
<Connections> 
<Connection Name=“DataConnection" ConnectionString="Data Source=.sql2012;Initial 
Catalog=Northwind;Provider=SQLNCLI10.1;Integrated Security=SSPI; " /> 
</Connections> 
<Packages> 
<Package Name=“BIMLIntroduction" ConstraintMode=“Parallel” ProtectionLevel=“DontSaveSensitive“/> 
</Packages> 
</Biml>
Modos de restricción (Constraint Modes) 
Paralelo (Parallel) 
• No crea restricciones de precedencia 
• Todos los elementos tienen que conectarse utilizando el Tag de 
PrecedenceConstraints 
Lineal (Linear) 
• Automáticamente conecta todos los componentes en el orden de creación 
• Todos los elementos se conectan a su precedencia con el tipo de conexión 
“SuccessFull” 
13
demo
Paquete de Carga Incremental 
Source 
Correlate 
Filter 
Updates Stage 
Destination 
Fuente - Stairway to BIML: http://www.sqlservercentral.com/articles/BIML/101330/
demo
BimlScript 
Permite insertar código de C# o VB.Net en los scripts de Biml 
Automatiza el trabajo repetitivo en scripts reutilizables 
Sintaxis: 
Directivas 
Template – indica que el archivo de BimlScript utiliza C# como lenguaje de programación. 
<#@ template language="C#"> 
Import – especifica los namespaces de .Net que se deben importar para el archivo. 
<#@ import namespace="System.Data" #> 
Delimitadores 
Delimitador Descripción 
<# Define bloques de código de .NET y provee el control del flujo de un archivo de Biml. 
<#= Evalúa un bloque de código de .NET, convierte el resultado en un string, y lo inserta en el archivo de Biml. 
<#+ Define propiedades, métodos y archivos que están excluidos del archivo de Biml pero pueden accederse por otros bloques de 
código BimlScript.
demo
Referencias 
Biml 
• Varigence 
http://www.varigence.com/Products/Biml/Capabilities 
• BimlScript 
http://bimlscript.com/ 
• BIDS Helper on Codeplex 
http://bidshelper.codeplex.com/ 
Blogs 
• Stairway to Biml by Andy Leonard 
http://www.sqlservercentral.com/stairway/100550/ 
• BIML articles by Joost van Rossum 
http://microsoft-ssis.blogspot.be/search/label/BIML 
• BIML articles by Marco Schreuder 
http://blog.in2bi.eu/tags/biml/ 
• BIML articles by John Welch 
http://agilebi.com/jwelch/tag/biml/ 
• Introduction to Biml part I by Koen Verbeeck 
http://www.mssqltips.com/sqlservertip/3094/introduction-to-business-intelligence-markup-language-biml-for- 
ssis/
Manténgase conectado a nosotros! 
Visítenos en http://globalspanish.sqlpass.org 
/SpanishPASSVC 
lnkd.in/dtYBzev 
/user/SpanishPASSVC 
/SpanishPASSVC
Planning on attending PASS Summit 2014? 
• The world’s largest gathering of SQL Server & BI professionals 
• Take your SQL Server skills to the next level by learning from the world’s 
SQL Server experts, in 190+ technical sessions 
• Over 5000 attendees, representing 2000 companies, from 52 countries, 
ready to network & learn 
When registering use the code VCSUM17 to 
save $150 off registration! 
$2,095 
UNTIL OCTOBER 31, 2014
PASS Volunteer Awards 
Outstanding Volunteer Award 
Do you know a volunteer that has gone 
above and beyond recently? 
Nominate them for the monthly OVA. 
VolunteerRecognition@sqlpass.org 
PASSion Award 
The highest of PASS accolades presented 
yearly to a volunteer.
Manténgase involucrado! 
• Registrate HOY en sqlpass.org para una membresia gratuita 
• Linked In: http://www.sqlpass.org/linkedin 
• Facebook: http://www.sqlpass.org/facebook 
• Twitter: @SQLPASS 
• PASS: http://www.sqlpass.org
Creando Reportes personalizados en ERP - 
MS Dynamics AX 2012 y SQL Server 2012 
22 de Octubre (12 pm GMT -5) 
Juan Manuel Rafael Fabián 
Resúmen: 
En esta sesión se mostrara como podemos maximizar las 
bondades de SSRS de SQL Server 2012 para obtener 
reportes para las empresas a través de un ERP de clase 
mundial. 
Próximo Evento

Contenu connexe

Similaire à Introducción a SSIS con Biml

Similaire à Introducción a SSIS con Biml (20)

24 Horas Español 2014 - ALM para el desarrollo de base de datos SQL Server
24 Horas Español 2014 - ALM para el desarrollo de base de datos SQL Server24 Horas Español 2014 - ALM para el desarrollo de base de datos SQL Server
24 Horas Español 2014 - ALM para el desarrollo de base de datos SQL Server
 
Adaptive BI Framework
Adaptive BI Framework Adaptive BI Framework
Adaptive BI Framework
 
La guía para sacarle provecho a tu proyecto de BBDD con Visual Studio - Solid...
La guía para sacarle provecho a tu proyecto de BBDD con Visual Studio - Solid...La guía para sacarle provecho a tu proyecto de BBDD con Visual Studio - Solid...
La guía para sacarle provecho a tu proyecto de BBDD con Visual Studio - Solid...
 
24 HOP edición Español - Alm para el desarrollo de base de datos sql server -...
24 HOP edición Español - Alm para el desarrollo de base de datos sql server -...24 HOP edición Español - Alm para el desarrollo de base de datos sql server -...
24 HOP edición Español - Alm para el desarrollo de base de datos sql server -...
 
Webinar Oracle Data Integrator 12c (ODI)
Webinar Oracle Data Integrator 12c (ODI)Webinar Oracle Data Integrator 12c (ODI)
Webinar Oracle Data Integrator 12c (ODI)
 
JS Patterns Applied to a Real World Example
JS Patterns Applied to a Real World ExampleJS Patterns Applied to a Real World Example
JS Patterns Applied to a Real World Example
 
SSIS a fondo: monitorización y ajustes del servicio en producción - SolidQ Su...
SSIS a fondo: monitorización y ajustes del servicio en producción - SolidQ Su...SSIS a fondo: monitorización y ajustes del servicio en producción - SolidQ Su...
SSIS a fondo: monitorización y ajustes del servicio en producción - SolidQ Su...
 
Diplomado Técnico SQL Server 2012 - Sesión 6/8
Diplomado Técnico SQL Server 2012 - Sesión 6/8Diplomado Técnico SQL Server 2012 - Sesión 6/8
Diplomado Técnico SQL Server 2012 - Sesión 6/8
 
Automatice el proceso de entrega con CI/CD en AWS
Automatice el proceso de entrega con CI/CD en AWSAutomatice el proceso de entrega con CI/CD en AWS
Automatice el proceso de entrega con CI/CD en AWS
 
BootCamp Online en DevOps (and SecDevOps) de GeeksHubs Academy
BootCamp Online en DevOps (and SecDevOps) de GeeksHubs AcademyBootCamp Online en DevOps (and SecDevOps) de GeeksHubs Academy
BootCamp Online en DevOps (and SecDevOps) de GeeksHubs Academy
 
Tips en la instalación de Dynamics 365 FO - LBD, 365 Saturday
Tips en la instalación de Dynamics 365 FO - LBD, 365 SaturdayTips en la instalación de Dynamics 365 FO - LBD, 365 Saturday
Tips en la instalación de Dynamics 365 FO - LBD, 365 Saturday
 
VS 2005 Y SQL Server 2005 Juntos Son Aun Mejores
VS 2005 Y SQL Server 2005 Juntos Son Aun MejoresVS 2005 Y SQL Server 2005 Juntos Son Aun Mejores
VS 2005 Y SQL Server 2005 Juntos Son Aun Mejores
 
Tips en la instalación de Dynamics 365 Finance and Operations On Premise - LBD
Tips en la instalación de Dynamics 365 Finance and Operations On Premise - LBDTips en la instalación de Dynamics 365 Finance and Operations On Premise - LBD
Tips en la instalación de Dynamics 365 Finance and Operations On Premise - LBD
 
NetRaf 2017 - La plataforma .NET en el 2017
NetRaf 2017 - La plataforma .NET en el 2017NetRaf 2017 - La plataforma .NET en el 2017
NetRaf 2017 - La plataforma .NET en el 2017
 
SQLite
SQLiteSQLite
SQLite
 
SQL Server 2014 y La Plataforma de Datos
SQL Server 2014 y La Plataforma de DatosSQL Server 2014 y La Plataforma de Datos
SQL Server 2014 y La Plataforma de Datos
 
Sql server 2014 y la plataforma de datos
Sql server 2014 y la plataforma de datosSql server 2014 y la plataforma de datos
Sql server 2014 y la plataforma de datos
 
Depuración de aplicaciones en visual studio
Depuración de aplicaciones en visual studioDepuración de aplicaciones en visual studio
Depuración de aplicaciones en visual studio
 
Real CI/CD para MSDyn365FO… Be a hero!
Real CI/CD para MSDyn365FO… Be a hero!Real CI/CD para MSDyn365FO… Be a hero!
Real CI/CD para MSDyn365FO… Be a hero!
 
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptxEFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
 

Plus de SpanishPASSVC

Plus de SpanishPASSVC (20)

Creación de un modelo de análisis predictivo en la nube
Creación de un modelo de análisis predictivo en la nubeCreación de un modelo de análisis predictivo en la nube
Creación de un modelo de análisis predictivo en la nube
 
Analizando la performance del subsistema de IO
Analizando la performance del subsistema de IOAnalizando la performance del subsistema de IO
Analizando la performance del subsistema de IO
 
AlwaysON Lecciones Aprendidas
AlwaysON Lecciones AprendidasAlwaysON Lecciones Aprendidas
AlwaysON Lecciones Aprendidas
 
Data Science con Microsoft R Server y SQL Server 2016
Data Science con Microsoft R Server y SQL Server 2016Data Science con Microsoft R Server y SQL Server 2016
Data Science con Microsoft R Server y SQL Server 2016
 
Mejoras de Rendimiento para Replicación Transaccional
Mejoras de Rendimiento para Replicación TransaccionalMejoras de Rendimiento para Replicación Transaccional
Mejoras de Rendimiento para Replicación Transaccional
 
Como leer planes de ejecución
Como leer planes de ejecuciónComo leer planes de ejecución
Como leer planes de ejecución
 
AlwaysOn en SQL Server 2016
AlwaysOn en SQL Server 2016AlwaysOn en SQL Server 2016
AlwaysOn en SQL Server 2016
 
VMs de alto rendimiento para SQL Server en AWS y Azure
VMs de alto rendimiento para SQL Server en AWS y AzureVMs de alto rendimiento para SQL Server en AWS y Azure
VMs de alto rendimiento para SQL Server en AWS y Azure
 
Tecnicas avanzadas de monitoreo
Tecnicas avanzadas de monitoreoTecnicas avanzadas de monitoreo
Tecnicas avanzadas de monitoreo
 
Principios de diseño para procesos de ETL
Principios de diseño para procesos de ETLPrincipios de diseño para procesos de ETL
Principios de diseño para procesos de ETL
 
Planeando e implementando servicios de datos con Microsoft Azure
Planeando e implementando servicios de datos con Microsoft AzurePlaneando e implementando servicios de datos con Microsoft Azure
Planeando e implementando servicios de datos con Microsoft Azure
 
Mejores prácticas para SQL Server en ambientes virtualizados
Mejores prácticas para SQL Server en ambientes virtualizadosMejores prácticas para SQL Server en ambientes virtualizados
Mejores prácticas para SQL Server en ambientes virtualizados
 
Mejores prácticas de Data Warehouse con SQL Server
Mejores prácticas de Data Warehouse con SQL ServerMejores prácticas de Data Warehouse con SQL Server
Mejores prácticas de Data Warehouse con SQL Server
 
La receta de la abuela para mejores cargas de datos
La receta de la abuela para mejores cargas de datosLa receta de la abuela para mejores cargas de datos
La receta de la abuela para mejores cargas de datos
 
Introducción a Azure Machine Learning
Introducción a Azure Machine LearningIntroducción a Azure Machine Learning
Introducción a Azure Machine Learning
 
Cuadros de mando el todo es más que la suma de las partes
Cuadros de mando el todo es más que la suma de las partesCuadros de mando el todo es más que la suma de las partes
Cuadros de mando el todo es más que la suma de las partes
 
Automatizando la generación de Datawarehouses a través de metadatos
Automatizando la generación de Datawarehouses a través de metadatosAutomatizando la generación de Datawarehouses a través de metadatos
Automatizando la generación de Datawarehouses a través de metadatos
 
Descubriendo el corazón de la optimización “Estadísticas más que un concepto”
Descubriendo el corazón de la optimización “Estadísticas más que un concepto”Descubriendo el corazón de la optimización “Estadísticas más que un concepto”
Descubriendo el corazón de la optimización “Estadísticas más que un concepto”
 
Administrando soluciones de Power BI
Administrando soluciones de Power BIAdministrando soluciones de Power BI
Administrando soluciones de Power BI
 
Vista 360 grados de DataZen - Juan Alvarado
Vista 360 grados de DataZen - Juan AlvaradoVista 360 grados de DataZen - Juan Alvarado
Vista 360 grados de DataZen - Juan Alvarado
 

Dernier

EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
FagnerLisboa3
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 

Dernier (15)

EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmeril
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptx
 

Introducción a SSIS con Biml

  • 1. Introducción a SSIS con Biml 15 de Octubre (12 pm GMT -5) Guillermo Caicedo Resúmen: En esta sesión aprenderemos los fundamentos del BimlScript y mostraremos los beneficios de la creación de patrones de diseño para la automatización de los procesos de SSIS. Próximos Eventos Creando Reportes personalizados en ERP - MS Dynamics AX 2012 y SQL Server 2012 22 de Octubre Juan Manuel Rafael Fabián Escalando con SQL Server hasta la nube, un trayecto necesario 29 de Octubre Adrián Miranda Cordero Recuperación de desastres y soluciones de alta disponibilidad con SQL Server 12 de Noviembre Michelle Gutzait Está por comenzar:
  • 2. Introducción a SSIS con Biml</> 15 de octubre de 2014 Guillermo Caicedo Consultor | Nagnoi, LLC Presidente, Puerto Rico PASS guillermo.caicedo@sqltitan.com @sqltitan www.prpass.org www.facebook.com/prpass www.twitter.com/prpass
  • 3. Agenda - Introducción - ¿Biml? - Sintaxis Básico - BimlScript
  • 4. Introducción “Gran porcentaje de los proyectos de inteligencia de negocios fracasan.” Gartner - http://www.gartner.com/newsroom/id/492112 “Existe frustración en el lado del negocio que no obtenemos valor lo suficientemente rápido.” David Stodder (TDWI) http://www.searchdatamanagement.techtarget.com/news/2240225751/Agile-data- warehousing-casts-business-light-on-dark-process “Una de las razones es el entendimiento de los esfuerzos de la etapa de ETL.” Kimball: 70% del tiempo de construir un DW esta en el ETL http://www.informationweek.com/the-38-subsystems-of-etl/55300422
  • 5. Flujo de datos en un DW Data Sources Staging Area Manual Cleansing Data Warehouse Data Marts Iterativo Client Access
  • 6. Introducción Una gran cantidad de paquetes de SSIS son muy similares • paquetes para carga de archivos planos • paquetes para actualización de dimensiones • paquetes para carga de fact tables • … • … pero toman una gran cantidad de tiempo para crear
  • 7. ¿Que soluciones tenemos? reutilización de código • SSIS básicamente solo soporta copy/paste • copy/paste a mejorado grandemente desde SQL 2012 • patrones de diseño • ejemplo: paquete de carga incremental • SQL Server 2012 Integration Services Design Patterns • creación de plantillas • construcción de un paquete que sirva como plantilla • sálvalo en C:Program Files (x86)Microsoft Visual Studio 11.0Common7IDEPrivateAssembliesProjectItemsDataTransformationProjectDataTransformationItems • pero sigue siendo requerido el editar cada uno de los paquetes • (q pasaría si se nos olvida editar una parte crucial del proceso?)
  • 8. Desarrollo basado en metadata primera opción: paquete de SSIS dinámico 1. lee la metadata de unas tablas 2. genera el código • usualmente genera T-SQL o comandos bcp • utiliza T-SQL o C# • ejemplo: SELECT … INTO 3. itera sobre el código generado 4. ejecuta cada consulta desventajas • complejidad de los proyectos • no se utiliza el poder de SSIS • no hay paralelismo • dificultad para el manejo de errores • dificultad para incorporar “lógica de negocio”
  • 9. ¿Biml? segunda opción: • Biml es un lenguaje basado en XML (lenguaje de marcas extensible) y un compilador • Traduce metadata a soluciones de inteligencia de negocio para SQL Server • soporta objetos de SSIS y SSAS • Desarrollado por Varigence • http://www.varigence.com • http://www.bimlscript.com • MIST: versión completa y comercial de Biml
  • 10. BIDS Helper BIDS Helper contiene la versión open source de Biml • add-on gratis! para Visual Studio • esta disponible para las versiones SSIS 2005, 2008, 2008R2, 2012 (y 2014?) • soporta funcionalidades limitadas a la creación de paquetes de SSIS ¿que nos ofrece Biml? • poderosa herramienta de generación de código • reutiliza patrones y componentes de BI • crea tu patrón en Biml y genera todos tus paquetes con la misma estructura y consistencia • lenguaje de programación basado en .NET • código de C# puede incorporarse a un script de Biml para generar objetos basado en metadata • ¿No le gusta Biml? • Los paquetes generados son paquetes de SSIS comunes, pueden editarse con las misma herramientas BIDS/SSDT/SSDTBI
  • 11. Estructura básica de un script de Biml Biml Connections FileFormats Packages Tasks Containers Tasks Dataflow Precedence constraints Transformations
  • 12. Sintaxis Básica BIML Tags (Root Node) <Biml xmlns="http://schemas.varigence.com/biml.xsd"> </Biml> Add Connections <Biml xmlns="http://schemas.varigence.com/biml.xsd"> <Connections> <Connection Name=“DataConnection" ConnectionString="Data Source=.sql2012;Initial Catalog=Northwind;Provider=SQLNCLI10.1;Integrated Security=SSPI; " /> </Connections> </Biml> Add Packages <Biml xmlns="http://schemas.varigence.com/biml.xsd"> <Connections> <Connection Name=“DataConnection" ConnectionString="Data Source=.sql2012;Initial Catalog=Northwind;Provider=SQLNCLI10.1;Integrated Security=SSPI; " /> </Connections> <Packages> <Package Name=“BIMLIntroduction" ConstraintMode=“Parallel” ProtectionLevel=“DontSaveSensitive“/> </Packages> </Biml>
  • 13. Modos de restricción (Constraint Modes) Paralelo (Parallel) • No crea restricciones de precedencia • Todos los elementos tienen que conectarse utilizando el Tag de PrecedenceConstraints Lineal (Linear) • Automáticamente conecta todos los componentes en el orden de creación • Todos los elementos se conectan a su precedencia con el tipo de conexión “SuccessFull” 13
  • 14. demo
  • 15. Paquete de Carga Incremental Source Correlate Filter Updates Stage Destination Fuente - Stairway to BIML: http://www.sqlservercentral.com/articles/BIML/101330/
  • 16. demo
  • 17. BimlScript Permite insertar código de C# o VB.Net en los scripts de Biml Automatiza el trabajo repetitivo en scripts reutilizables Sintaxis: Directivas Template – indica que el archivo de BimlScript utiliza C# como lenguaje de programación. <#@ template language="C#"> Import – especifica los namespaces de .Net que se deben importar para el archivo. <#@ import namespace="System.Data" #> Delimitadores Delimitador Descripción <# Define bloques de código de .NET y provee el control del flujo de un archivo de Biml. <#= Evalúa un bloque de código de .NET, convierte el resultado en un string, y lo inserta en el archivo de Biml. <#+ Define propiedades, métodos y archivos que están excluidos del archivo de Biml pero pueden accederse por otros bloques de código BimlScript.
  • 18. demo
  • 19. Referencias Biml • Varigence http://www.varigence.com/Products/Biml/Capabilities • BimlScript http://bimlscript.com/ • BIDS Helper on Codeplex http://bidshelper.codeplex.com/ Blogs • Stairway to Biml by Andy Leonard http://www.sqlservercentral.com/stairway/100550/ • BIML articles by Joost van Rossum http://microsoft-ssis.blogspot.be/search/label/BIML • BIML articles by Marco Schreuder http://blog.in2bi.eu/tags/biml/ • BIML articles by John Welch http://agilebi.com/jwelch/tag/biml/ • Introduction to Biml part I by Koen Verbeeck http://www.mssqltips.com/sqlservertip/3094/introduction-to-business-intelligence-markup-language-biml-for- ssis/
  • 20. Manténgase conectado a nosotros! Visítenos en http://globalspanish.sqlpass.org /SpanishPASSVC lnkd.in/dtYBzev /user/SpanishPASSVC /SpanishPASSVC
  • 21. Planning on attending PASS Summit 2014? • The world’s largest gathering of SQL Server & BI professionals • Take your SQL Server skills to the next level by learning from the world’s SQL Server experts, in 190+ technical sessions • Over 5000 attendees, representing 2000 companies, from 52 countries, ready to network & learn When registering use the code VCSUM17 to save $150 off registration! $2,095 UNTIL OCTOBER 31, 2014
  • 22. PASS Volunteer Awards Outstanding Volunteer Award Do you know a volunteer that has gone above and beyond recently? Nominate them for the monthly OVA. VolunteerRecognition@sqlpass.org PASSion Award The highest of PASS accolades presented yearly to a volunteer.
  • 23. Manténgase involucrado! • Registrate HOY en sqlpass.org para una membresia gratuita • Linked In: http://www.sqlpass.org/linkedin • Facebook: http://www.sqlpass.org/facebook • Twitter: @SQLPASS • PASS: http://www.sqlpass.org
  • 24. Creando Reportes personalizados en ERP - MS Dynamics AX 2012 y SQL Server 2012 22 de Octubre (12 pm GMT -5) Juan Manuel Rafael Fabián Resúmen: En esta sesión se mostrara como podemos maximizar las bondades de SSRS de SQL Server 2012 para obtener reportes para las empresas a través de un ERP de clase mundial. Próximo Evento