Open Business Intelligence

La red del Business Intelligence

Objetivo:
* Crear tres transformaciones, que extraigan los datos desde un oltp y los almacenen en el Data Warehouse.
* Crear un paso que obtenga un id secuencial de forma dinámica.
* Incluir este id secuencial como clave primaria de las dimensiones.


Requisitos:
* Haber leído [Tutorial 02].


Esquema de trabajo:
Es muy útil mantener al Data Warehouse con claves primarias que no dependan directamente de las fuentes transaccionales, esto hará que nuestro depósito sea independiente de las codificaciones utilizadas en estas fuentes.
El mantenimiento de dichas claves también soluciona los casos en que las claves principales de los OLTP son de tipo texto.


Pasos generales:

1) Crear Tablas de la Base de Datos datawarehouse:
* Descargar el archivo adjunto: ScriptBDPracticoDWMySQL.sql
* Abrir MySQL Query Browser.
* Ir a File → Open Script...
* Seleccionar ScriptBDPracticoDWMySQL.sql.
* Presionar Execute (o ir a Script → Execute).
* Hacer clic derecho sobre la base de datos datawarehouse y seleccionar la opción Refresh Schemata.

2) Crear Transformación para poblar DW_ClientesLookup:
* Crear una nueva Transformación y llamarla: “DW_ClientesLookup – Load Datawarehouse”.

3) Crear pasos:
3.1)
* Añadir a la zona de trabajo el paso: Entrada → Entrada Tabla
* Acceder al paso.
* Crear y probar la conexión a la base de datos “intermedio”.
* Pegar la siguiente consulta y previsualizar los datos:
SELECT
c.idCliente
,c.Cliente
,z.Zona
,c.cuentaHabi
FROM
Clientes c INNER JOIN zonas z
ON c.idZona=z.idZona;

* Presionar Aceptar.

3.2)
* Añadir a la zona de trabajo el paso: Trasformar → Añadir Secuencia
* Unir el paso del punto 3.1 con este paso.
* Acceder al paso.
* Para este ejemplo, completar el siguiente campo:
___* Nombre del Valor: nombre del campo que contendrá la secuencia. En este caso: idNuevo
* Presionar Aceptar.

3.3)
* Añadir a la zona de trabajo el paso: Trasformar → Selecciona/Renombra Valores
* Unir el paso del punto 3.2 con este paso.
* Acceder al paso.
* En la pestaña actual (Selecciona & Modifica), seleccionar los siguientes campos:
___Nombre Campo:
___* idCliente
___* idNuevo
* Presionar Aceptar.

3.4)
* Añadir a la zona de trabajo el paso: Salida → Salida Tabla
* Unir el paso del punto 3.3 con este paso.
* Acceder al paso.
* La conexión será a “intermedio”, la tabla destino “ids_Clientes”, se tildará la opción vaciar tabla y se creará el esquema de la misma a través de la opción SQL.
* Presionar Aceptar.

3.5)
* Añadir a la zona de trabajo el paso: Trasformar → Selecciona/Renombra Valores
* Unir el paso del punto 3.2 con este paso.
* Acceder al paso.
* En la pestaña actual (Selecciona & Modifica), seleccionar los siguientes campos:
___Nombre Campo | Renombrar a:
___* idNuevo | idCliente
___* Cliente
___* Zona
___* cuentaHabi | cuentaHabilitada
* Presionar Aceptar.

3.6)
* Añadir a la zona de trabajo el paso: Salida → Salida Tabla
* Unir el paso del punto 3.5 con este paso.
* Acceder al paso.
* La conexión será a “datawarehouse”, la tabla destino “DW_ClientesLookup” y se tildará la opción vaciar tabla.
* Presionar Aceptar.

Si han seguido los pasos correctamente, deberían obtener el siguiente resultado:



4) Crear Transformación para poblar DW_ProductosLookup:
* Crear una nueva Transformación y llamarla: “DW_ProductosLookup – Load Datawarehouse”.
* Rehacer y adaptar los pasos del punto 3.
* La consulta que extrae los datos de “intermedio” es la siguiente:
SELECT
p.idProducto
,p.Producto
,r.Rubro
,pr.Proveedor
FROM
productos p INNER JOIN rubros r
ON p.idRubro=r.idRubro
INNER JOIN proveedores pr
ON p.idProveedo=pr.idProveedo;


