especialista en business intelligence integration services ssis transformaciones (parte 2) microsoft...

17
Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a http://addkw.com/ o escríbanos a [email protected]

Upload: cebrian-padron

Post on 22-Jan-2016

225 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a

Especialista en Business IntelligenceIntegration Services SSIS

Transformaciones (Parte 2)

Microsoft SQL Server 2008 R2

Suscribase a http://addkw.com/ o escríbanos a [email protected]

Page 2: Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a

Especialista en BI (SSIS)Agenda

Transformaciones conjunto de filas:- Transformación Dinámica- Transformación Anulación de Dinamización

Transformaciones de filas:- Transformación Mapa de Caracteres- Transformación Copiar Columna- Transformación Conversión de Datos- Transformación Columna Derivada

Source: SAP AG

Page 3: Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a

La tarea de flujo de datos permite la extracción, transformación y carga de los datos diseminados en las distintas fuentes de información de la empresa hacia las distintas fuentes de destino que son determinadas por el usuario.

Tarea flujo de datos

Page 4: Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a

El conjunto de filas puede incluir valores agregados y ordenados, conjuntos de filas de ejemplo y conjuntos de filas dinamizados y de anulación de dinamización.

Transformaciones de conjunto de filas

Page 5: Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a

Transforma un conjunto de datos normalizado en una versión menos normalizada pero más compacta dinamizando los datos de entrada en un valor de columna. Cuando se dinamiza un conjunto de datos, las columnas de entrada ejecutan diferentes roles en el proceso de dinamización. Una columna puede participar de las siguientes maneras:• La columna se pasa sin cambios a la salida. Dado que varias filas de entrada pueden

obtener una sola fila de salida, la transformación copia solamente el primer valor de entrada para la columna.

• La columna funciona como la clave o parte de la clave que identifica un conjunto de registros.

• La columna define la dinamización. Los valores de esta columna se asocian con columnas en el conjunto de datos dinamizado.

• La columna contiene valores que se colocan en las columnas creadas por la dinamización.

Transformación Dinamica

Page 6: Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a

Valores del campo PivotUsage property:

Transformación Dinamica

Page 7: Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a

Ejemplo:1. Cree un paquete y seleccione la tarea de flujo de datos y luego edítela.2. Como origen de datos use la DB AdventureWorks2008 e utilize las tablas:

«SalesOrderHeader», «SalesOrderDetail» y «Product» y realice la siguiente query:SELECT Production.Product.ProductID, Production.Product.Name, YEAR(Sales.SalesOrderHeader.OrderDate) AS YY, SUM(Sales.SalesOrderDetail.OrderQty) AS QuantityFROM Production.Product INNER JOIN Sales.SalesOrderDetail ON Production.Product.ProductID = Sales.SalesOrderDetail.ProductID INNER JOIN Sales.SalesOrderHeader ON Sales.SalesOrderDetail.SalesOrderID = Sales.SalesOrderHeader.SalesOrderIDGROUP BY Production.Product.ProductID, Production.Product.Name, YEAR(Sales.SalesOrderHeader.OrderDate)ORDER BY Production.Product.Name, YY

3. Use la transformacion Pivot y editela. En la seccion «Input Columns» seleccione todos los campos.

4. En la sección «input and ouput properties», en la carpeta «Input columns» asigne a cada campo el valor de «PivotUsage» correspondiente (según tabla de valores de la propiedad «PivotUsage») .

5. En la seccion «Pivot Default Output» agregue las columnas: ID, Name , 2001 ,2002 , 2003 , 2004.

6. Las columnas ID y Name deben tener la misma propiedad «SourceColumn» que las la propiedad «LineageID» de las columnas «ProductID» y «Name» de la carpeta «input Columns».

Transformación Dinamica

Page 8: Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a

Ejemplo:7. Las columnas del 2001 al 2004 del directorio «OutputColumns» deben tener la

propiedad «PivotKeyValue» con el valor de la columna y la propiedad «SourceColumn» con el valor de la propiedad «LineageID» del campo «OrderQuantity» del directorio «Input Columns».

8. Descargar la transformacion en un documento de Excel.

Transformación Dinamica

Page 9: Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a

La transformación Anulación de dinamización transforma un conjunto de datos sin normalizar en una versión más normalizada ampliando los valores de varias columnas de un solo registro en varios registros con los mismos valores en una sola columna. Por ejemplo, un conjunto de datos que enumera nombres de clientes tiene una fila para cada cliente, con los productos y la cantidad comprada en columnas dentro de la fila. Después de que la transformación Anulación de dinamización normaliza el conjunto de datos, el conjunto de datos contiene una fila diferente para cada producto que compró el cliente.

Transformación Anulacion de Dinamizacion

Page 10: Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a

Las siguientes transformaciones actualizan los valores de columna y crean columnas nuevas. La transformación se aplica a cada fila en la entrada de transformación.

Transformaciones de fila

Page 11: Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a

La transformación Mapa de caracteres se aplica a funciones de cadena que operan sobre datos de caracteres, como la conversión de minúsculas a mayúsculas. Esta transformación solo opera en datos de columnas con un tipo de datos de cadena.

Transformación Mapa de caracteres

Page 12: Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a

En una transformación pueden realizarse varias operaciones. Sin embargo, algunas operaciones son mutuamente exclusivas.

Transformación Mapa de caracteres

Page 13: Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a

Crea columnas nuevas copiando columnas de entrada y agregando las columnas nuevas a la salida de la transformación. En una fase posterior del flujo de datos se pueden aplicar distintas transformaciones a las copias de columnas.

Transformación Copiar columna

Page 14: Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a

Convierte los datos de una columna de entrada a otro tipo de datos diferente y después los copia a una nueva columna de salida. Por ejemplo, un paquete puede extraer los datos de diferentes orígenes y después usar esta transformación para convertir las columnas al tipo de datos necesario para el almacén de datos de destino. Puede aplicar múltiples conversiones a una sola columna de entrada. Los siguientes son los Tipos de datos que se pueden usar en SSIS:

Transformación Conversión de datos

Page 15: Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a

Transformación Conversión de datos

Page 16: Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a

Crea nuevos valores de columna aplicando expresiones a las columnas de entrada de la transformación. Una expresión puede contener cualquier combinación variables, funciones, operadores y columnas de la entrada de transformación. El resultado puede agregarse como una nueva columna o insertarse en una columna existente como un valor de reemplazo. La transformación Columna derivada puede definir varias columnas derivadas, y cualquier variable o columna de entrada puede aparecer en varias expresiones.

Transformación Columna derivada

Page 17: Especialista en Business Intelligence Integration Services SSIS Transformaciones (Parte 2) Microsoft SQL Server 2008 R2 Suscribase a

Transformación Columna derivada

Puede utilizar esta transformación para realizar las siguientes tareas:• Concatenar datos de distintas columnas en una columna derivada. Ej.

FirstName + " " + LastName.• Extraer caracteres de datos de cadena mediante funciones como SUBSTRING. Ej.

SUBSTRING(FirstName,1,1).• Aplicar funciones matemáticas a datos numéricos. Ej. ROUND(SalesTax, 2). • Crear expresiones que comparen columnas de entrada y variables. Ej.

ProductVersion == @Version? ProductVersion : @Version.• Extraer partes de un valor datetime. Ej. DATEPART("year",GETDATE())