introduccion a ssis con biml

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 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 Creando Reportes personalizados en ERP - MS Dynamics AX 2012 y SQL Server 2012 22 de Octubre Juan Manuel Rafael Fabián Está por comenzar:

Upload: guillermo-caicedo

Post on 14-Jul-2015

77 views

Category:

Data & Analytics


2 download

TRANSCRIPT

Introducción a SSIS con Biml

15 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 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

Creando Reportes personalizados

en ERP - MS Dynamics AX 2012 y

SQL Server 2012

22 de Octubre

Juan Manuel Rafael Fabián

Está por comenzar:

Introducción a SSIS con Biml</>

15 de octubre de 2014

Guillermo Caicedo

Consultor | Nagnoi, LLC

Presidente, Puerto Rico PASS

[email protected]

@sqltitan www.prpass.org

www.facebook.com/prpass

www.twitter.com/prpass

Agenda

- Introducción

- ¿Biml?

- Sintaxis Básico

- BimlScript

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?)

demo

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;InitialCatalog=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

• Varigencehttp://www.varigence.com/Products/Biml/Capabilities

• BimlScripthttp://bimlscript.com/

• BIDS Helper on Codeplexhttp://bidshelper.codeplex.com/

Blogs• Stairway to Biml by Andy Leonard

http://www.sqlservercentral.com/stairway/100550/

• BIML articles by Joost van Rossumhttp://microsoft-ssis.blogspot.be/search/label/BIML

• BIML articles by Marco Schreuderhttp://blog.in2bi.eu/tags/biml/

• BIML articles by John Welchhttp://agilebi.com/jwelch/tag/biml/

• Introduction to Biml part I by Koen Verbeeckhttp://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 AwardDo you know a volunteer that has gone

above and beyond recently?

Nominate them for the monthly OVA.

[email protected]

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á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