poblando un datawarhouse

19
Poblando un Data Warehouse Creación de una DTS Package Creando un Paquete y Adicionando Conexiones Activada d Pasos a Seguir Ingresand o al SSIS 1. Iniciar el SQL Server Business Intelligence Development Studio y desde el Menu la opcion : File New Project con lo que aparece la interfaz siguiente Activada d Pasos a Seguir 2. Elija en a. Tipo Proyecto: Business Intelligent Projects b. Templates: Integration Services Project c. Name: Doblamiento General NorthWind_Mart d. Browse: ubique la direccion deseada e. Ok Ver la sgte interfaz Activada d Pasos a Seguir

Upload: fernando-casana-raymundo

Post on 13-Aug-2015

61 views

Category:

Data & Analytics


0 download

TRANSCRIPT

Page 1: poblando un datawarhouse

Poblando un Data Warehouse

Creación de una DTS Package

Creando un Paquete y Adicionando Conexiones

Activada d Pasos a Seguir

Ingresand

o al SSIS

1. Iniciar el SQL Server Business Intelligence Development Studio y desde el

Menu la opcion : File –

New Project con lo que aparece la interfaz siguiente

Activada d Pasos a Seguir

2. Elija en

a. Tipo Proyecto: Business Intelligent Projects

b. Templates: Integration Services Project

c. Name: Doblamiento General NorthWind_Mart

d. Browse: ubique la direccion deseada

e. Ok

Ver la sgte interfaz

Activada d Pasos a Seguir

Page 2: poblando un datawarhouse

3. Renombrar el Paquete como: PoblamientoGeneral

Recuerde que un proyecto es una colección de Paquetes, DataSources,

DataSource Views y otros elementos que podrán ser usados mientras desarrolle

la construcción del paquete

Creando

la

conexión

de datos

ORIGEN

1. Clic derecho sobre DataSource : New con lo que se activa:

Activada d Pasos a Seguir

Page 3: poblando un datawarhouse

2. Haga clic en New y digite los sgts datos

Activada d Pasos a Seguir

Page 4: poblando un datawarhouse

3. Ok

4. Next

5. Finish

Creando la

conexión

destino de

datos

1. Proceda como en paso anterior, pero esta vez establesca la conexión con la

BD NorthWind_Mart

Activada d Pasos a Seguir

Page 5: poblando un datawarhouse

Agregand

o una

tarea de

ejecucion

1. Asegurarse de estar ubicado en Control Flow

2. Desde ToolBox arrastre Execute SQL Task luego clic derecho Edit

ubique la propiedad Connection y seleccione: localhost.NorthWind_Mart

3. Ubique la propiedad SQL Statment clic en (…) y digite lo sgte:

DELETE Sales_Fact

DELETE Employee_Dim

DBCC CHECKIDENT('Employee_Dim', reseed,0)

DELETE Time_Dim

DBCC CHECKIDENT('Time_Dim', reseed,0)

DELETE Customer_Dim

DBCC CHECKIDENT('Customer_Dim', reseed,0)

DELETE Shipper_Dim

DBCC CHECKIDENT('Shipper_Dim', reseed,0)

DELETE Product_Dim

DBCC CHECKIDENT('Product_Dim', reseed,0)

Activada d Pasos a Seguir

Page 6: poblando un datawarhouse

4. Ok

5. ok

Page 7: poblando un datawarhouse

Poblando Dimension Transportistas

Actividad Pasos a Seguir

Creando el

Flujo de

Datos

1. Desde ToolBox arrastre DataFlowTask

2. Clic derecho: Rename y digite: Poblando Transportistas

3. Clic en Execute SQL Tasks, clic en la flecha verde y arrastre

hasta Poblando Transportistas

Aspecto inicial

Actividad Pasos a Seguir

Estableciendo

el origen

1. Doble clic sobre Poblando Transportistas

2. En ToolBox en DataFlowSources arrastre OLEDB DataSource y

haga doble clic

3. Desde ConnectionManager

a. OLE DB Connection Manager : localhost.NorthWind

b. Data Access: Table o View

c. Name: Shippers

4. s

Estableciendo

el Destino

1. En ToolBox en DataFlowDestinations , arrastre OLEDB

DataDestionation

2. Clic en OLE DB DataSource, clic en la flecha verde y arrastre

