introducción a ssis con biml
DESCRIPTION
¿Te encuentras repitiendo los mismos pasos una y otra vez durante el proceso de desarrollo de ETL? BIML nos ayuda a automatizar patrones de Inteligencia de negocio y reduce la repetición manual que consume la mayor parte de su tiempo de desarrollo. 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.TRANSCRIPT
Introducción a SSIS con Biml15 de Octubre (12 pm GMT -
5)Guillermo CaicedoResú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
Escalando con SQL Server hasta la nube, un trayecto necesario29 de OctubreAdrián Miranda Cordero
Recuperación de desastres y soluciones de alta disponibilidad con SQL Server
12 de NoviembreMichelle Gutzait
Creando Reportes personalizados en ERP - MS Dynamics AX 2012 y SQL Server 201222 de Octubre
Juan Manuel Rafael Fabián
Está por comenzar:
Introducción a SSIS con Biml</>
15 de octubre de 2014
Guillermo CaicedoConsultor | Nagnoi, LLCPresidente, Puerto Rico [email protected]@sqltitan
www.prpass.orgwww.facebook.com/prpasswww.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 ETLhttp://www.informationweek.com/the-38-subsystems-of-etl/55300422
Flujo de datos en un DW
Data Sources
Staging Area
Manual Cleansing
Data Marts
Data Warehouse
Client Access
Iterativo
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.0\Common7\IDE\
PrivateAssemblies\ProjectItems\DataTransformationProject\DataTransformationItems
• 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ámico1. lee la metadata de unas tablas2. 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 generado4. 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 constraintsTransformations
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;InitialCatalog=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”
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,095UNTIL OCTOBER 31,
2014
Outstanding Volunteer Award
Do you know a volunteer that has gone above and beyond recently?
Nominate them for the monthly OVA.
PASS Volunteer Awards
PASSion AwardThe 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ánResú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