Documente Academic
Documente Profesional
Documente Cultură
LABORATORIO 5
INTELIGENCIA DE NEGOCIOS
Valor
Limpiar Tablas
Limpiar las Tablas del Stage Area
OLE DB
Localhost.Northwind_Stage
Truncate Table STG_Cliente
INTELIGENCIA DE NEGOCIOS
Para probar la tarea tenemos que ejecutarla: Para ello seguimos los siguientes pasos.
Seleccionamos la tarea / Clic Derecho / Ejecutar tarea
La tarea comienza su ejecucin. Durante este proceso la tarea cambia de color.
-
INTELIGENCIA DE NEGOCIOS
La pantalla de Flujo de datos nos permitir realizar la tarea de ETL. Para ello necesitaremos
conectarnos a un origen de datos, disear las tareas de transformacin para, finalmente,
trasladarla hacia el destino final.
SSIS dentro del flujo de control nos permite conectarnos a los siguientes orgenes:
INTELIGENCIA DE NEGOCIOS
Para desarrollar nuestra Tarea de flujo de datos seguiremos los siguientes pasos:
Aparece la pantalla con las propiedades de la tarea seleccionada, con las siguientes opciones:
Administrador de Conexin OLE DB.- Define el origen del cual se leer los datos.
Modo de Acceso a Datos.- Define la forma en cmo se leern los datos. Esta puede
ser:
Tabla o vista
Variable de Nombre de tabla o Nombre de vista
Comando SQL
Comando SQL con variable.
Valor
Northwind_OLTP
Tabla o Vista
[dbo].[Customers]
INTELIGENCIA DE NEGOCIOS
INTELIGENCIA DE NEGOCIOS
Finalmente, debemos indicar hacia dnde se copiarn los datos. Del Cuadro de herramientas,
en Destinos de flujo de datos seleccionamos la tarea Destino de OLE DB, y lo asociamos con
la tarea Copiar Customers. Debe mostrarse de la siguiente manera:
Administrador de conexin OLE DB.- Define el destino en el cual se grabaran los datos
Modo de acceso a datos.- Define la forma en cmo se grabaran los datos. Esta puede ser:
Tabla o vista.
Carga rpida de Tabla o vista.
Variable de nombre de tabla o Nombre de vista.
Carga rpida de variable de nombre de tabla o Nombre de vista
Comando SQL.
Valor
Localhost.Northwind_Stage
Tabla o Vista
[dbo].[STG_Cliente]
Destino
CustomerID
Cliente_Codigo
CompanyName
Cliente_Nombre
ContactName
Cliente_Compania
Address
Cliente_Direccion
City
Cliente_Ciudad
Region
Cliente_Region
INTELIGENCIA DE NEGOCIOS
PostalCode
Cliente_Postal
Country
Cliente_Pas
Clic en Aceptar.
Note que no existe ninguna columna del origen asociada a la columna Cliente_SKey. Esto
debido a que este campo es de tipo Identity, por lo que el valor que se asignar es
administrado por las base de datos SQL Server 2005.
Para poder probar el paquete, ubquese en Flujo de control, seleccione la tarea Cargar
STG_Cliente y ejectelo. Debe mostrar la siguiente pantalla:
INTELIGENCIA DE NEGOCIOS
En la pantalla de Flujo de datos desarrollaremos las tareas de ETL. Para ello verificamos que
tengamos generadas las conexiones que necesitaremos.
Esta tarea debe tener el siguiente cdigo y utilizar la conexin Northwind_OLTP creada.
Aparece la pantalla con las propiedades de la tarea seleccionada, configure las siguientes
propiedades:
Propiedad
Administrador de Conexin OLE DB
Modo de Acceso a Datos
Nombre de la tabla o vista
Columnas
Valor
Northwind_OLTP
Tabla o Vista
[dbo].[Products]
ProductID ProductName
CategoryID
UnitPrice
La tarea de Conversin de Datos nos permitir modificar los distintos tipos de datos que
podemos encontrar en las distintas fuentes de datos al tipo de dato del destino. Para el
formato de Fecha, para el tamao de los campos tipo carcter, para los valores numricos, etc.
En el ejemplo, si vemos el tamao del campo ProductName de la base de datos Northwind y lo
comparamos con el tipo de dato de base de datos Norhwind_Stage, veremos que estas no son
iguales. Para estandarizarlas realizaremos un una conversin de datos.
Northwind
Northwind_Stage
Si le damos Clic derecho Editar o doble clic sobre la tarea Conversin de Datos, nos
aparecer la siguiente pantalla.
INTELIGENCIA DE NEGOCIOS
Valor
ProductName
ProductName_Varchar
Cadena[DT_STR]
35
Finalmente, debemos indicar hacia dnde se copiaran los datos. Del Cuadro de herramientas,
en Destinos de flujo de datos seleccionamos la tarea Destino de OLE DB, y lo asociamos con
la tarea Conversin de Datos. Debe mostrarse de la siguiente manera
Aparece la pantalla con las propiedades de la tarea seleccionada, configure las siguientes
propiedades:
INTELIGENCIA DE NEGOCIOS
Propiedad
Administrador de Conexin OLE DB
Modo de Acceso a Datos
Nombre de la tabla o vista
Valor
Localhost.Northwind_Stage
Tabla o Vista
[dbo].[Stg_Producto]
Destino
Producto_Codigo
Producto_Nombre
Producto_PUnitario
CategoriaProducto_Codigo
Clic en Aceptar
Note que al igual que en la carga de la tabla STG_Cliente, para la carga de STG_Producto
tampoco existe ninguna columna del origen asociada a la columna Producto_SKey. Al igual que
en el caso anterior, el valor lo asignar la base de datos SQL Server 2005.
En este caso, tampoco existe valor asociado para el campo Categoria_SKey. En este caso, el
valor ser completado cuando se realice la carga de la tabla STG_Categoria.
Para poder probar el paquete, ubquese en Flujo de control, seleccione la tarea Cargar
STG_Producto y ejectelo. Debe mostrar la siguiente pantalla:
INTELIGENCIA DE NEGOCIOS
En la pantalla de Flujo de datos, desarrollaremos las tareas de ETL. Para ello, verificamos que
tengamos generadas las conexiones que necesitaremos.
Esta tarea debe tener el siguiente cdigo y utilizar la conexin Northwind_OLTP creada.
Aparece la pantalla con las propiedades de la tarea seleccionada. Configure las siguientes
propiedades:
Propiedad
Administrador de conexin OLE DB
Modo de acceso a datos
Texto de comando SQL
Valor
Northwind_OLTP
Comando SQL
SELECT EmployeeID, LastName,
FirstName, Address, City, Region,
PostalCode, Country, ReportsTo
FROM
Employees
INTELIGENCIA DE NEGOCIOS
Note que en la tabla Employees de la tabla Northwind, el nombre del empleado aparece
separado en los campos LastName y FistName, pero en la tabla STG_Empleado adems
necesitamos almacenar una columna con el nombre completo. Para esto podemos hacer dos
cosas. La primera modificar la sentencia SELECT arriba indicada y agregar la columna que falta
Texto de comando SQL
SELECT
EmployeeID, LastName,
FirstName, LastName + +
FirstName as Name, Address, City,
Region, PostalCode, Country,
ReportsTo
FROM
Employees
La otra es utilizar una tarea SSIS. Del Cuadro de herramientas, en Transformacin de flujo de
datos, seleccionamos la tarea Columna Derivada y lo asociamos con la tarea Leer Employees.
Debe mostrarse de la siguiente manera.
La tarea de Columna Derivada nos permitir crear nuevos campos a partir de los campos ya
existentes. Para ello, nos facilitar un conjunto de funciones de cadena, matemticas, de
fecha, nulos, conversin de tipo, etc.
En el ejemplo, vamos a crear la columna FullName a partir de las columnas FirstName y
LastName.
Si le damos Clic derecho Editar o doble clic sobre la tarea Columna Derivada, nos
aparecer la siguiente pantalla:
INTELIGENCIA DE NEGOCIOS
Valor
FullName
<agregar como columna nueva>
TRIM( [LastName] )+" "+TRIM( [FirstName])
Tipo de datos
Longitud
Cadena Unicode[DT_WSTR]
70
Finalmente, debemos indicar hacia dnde se copiarn los datos. Del Cuadro de herramientas,
en Destinos de flujo de datos, seleccionamos la tarea Destino de OLE DB y lo asociamos con
la tarea Columna Derivada. Debe mostrarse de la siguiente manera:
Aparece la pantalla con las propiedades de la tarea seleccionada. Configure las siguientes
propiedades:
Propiedad
Administrador de conexin OLE DB
Modo de acceso a datos
Nombre de la tabla o vista
Valor
Localhost.Northwind_Stage
Tabla o Vista
[dbo].[Stg_Empleado]
INTELIGENCIA DE NEGOCIOS
Origen
EmployeeID
LastName
FirstName
Address
City
Region
PostalCode
Country
ReportsTo
FullName
Destino
Empleado_Codigo
Empleado_Apellido
Empleado_Nombre
Empleado_Direccin
Empleado_Ciudad
Empleado_Region
Empleado_Postal
Empleado_Pais
Empleado_ReportID
Empleado_NombreCompleto
Clic en Aceptar.
Las columnas Empleado SuperiorSkey y Empleado_Superior sern completados ms adelante.
Para poder probar el paquete, ubquese en Flujo de control, seleccione la tarea Cargar
STG_Empleado y ejectelo. Debe mostrar la siguiente pantalla:
Finalizar y grabe.
INTELIGENCIA DE NEGOCIOS
Aparece la pantalla con las propiedades de la tarea seleccionada. Configure las siguientes
propiedades:
Propiedad
Connection Type
Connection
SQLStatement
Valor
OLE DB
Localhost.Northwind_Stage
Execute USP_Completa_Jefe
El stored procedure esta creado en la base
de datos stage.
El cdigo ser proporcionado y explicado en
clase.