hacia OLEDB Data Destination

3. Doble Clic en OLEDB DataDestination.

4. Desde ConnectionManager>

a. OLE DB Connection Manager: localhost.NorthWind_Mart

b. Data Access; Table

c. Name: Shipper_Dim

Clic en Mappings: y trate de llegar al sgte esquema

Page 8: poblando un datawarhouse

Grabando y

Ejecutando el

Paquete

1. Grabar

2. Presione F5 para ejecutar

Verificando

Poblamiento

1. Cargue el SQL Server Management Studio

2. Clic en New Quero

3. Seleccione la BD: NorthWind_Mart

4. Digite: SELECT * FROM Shipper_Dim

Page 9: poblando un datawarhouse

Poblando Dimension Clientes

Actividad Pasos a Seguir

Creando el

Flujo de

Datos

1. Desde ToolBox arrastre DataFlowTask

2. Clic derecho: Rename y digite: Poblando Clientes

3. Clic en Execute SQL Tasks, clic en la flecha verde y arrastre hasta

Poblando Clientes

Estableciendo

el origen

1. Doble clic sobre Poblando Cliente

2. En ToolBox en DataFlowSources arrastre OLEDB DataSource y haga

doble clic

3. Desde ConnectionManager

a. OLE DB Connection Manager : localhost.NorthWind

b. Data Access: SQL Command

Actividad Pasos a Seguir

c. SQL CommandText:

SELECT *, Regioncita = ISNULL(Region, 'Otros')

FROM customers

Estableciendo

el Destino

1. En ToolBox en DataFlowDestinations , arrastre OLEDB

DataDestionation

2. Clic en OLE DB DataSource, clic en la flecha verde y arrastre hacia

OLEDB Data Destination

3. Doble Clic en OLEDB DataDestination.

4. Desde ConnectionManager>

a. OLE DB Connection Manager: localhost.NorthWind_Mart

b. Data Access; Table

c. Name: Customer_Dim

Clic en Mappings: y trate de llegar al sgte esquema

Asegurarse de que en Destino Region sea a partir de Regioncita

Grabando y

Ejecutando el

Paquete

5. Grabar

2. Presione F5 para ejecutar

Page 10: poblando un datawarhouse

Verificando

Poblamiento

5. Cargue el SQL Server Management Studio

6. Clic en New Query

7. Seleccione la BD: NorthWind_Mart

8. Digite: SELECT * FROM Customer_Dim

Poblando Dimension Tiempo

Actividad Pasos a Seguir

Creando el

Flujo de

Datos

1. Desde ToolBox arrastre DataFlowTask

4. Clic derecho: Rename y digite: Poblando Tiempo

5. Clic en Execute SQL Tasks, clic en la flecha verde y arrastre

hasta Poblando Tiempo

Estableciendo

el origen

4. Doble clic sobre Poblando Tiempo

5. En ToolBox en DataFlowSources arrastre OLEDB DataSource y

haga doble clic

Actividad Pasos a Seguir

6. Desde ConnectionManager

a. OLE DB Connection Manager : localhost.NorthWind

b. Data Access: SQL Command

c. SQL CommandText:

SELECT DISTINCT

S.ShippedDate AS TheDate, DateName(dw, S.ShippedDate)

AS DayOfWeek,

DatePart(mm, S.ShippedDate) AS [Month], DatePart(yy,

S.ShippedDate) AS [ Year],

DatePart(qq, S.ShippedDate) AS [ Quarter],DatePart(dy,

S.ShippedDate) AS DayOfYear,

DateName(month, S.ShippedDate) +

'_' + DateName(year,S.ShippedDate) AS YearMonth,

DatePart(wk, S.ShippedDate) AS WeekOfYear

FROM Orders S

WHERE S.ShippedDate IS NOT NULL

Page 11: poblando un datawarhouse

Estableciendo

el Destino

6. En ToolBox en DataFlowDestinations , arrastre OLEDB

DataDestionation

7. Clic en OLE DB DataSource, clic en la flecha verde y arrastre

hacia OLEDB Data Destination

8. Doble Clic en OLEDB DataDestination.

9. Desde ConnectionManager>

a. OLE DB Connection Manager: localhost.NorthWind_Mart

b. Data Access; Table

c. Name: time_Dim

Clic en Mappings: y trate de llegar al sgte esquema

Grabando y