5) Crear Transformación para poblar DW_VendedoresLookup:
* Crear una nueva Transformación y llamarla: “DW_VendedoresLookup – Load Datawarehouse”.
Rehacer y adaptar los pasos del punto 3.
La consulta que extrae los datos de “intermedio” es la siguiente:
SELECT
idVendedor
,vendedor
,comision
FROM
vendedores;



Espero les sea útil.
Saludos.

Visitas: 3402

Archivos adjuntos

Respuestas a esta discusión

hola una pregunta quiero hacer este ejemplo ya que lo que estaba haciendo no me sale... intermedio contiene todas los datos de lass tablas pero aqui solo al hacer la consulta solo se eligen los campos que voy a cargar en el dw_vendedores.
Buenas. Podrías ser un poco más clara con tu consulta.
Saludos.
buenas expliquenme esto del punto 3.4)
* Añadir a la zona de trabajo el paso: Salida → Salida Tabla
* Unir el paso del punto 3.3 con este paso.
* Acceder al paso.
* La conexión será a “intermedio”, la tabla destino “ids_Clientes”, se tildará la opción vaciar tabla y se creará el esquema de la misma a través de la opción SQL.
* Presionar Aceptar.

es decir que creo un nuevo esquema(base) que contengo los mismo campos osea estos:idCliente, Cliente,IdZona,cuenta habilitada o que mismo hay que hacer aqui en este punto..GRacias
esty haciendo esto y no me sale me podrian ayudar ah y ne este caso EN SHEMA "intermedio y las dimensiones estan en el mismo esquema si deseo puedo poner las dw_ en otro esquema o no
Archivos adjuntos
Has clic en la pestaña "Logging" en la parte inferior de la pantalla cuando te de el error. Fijate que PDI marca en rojo los errores producidos, quizás con eso ya puedas detectar lo que esta pasando.

Saludos.
hola por favor contesteme esta pregnta de arriba que no entendi.. gracias..

maricela dijo:
buenas expliquenme esto del punto 3.4)
* Añadir a la zona de trabajo el paso: Salida → Salida Tabla
* Unir el paso del punto 3.3 con este paso.
* Acceder al paso.
* La conexión será a “intermedio”, la tabla destino “ids_Clientes”, se tildará la opción vaciar tabla y se creará el esquema de la misma a través de la opción SQL.
* Presionar Aceptar.

es decir que creo un nuevo esquema(base) que contengo los mismo campos osea estos:idCliente, Cliente,IdZona,cuenta habilitada o que mismo hay que hacer aqui en este punto..GRacias
Buenas maricela.
La conexión será a “intermedio”, la tabla destino “ids_Clientes”, se tildará la opción vaciar tabla y se creará el esquema de la misma a través de la opción SQL.

* la base de datos "intermedio" fue creada en el tutorial 02.
* la tabla ids_Clientes así como su estructura no existe aún, por eso hay que seleccionar la opción SQL.

Saludos

Buenas tardes, gracias por este tutorial, me esta siendo muy util!.. me pueden explicar porque se crea una tabla nueva para almacenar las claves subrogadas.

Otra duda es porque en el paso selecconar-datarehouse tengo disponibilidad inmediata del idNuevo si todavia no se creo la tabla ids_... gracias!

Saludos Guillermo

Buenas Guillermo, cómo estás?

Se crea esta nueva tabla para mantener una correspondencia directa entre los registros del DW y del OLTP.

Con respecto a idNuevo, tenemos disponibilidad inmediata porque este campo es el que obtenemos en el Step Añadir idNuevo.

Saludos

--

Ing. Bernabeu R. Dario
web | youtube | twitter

Buen día, en principio agradezco el tutorial, me está siendo de gran ayuda para mi Tesis de Grado. De ser posible quisiera resolver una duda, la misma es  respecto al script para crear la base de datos para el datawarehouse, puntualmente, ¿debería definirle las claves foráneas para establecer las relaciones uno a muchos entre las dimensiones y la tabla de hechos?

Desde ya muchas gracias, saludo cordialmente.

Eduardo.

RSS

Distintivo

Cargando…

© 2024   Creado por Emilio.   Tecnología de

Emblemas  |  Reportar un problema  |  Términos de servicio