Ejecutando el

Paquete

1. Grabar

2. Presione F5 para ejecutar

Verificando

Poblamiento

1. Cargue el SQL Server Management Studio

2. Clic en New Query

3. Seleccione la BD: NorthWind_Mart

4. Digite: SELECT * FROM Time_Dim

Page 12: poblando un datawarhouse

Poblando Dimension Producto

Actividad Pasos a Seguir

Creando el

Flujo de

Datos

1. Desde ToolBox arrastre DataFlowTask

2 Clic derecho: Rename y digite: Poblando Producto

3. Clic en Execute SQL Tasks, clic en la flecha verde y arrastre hasta

Poblando Producto

Page 13: poblando un datawarhouse

Estableciendo

el origen

1. Doble clic sobre Poblando Tiempo

2. En ToolBox en DataFlowSources arrastre OLEDB DataSource y

haga doble clic

3. Desde ConnectionManager

a. OLE DB Connection Manager : localhost.NorthWind

b. Data Access: SQL Command

c. Clic en el boton: Build Query

d. Clic derecho: Add Table. Seleccione: Products, Suppliers y

Categories

e. Clic : Add

f. Clic:Close

g. Seleccione las columnas de acuerdo a lo mostrado a

continuación.

h. Clic ok

i. Clic ok

Actividad Pasos a Seguir

Page 14: poblando un datawarhouse

Estableciendo

el Destino

1. En ToolBox en DataFlowDestinations , arrastre OLEDB

DataDestionation

2. Clic en OLE DB DataSource, clic en la flecha verde y arrastre hacia

OLEDB Data Destination

3. Doble Clic en OLEDB DataDestination.

4. Desde ConnectionManager>

a. OLE DB Connection Manager: localhost.NorthWind_Mart

b. Data Access; Table

c. Name: Product_Dim

Clic en Mappings: y trate de llegar al sgte esquema

Grabando y

Ejecutando el

Paquete

1. Grabar

2. Presione F5 para ejecutar

Verificando

Poblamiento

1. Cargue el SQL Server Management Studio

2. Clic en New Query

3. Seleccione la BD: NorthWind_Mart

4. Digite: SELECT * FROM Product_Dim

Page 15: poblando un datawarhouse

Poblando Dimensión Empleados

Actividad Pasos a Seguir

Creando el

Flujo de

Datos

1. Desde ToolBox arrastre DataFlowTask

2. Clic derecho: Rename y digite: Poblando Empleados

3. Clic en Execute SQL Tasks, clic en la flecha verde y arrastre

hasta Poblando Empleados

Estableciendo

el origen

1. Doble clic sobre Poblando Tiempo

2. En ToolBox en DataFlowSources arrastre OLEDB DataSource y

haga doble clic

3. Desde ConnectionManager

a. OLE DB Connection Manager : localhost.NorthWind

b. Data Access: SQL Command

c. SQL CommandText:

select * , FirstName +',' + LastName as EmployeeName

Actividad Pasos a Seguir

from employees

Estableciendo

el Destino

1. En ToolBox en DataFlowDestinations , arrastre OLEDB

DataDestionation

2. Clic en OLE DB DataSource, clic en la flecha verde y arrastre

hacia OLEDB Data Destination

3. Doble Clic en OLEDB DataDestination.

4. Desde ConnectionManager>

a. OLE DB Connection Manager: localhost.NorthWind_Mart

b. Data Access; Table

c. Name: Employee_Dim

Clic en Mappings: y trate de llegar al sgte esquema

Grabando y

Ejecutando el

Paquete

1. Grabar

2. Presione F5 para ejecutar

Page 16: poblando un datawarhouse

Verificando

Poblamiento

1. Cargue el SQL Server Management Studio

2. Clic en New Query

3. Seleccione la BD: NorthWind_Mart

4. Digite: SELECT * FROM Employee_Dim 5. Execute

Poblando Tabla Hecho

Actividad Pasos a Seguir

Creando el

Flujo de

Datos

1. Ubicarse en Control Flow

2. Desde ToolBox arrastre DataFlowTask

3. Clic derecho: Rename y digite: Poblando Tabla Hecho

4. Clic en Poblando Transportistas, clic en la flecha verde y

arrastre hasta Poblando Tabla Hecho.

5. Clic en Poblando Clientes, clic en la flecha verde y arrastre

hasta Poblando Tabla Hecho.

6. Clic en Poblando Tiempo, clic en la flecha verde y arrastre

hasta Poblando Tabla Hecho.

7. Clic en Poblando Productos, clic en la flecha verde y arrastre

Actividad Pasos a Seguir

hasta Poblando Tabla Hecho.

8. Clic en Poblando Empleados, clic en la flecha verde y arrastre

hasta Poblando Tabla Hecho.

Page 17: poblando un datawarhouse

Estableciendo

el origen

1. Doble clic sobre Poblando Tabla Hecho

2. En ToolBox en DataFlowSources arrastre OLEDB DataSource y

haga doble clic

3. Desde ConnectionManager

a. OLE DB Connection Manager : localhost.NorthWind

b. Data Access: SQL Command

c. SQL CommandText:

SELECT

Northwind_Mart.dbo.Time_Dim.TimeKey,

Northwind_Mart.dbo.Customer_Dim.CustomerKey,

Northwind_Mart.dbo.Shipper_Dim.ShipperKey,

Northwind_Mart.dbo.Product_Dim.ProductKey,

Northwind_Mart.dbo.Employee_Dim.EmployeeKey,

Northwind.dbo.Orders.RequiredDate,

Orders.Freight * [Order Details].Quantity /

(SELECT SUM(Quantity)

FROM [Order Details] od

WHERE od.OrderID = Orders.OrderID) AS

LineItemFreight,

[Order Details].UnitPrice * [Order Details].Quantity AS

LineItemTotal,

[Order Details].Quantity AS LineItemQuantity,

[Order Details].Discount * [Order Details].UnitPrice *

[Order Details].Quantity AS LineItemDiscount

FROM Orders

INNER JOIN [Order Details] ON Orders.OrderID =

[Order Details].OrderID

INNER JOIN Northwind_Mart.dbo.Product_Dim

ON [Order Details].ProductID =

Northwind_Mart.dbo.Product_Dim.ProductID

INNER JOIN Northwind_Mart.dbo.Customer_Dim

ON Orders.CustomerID =

Northwind_Mart.dbo.Customer_Dim.CustomerID

INNER JOIN Northwind_Mart.dbo.Time_Dim

ON Orders.ShippedDate =

Northwind_Mart.dbo.Time_Dim.TheDate

INNER JOIN Northwind_Mart.dbo.Shipper_Dim

ON Orders.ShipVia =

Northwind_Mart.dbo.Shipper_Dim.ShipperID

INNER JOIN Northwind_Mart.dbo.Employee_Dim

ON Orders.EmployeeID =

Northwind_Mart.dbo.Employee_Dim.EmployeeID

WHERE (Orders.ShippedDate IS NOT NULL)

Page 18: poblando un datawarhouse

Estableciendo

el Destino

10.En ToolBox en DataFlowDestinations , arrastre OLEDB

DataDestionation

11.Clic en OLE DB DataSource, clic en la flecha verde y arrastre

Actividad Pasos a Seguir

hacia OLEDB Data Destination

12.Doble Clic en OLEDB DataDestination.

13.Desde ConnectionManager>

a. OLE DB Connection Manager: localhost.NorthWind_Mart

b. Data Access; Table

c. Name: Sales_Fact

Clic en Mappings: y trate de llegar al sgte esquema

Grabando y

Ejecutando el

Paquete

1. Grabar

2. Presione F5 para ejecutar

Verificando

Poblamiento

1. Cargue el SQL Server Management Studio

2. Clic en New Query

3. Seleccione la BD: NorthWind_Mart

4. Digite: SELECT * FROM Sales_Fact

5. Ejecutar

Page 19: poblando un datawarhouse

Ejercicio 04. Grabando y Ejecutando el Paquete

1. Hace click en el ícono de grabar.

2. Grabe el paqute con: Poblando el Data Mart para NorthWind

3. Seleccione SQL Server de la lista Location

4. Click OK

Ejecutar el Paquete:

1. Presione el botón grabar

2. Para ejecutar el paquete haga click en el botón execute

3. A continuación observará la ejecución de cada dimensión programada.

4. Si observa ninguna advertencia de error , corrija.

5. Haga click en Done

6. Repita los pasos 2,3, 4 y 5 más veces. Esto le permitirá ver información más tarde.