Metodologia Hefesto
Metodologia Hefesto
Metodologia Hefesto
SÁNCHEZ CARRIÓN
ESCUELADEINGENIERÍAINFORMÁTICA
METODOLOGIA HEFESTO
Monografía q u e c o m o p a r t e d e
l a a s i g n a t u r a d e INTELIGENCIA DE
NEGOCIOS
presenta el alumno:
OCTUBR E , 2019
1
ÍN D I C E
1. Resumen…………………………………………………………………………………………………………….3
MARCO TEORICO
2. Introducción………………………………………………………………………………………………………...5
3. Descripción………………………………………………………………………………………………………....6
4. Características……………………………………………………………………………………………………..6
CASO APLICADO
5. Empresa analizada………………………………………………………………………………………………..8
6. Paso 1) Análisis de Requerimientos……………………………………………………………………………10
6.1. 1.1) Preguntas de Negocio………………………………………………………………………………...10
6.2. 1.2) Indicadores y Perspectivas…………………………………………………………………………...11
6.3. 1.3) Modelo Conceptual…………………………………………………………………………………….12
7. Paso 2) Análisis de Data Sources………………………………………………………………………………14
7.1. 2.1) Hechos e Indicadores………………………………………………………………………………….14
7.2. 2.2) Mapeo…………………………………………………………………………………………..……….15
7.3. 2.3) Granularidad…………………………………………………………………………………………….16
7.4. 2.4) Modelo Conceptual Ampliado………………………………………………………………….………20
8. Paso 3) Modelo Lógico del DW…………………………………………………………………………………..21
8.1. 3.1) Tipología………………………………………………………………………………………………….21
8.2. 3.2) Tablas de
Dimensiones………………………………………………………………………………………………….23
8.3. 3.3) Tablas de Hechos………………………………………………………………………………………26
8.4. 3.4) Uniones………………………………………………………………………………………………….27
9. Cubo Multidimensional………………………………………………………………………………………...…34
2
1. Resumen
3
MARCO TEORICO
4
2. Introducción
En esta sección se presentará la metodología HEFESTO, que permitirá la construcción de Data
Warehouse de forma sencilla, ordenada e intuitiva. Su nombre fue inspirado en el dios griego de la
construcción y el fuego, y su logotipo es el siguiente:
HEFESTO es una metodología, cuya propuesta está fundamentada en una extensa investigación,
comparación de metodologías existentes y el aporte de experiencias propias en procesos de diseño e
implementación de DW. Cabe destacar que HEFESTO está en continua evolución, y se han tenido en
cuenta, como gran valor agregado, todos los feedbacks que han aportado quienes han utilizado esta
metodología en diversos países y con diversos fines. Es fundamento de esta metodología infundir en
l@s lector@s una idea cabal sobre cada paso que se plantea, de tal forma que en tiempo de
aplicación se posea argumentos sólidos para defender y sostener la implementación y además, ser
capaces de plantear nuevos interrogantes que aporten valor extra al trabajo y a la metodología. Es
deseo de quienes escribimos este libro, que esta metodología siga creciendo y evolucionando con
aportes diversos en cuanto a saberes, experiencias y condiciones. La base de dedicar tiempo en
escribir un libro y luego publicarlo de forma libre es la compartir conocimiento, sin embargo, es muy
importante que este conocimiento NO sea estático, y la forma en que este conocimiento se mantenga
en movimiento y constante crecimiento, es sin duda el aporte de la comunidad. La metodología
HEFESTO puede adaptarse muy bien a cualquier ciclo de vida de desarrollo de software. Lo que se
busca, es entregar una primera implementación que satisfaga una parte de las necesidades, para
demostrar las ventajas del DW y motivar a l@s usuari@s. Se acompañará cada desarrollo teórico con
una implementación basada en una empresa real a fin de mostrar los resultados que se deben
obtener y ejemplificar cada concepto de forma concreta y contundente.
3. Descripción
HEFESTO está compuesto por los siguientes pasos:
1) ANÁLISIS DE REQUERIMIENTOS
o 1.1) Preguntas del Negocio
o 1.2) Indicadores y Perspectivas
o 1.3) Modelo Conceptual
2) ANÁLISIS DE DATA SOURCES
o 2.1) Hechos e Indicadores
o 2.2) Mapeo
o 2.3) Granularidad
o 2.4) Modelo Conceptual Ampliado
3) MODELO LÓGICO DEL DW
o 3.1) Tipología
o 3.2) Tablas de Dimensiones
o 3.3) Tablas de Hechos
o 3.4) Uniones
4) INTEGRACIÓN DE DATOS
o 4.1) Carga Inicial
5
o 4.2) Actualización
Después, se analizarán los Data Sources en pos de determinar cómo se construirán los Indicadores,
señalando el mapeo correspondiente y seleccionando los campos de estudio de cada Perspectiva.
Una vez realizado esto, se pasará a la construcción del Modelo Lógico del DW, en donde se definirá
cuál será el tipo de esquema que se implementará.
Seguidamente, se confeccionarán las tablas de Dimensiones y las tablas de Hechos, para luego
efectuar sus respectivas uniones.
Finalmente, utilizando técnicas de limpieza y calidad de datos, procesos ETL, etc, se definirán
políticas y estrategias para la Carga Inicial del DW y su respectiva Actualización.
4. Características
La metodología HEFESTO posee las siguientes características:
Los objetivos y resultados esperados en cada fase se distinguen fácilmente y son sencillos de
comprender.
La piedra fundamental la constituyen los requerimientos de l@s usuari@s, por lo cual, se
adapta con facilidad y rapidez a los cambios del negocio.
Reduce drásticamente la resistencia al cambio, ya que involucra a l@s usuari@s finales en
cada etapa para que tomen decisiones respecto al comportamiento y funciones del DW, y
además expone resultados inmediatos.
Utiliza modelos conceptuales y lógicos, los cuales son sencillos de interpretar y analizar.
Es independiente del tipo de ciclo de vida que se emplee para contener la metodología.
Es independiente del software/hardware que se utilicen para su implementación.
Cuando se culmina con una fase, los resultados obtenidos se constituyen en la entrada de la
fase siguiente.
Se aplica en Data Warehouse y en Data Mart.
6
CASO APLICADO
7
5. Empresa Analizada
Antes de comenzar con el primer paso, es menester describir las características principales de la
empresa a la cual se le aplicará la metodología HEFESTO, así se podrá tener como base un ámbito
predefinido y se comprenderá cada decisión que se tome con respecto al diseño del DW.
Identificación de la empresa
La empresa analizada, desarrolla las actividades comerciales de mayorista y minorista de artículos de
limpieza, en un ambiente geográfico de alcance nacional. De acuerdo a su volumen de operaciones,
se la puede considerar de tamaño mediano.
Con respecto a su clasificación, es una sociedad de responsabilidad limitada con fines de lucro.
Objetivos
Su objetivo principal es el de maximizar sus ganancias. Pero también, se puede adicionar el objetivo
de expandirse a un nuevo nivel de mercado, con el fin de conseguir una mayor cantidad de client@s
y posicionarse competitivamente por sobre sus rivales.
Otra meta que persigue, pero que aún no está definida como tal, es la de incursionar en otros rubros
para lograr diversificarse.
Políticas
La empresa posee pocos grandes clientes con un gran poder adquisitivo, y son precisamente estos,
los que adquieren el volumen de los productos que se comercializan. Debido a ello, la política que se
utiliza para cubrir los objetivos antes mencionados, es la de satisfacer ampliamente las necesidades
de sus client@s, brindándoles confianza y promoviendo un ambiente familiar entre l@s mism@s.
Esta acción se realiza con el fin de mantener l@s client@s actuales y para que los nuev@s se
interesen en su forma de operar.
Existe otra política que es implícita, por lo cual, no está definida tan estrictamente como la anterior, y
es la de mejorar continuamente, con el objetivo de sosegar las exigencias y cambios en el mercado
en el que actúa y para conseguir una mejor posición respecto a sus competidor@s.
Estrategias
Dentro de las estrategias existentes, se han destacado dos por considerarse más significativas, ellas
son:
Expandir el ámbito geográfico, creando varias sucursales en puntos estratégicos del país.
Añadir nuevos rubros a su actividad de comercialización.
Organigrama
A continuación, se expondrá un organigrama que fue confeccionado a partir de los datos
suministrados en la empresa, ya que no existía ninguno previamente predefinido.
8
Datos del entorno específico
L@s client@s con que cuenta son bastantes variad@s y cubren un amplio margen. L@s mism@s
son tanto provinciales, como nacionales, con diferentes tipos de poder adquisitivo.
Con respecto a sus proveedor@s, la empresa posee en algunos rubros diversas opciones de las
cuales puede elegir y comparar, pero en otros solo cuenta con pocas alternativas.
El DWH aportará un gran valor a la empresa; entre las principales ventajas e inconvenientes que
solucionará se pueden mencionar los siguientes:
9
Permitirá a l@s usuari@s tener una visión general del negocio.
Transformará datos operativos en información analítica, enfocada a la toma de decisiones.
Se podrán generar reportes dinámicos, ya que actualmente son estáticos y no ofrecen
ninguna facilidad de análisis.
Soportará la estrategia de la empresa.
Aportará a la mejora continua de la estructura de la empresa.
Procesos
Los principales procesos que se llevan a cabo son los siguientes:
Venta:
o Minorista: es la que se le realiza a l@s client@s particulares que se acercan hasta
la empresa para adquirir los productos que requieren.
o Mayorista: es la que se le efectúa a l@s grandes client@s, ya sea por medio de
comunicaciones telefónicas, o a través de visitas o reuniones.
Compra:
Debe tenerse en cuenta que las necesidades de la información que será recolectada, es la
que proveerá el soporte para desarrollar los pasos sucesivos, por lo cual, es muy
importante que se preste especial atención al relevamiento inicial.
La idea central es, que se formulen preguntas complejas sobre el negocio, que incluyan
variables de análisis que se consideren relevantes, ya que son estas las que
permitirán estudiar la información desde diferentes Perspectivas.
Un punto importante que debe tenerse muy en cuenta, es que la información debe estar
soportada de alguna manera por algún Data Source, ya que de otra forma, no se
podrá elaborar el DW.
Caso práctico
En las primeras entrevista se indagó a l@s usuari@s en busca de sus necesidades de
información, pero las mismas abarcaban casi todas las actividades de la empresa, por
lo cual se les pidió que escogieran el proceso que considerasen más importante en las
actividades diarias de la misma y que estuviese soportado de alguna manera por
algún Data Source.
Una vez seleccionado el proceso, se comenzó a identificar qué era lo que les interesaba
conocer acerca de este proceso y cuáles eran las variables o Perspectivas que deben
tenerse en cuenta en los análisis en pos de la toma de decisiones.
Se les preguntó cuáles eran, a su criterio, los Indicadores más representativos del proceso
de Ventas y cuál es el análisis que se desea realizar. La respuesta arrojó como
resultado que la cantidad de unidades vendidas y el monto total de ventas son los
números más relevantes en este proceso.
Luego se les preguntó cuáles serían las Perspectivas desde las cuales se consultarán
dichos Indicadores. Para simplificar esta tarea se les presentó una serie de ejemplos
concretos de otros casos similares.
Se desea conocer cuántas unidades de cada producto fueron vendidas a sus clientes en
un periodo determinado. O en otras palabras: Unidades vendidas de cada producto a
cada cliente en un tiempo determinado.
Se desea conocer cuál fue el monto total de ventas de productos a cada cliente en un
periodo determinado. O en otras palabras: Monto total de ventas de cada producto a
cada cliente en un tiempo determinado.
Debido a que la Dimensión Tiempo es un elemento fundamental en el DW, se hizo
hincapié en él. Además, se puso mucho énfasis en dejar en claro a l@s usuari@s, a
través de ejemplos prácticos, que es este componente el que permitirá tener varias
versiones de los datos a fin de realizar un correcto análisis posterior.
Para ello, se debe tener en cuenta que los Indicadores, son valores numéricos y
representan lo que se desea analizar concretamente, por ejemplo: saldos, importes,
promedios, cantidades, sumatorias, fórmulas, etc.
Caso práctico
A continuación, se analizarán las preguntas obtenidas en el paso anterior y se
detallarán cuáles son sus Indicadores y Perspectivas.
Unidades vendidas
Monto total de ventas
Y las Perspectivas de Análisis son:
Clientes
Productos
Tiempo
1.3. Modelo Conceptual
En esta etapa, se construirá un Modelo Conceptual a partir de los Indicadores y Perspectivas
obtenidas en el paso anterior.
A través de este Modelo, se podrá observar con claridad cuáles son los alcances del proyecto, para
luego poder trabajar sobre ellos. Además, al poseer un alto nivel de definición de los datos, permite
que pueda ser presentado ante l@s usuari@s y explicado con facilidad.
12
A la izquierda se colocan las Perspectivas seleccionadas, que serán unidas a
un óvalo central que representa y lleva el nombre de la Relación que existe entre ellas;
la Relación, constituye el proceso o área de estudio elegida;
de dicha Relación y entrelazadas con flechas, se desprenden hacia
la derecha los Indicadores.
El Modelo Conceptual permite de un solo vistazo y sin poseer demasiados conocimientos previos,
comprender cuáles serán los resultados que se obtendrán, cuáles serán las variables que se
utilizarán para analizarlos y cuál es la relación que existe entre ellos.
Caso Práctico
13
Como puede observarse, la Relación mediante la cual se unen las diferentes Perspectivas, para
obtener como resultado los Indicadores requeridos por l@s usuari@s, es precisamente Venta.
Hecho/s que lo componen, con su respectiva fórmula de cálculo. Por ejemplo: Hecho1 +
Hecho2
Función de agregación que se utilizará. Por ejemplo: SUM, AVG, COUNT, etc.
Caso práctico
Los Indicadores se calcularán de la siguiente manera:
14
2.2. Mapeo
En este paso debemos examinar los Data Sources e indentificar sus características
propias, y asegurarnos que los Data Sources disponibles contengan los datos requeridos.
Luego, debemos establecer cómo serán obtenidos los elementos que hemos definido
en el Modelo Conceptual, estableciendo de esta manera una correspondencia directa
entre elementos del Modelo Conceptual y Data Sources.
15
A continuación, se expondrá el Mapeo entre los dos Modelos:
SUM( cantidad )
2.3. Granularidad
Una vez que se han establecido el Mapeo con los Data Sources, se deben seleccionar
los campos que contendrá cada Perspectiva, ya que a través de estos se analizarán
los Indicadores.
Con respecto a la Perspectiva Tiempo, es muy importante definir los períodos mediante
los cuales se agregarán los datos. Sus campos posibles pueden ser: día de la semana,
quincena, mes, trimestres, semestre, año, etc.
Caso Práctico
De acuerdo al Mapeo realizado, se analizaron los campos que constituyen cada tabla a
la que se hace referencia a través de dos métodos diferentes. Primero se inspeccionó
la base de datos intentando intuir los significados de cada campo, y luego se consultó
quién es administrador del sistema para indagar acerca de una serie de aspectos que
NO estaban claros. En este caso, los nombres de los campos eran bastante explícitos,
pero aún así fue necesario investigarlos para evitar cualquier tipo de inconvenientes.
Con respecto a la Perspectiva Clientes, los datos disponibles son los siguientes:
Codigo: representa el código del cliente, este campo es calculado de acuerdo a una
combinación de las iniciales del nombre del cliente, el grupo al que pertenece y un
número incremental.
id_Sit_Fiscal: representa a través de una clave foránea el tipo de situación fiscal que
posee el cliente. Por ejemplo: Consumidor Final, Exento, Responsable No Inscripto,
Responsable Inscripto.
Eliminado: indica si el cliente fue eliminado o NO. Si fue eliminado, no figura en las
listas de clientes actuales. Es una baja lógica.
En la Perspectiva Productos, los datos que se pueden utilizar son los siguientes:
stock_min: stock mínimo del producto, se utiliza para emitir un alerta si el stock actual
está cerca de este valor o es menor.
stock_MAX: stock máximo del producto. Al igual que ”stock_min”, se utiliza para dar
alertas del nivel de stock actual.
codigo: representa el código del producto, este campo es calculado de acuerdo a una
combinación de las iniciales del nombre del producto, el rubro al que pertenece y un
número incremental.
Imagen: ruta a un archivo de tipo imagen que representa al producto. Este campo NO
es utilizado actualmente.
Año
Semestre
Cuatrimestre
Trimestre
Número de mes
Quincena
Semana
Número de día
Perspectiva Clientes:
Razon_Soc de la tabla Clientes. Ya que este hace referencia al nombre del cliente.
Perspectiva Tiempo:
Trimestre.
Año.
19
2.4. Modelo Conceptual Ampliado
En este paso, y con el fin de graficar los resultados obtenidos en los pasos anteriores, se
ampliará el Modelo Conceptual, colocando debajo de cada Perspectiva los campos
seleccionados y debajo de cada Indicador su respectiva fórmula de cálculo.
Caso Práctico
20
8. Paso 3. Modelo Lógico del DW
A continuación, se confeccionará el Modelo Lógico de la estructura del DW, teniendo como
base el Modelo Conceptual que ya ha sido creado. Un Modelo Lógico es la representación de
una estructura de datos, que puede procesarse y almacenarse en algún SGBD. Inicialmente,
se definirá el tipo de Modelo Lógico que se utilizará y luego se diseñarán las tablas de
Dimensiones y de Hechos con sus respectivas relaciones.
3.1. Tipología
Caso práctico
En este paso diseñaremos las tablas de Dimensiones que formarán parte del DW.
Para los tres tipos de Esquemas, cada Perspectiva definida en el Modelo Conceptual se constituirá
en una tabla de Dimensión. Para ello, a partir de cada Perspectiva y sus campos debe realizarse el
siguiente proceso:
Gráficamente:
Para los Esquemas Copo de nieve, cuando existan Jerarquías dentro de una tabla de Dimensión,
esta tabla deberá ser normalizada. Por ejemplo, se tomará como referencia la siguiente tabla de
Dimensión y su respectivas relaciones padre-hijo entre sus campos:
21
Entonces, al normalizar esta tabla se obtendrá:
Caso práctico
Perspectiva Clientes:
Perspectiva Productos:
22
Perspectiva Tiempo:
23
Esquemas Constelación
Las tablas de Hechos se deben confeccionar teniendo en cuenta el análisis de las preguntas
realizadas por l@s usuari@s en pasos anteriores y sus respectivos Indicadores y
Perspectivas.
Cada tabla de Hechos debe poseer un nombre que la identifique y su clave debe estar
formada por la combinación de las claves de las tablas de Dimensiones relacionadas.
Caso 1:
Si en dos o más preguntas de negocio figuran los mismos Indicadores pero con diferentes
Perspectivas de análisis, existirán tantas tablas de Hechos como preguntas cumplan esta condición.
Por ejemplo:
Entonces se obtendrá:
24
Caso 2:
Si en dos o más preguntas de negocio figuran diferentes Indicadores con diferentes Perspectivas de
análisis, existirán tantas tablas de Hechos como preguntas cumplan esta condición. Por ejemplo:
Entonces se obtendrá:
Caso 3:
Si el conjunto de preguntas de negocio cumplen con las condiciones de los dos puntos anteriores se
deberán unificar aquellos interrogantes que posean diferentes Indicadores pero iguales Perspectivas
de análisis, para luego reanudar el estudio de las preguntas. Por ejemplo:
Se unificarán en:
Caso práctico
Para los tres tipos de Esquemas, se realizarán las uniones correspondientes entre sus
tablas de Dimensiones y sus tablas de Hechos.
Caso práctico
26
9. Paso 4. Integración de Datos
Una vez construido el Modelo Lógico, se deberá proceder a poblarlo con datos, utilizando
técnicas de limpieza y calidad de datos, procesos ETL, etc.
Luego se definirán las reglas y políticas de actualización, así como también los procesos que
la llevarán a cabo.
Debemos en este paso realizar la Carga Inicial del DW, poblando el modelo construido en pasos
anteriores. Para lo cual debemos llevar adelante una serie de tareas básicas, tales como asegurar la
limpieza y calidad de los datos, procesos ETL, etc.
En muchos casos, las tareas antes mencionadas tienen una lógica compleja. Afortunadamente, en la
actualidad existen muchas herramientas de software que se pueden emplear y que nos facilitan en
gran parte el trabajo.
Se debe evitar que el DW sea cargado con Missing Values (valores faltantes), Outliers (datos
anómalos) o faltos de integridad; se deben establecer condiciones y restricciones para asegurar que
solo se utilicen los datos de interés.
Cuando se trabaja con un Esquema Constelación, hay que tener presente que varias tablas de
Dimensiones serán compartidas con diferentes tablas de Hechos. Puede darse el caso que algunas
restricciones aplicadas sobre una tabla de Dimensión para analizar una tabla de Hechos, se
contrapongan con otras restricciones o condiciones de análisis de otras tablas de Hechos.
Primero se cargarán los datos de las Dimensiones y luego los de las tablas de Hechos. En el caso en
que se esté utilizando un Esquema Copo de Nieve, cada vez que existan Jerarquías de Dimensiones,
se comenzarán cargando las tablas de Dimensiones del nivel más general al más detallado. Esto se
debe a la existencia de claves foráneas y se realiza para evitar problemas de rechazo de datos por
parte del SGBD.
Concretamente, en este paso se deberán registrar en detalle las acciones llevadas a cabo con los
diferentes Software de Integración de datos. Por ejemplo, es común que sistemas ETL trabajen
con Pasos y Relaciones, en donde cada Paso realiza una tarea en particular del Proceso ETL y
cada Relación indica hacia donde debe dirigirse el flujo de datos.
Se debe especificar:
Es decir, se partirá de lo más general y se irá a lo más específico, para obtener de esta manera una
visión general y detallada de todo el proceso.
Es importante tener presente, que al cargar los datos en las tablas de Hechos pueden utilizarse
preagregaciones con el mismo nivel de granularidad o con niveles menores.
Caso práctico
Para simplificar la aplicación del ejemplo, el caso práctico solo se centrará en los aspectos
más importantes del Proceso ETL, obviando entrar en detalle de cómo se realizan algunas
funciones y/o pasos.
27
Proceso ETL Principal
Obtener datos de Datasource: obtiene a través de una consulta SQL los datos del
Datasource necesarios para cargar la tabla de Dimensión dimClientes.
Se tomará como fuente de entrada la tabla Clientes del Data Source mencionado anteriormente.
28
Se consultó con l@s usuari@s y se averiguó que deseaban tener en cuenta solo aquellos clientes
que NO estén eliminados y que tengan su cuenta habilitada.
Los clientes eliminados son referenciados mediante el campo Eliminado; el valor 1 indica que
éste fue eliminado y el valor 0 que aún permanece vigente. Cuando se examinaron los
registros de la tabla, para muchos clientes NO había ningún valor asignado para este campo,
lo cual, según comunicó el encargado del sistema, se debía a que este campo se agregó
poco después de haberse creado la base de datos inicial, razón por la cual existían Missing
Values (valores faltantes). Además, comentó que en el sistema, si un cliente posee en el
campo Eliminado el valor 0 o un Missing Value (valor faltante), es considerado como vigente.
Con respecto a la cuenta habilitada, el campo del Data Source que le corresponde es
Cta_Habilitada; el valor 0 indica que su cuenta NO está habilitada y el valor 1 que su cuenta
sí está habilitada.
Se especificarán las tareas llevadas a cabo por Carga de Dimensión dimProductos. Este
Paso es un Contenedor de Pasos, así que incluye las siguientes tareas
29
Obtener datos de Datasource: obtiene a través de una consulta SQL los datos del Data
Source necesarios para cargar la Dimensión dimProductos.
En este caso, aunque existían productos eliminados, l@s usuari@s decidieron que esta
condición NO fuese tomada en cuenta, ya que había movimientos que hacían referencia
a productos con este estado.
Es necesario realizar una unión entre la tabla Productos y Marcas, por lo cual se debió
asegurar que ningún producto hiciera mención a alguna marca que NO existiese.
Para generar la tabla de Dimensión dimFechas (la cual debe estar presente en todo DW) existen
herramientas y utilidades de Software que proporcionan diversas opciones para su
confección.
30
2) Recorre una a una las fechas que se encuentran dentro de este intervalo.
3) Analiza cada fecha y realiza una serie de operaciones para crear los valores de los campos de
la tabla de la Dimensión dimFechas:
anio = YEAR(fecha)
A continuación, se especificarán las tareas llevadas a cabo por Carga de Tabla de Hechos
factVentas. Este Paso es un Contenedor de Pasos, así que incluye las siguientes tareas:
Obtener datos de Datasource: obtiene a través de una consulta SQL los datos del Data
Source necesarios para cargar la tabla de Hechos factVentas.
31
Para la confección de la tabla de Hechos, se tomaron como fuente las tablas Facturas_Ventas
y Detalles_Venta. Al igual que en las tablas de Dimensiones, se analizaron las condiciones
que deben cumplir los datos para considerarse de interés. En este caso, se trabajará
solamente con aquellas facturas que NO hayan sido anuladas.
Otro punto a tener en cuenta, es que la fecha se debe convertir al formato numérico
yyyymmdd.
Se decidió aplicar una preagregación a los Hechos que formarán parte de la tabla de Hechos;
es por esta razón que se utilizará la cláusula GROUP BY para agrupar todos los registros a
través de las claves primarias de esta tabla.
4.2. Actualización
Cuando se haya ejecutado la carga inicial del DW, se deben establecer las políticas y estrategias de
actualización periódica.
Determinar el proceso de limpieza de datos y calidad de datos, definir los procesos ETL, etc.,
que deberán realizarse para actualizar los datos del DW.
Especificar de forma general y detallada las acciones que deberá realizar cada Software.
Caso práctico
El proceso ETL para la actualización del DW es similar al de Carga Inicial, con las siguientes
diferencias:
Inicio: iniciará la ejecución de los pasos todos los días a las doce de la noche.
Establecer variables Fecha_Desde y Fecha_Hasta:
La variable Fecha_Desde obtendrá el valor resultante de restarle a la fecha actual treinta
días.
La variable Fecha_Hasta obtendrá el valor de la fecha actual.
Carga de Dimensión dimClientes: a la serie de pasos que realiza esta tarea, se le
antepondrá un nuevo paso que borrará los datos que contenga la Dimensión dimClientes.
Carga de Dimensión dimProductos: a la serie de pasos que realiza esta tarea, se le
antepondrá un nuevo paso que borrará los datos que contenga la Dimensión
dimProductos.
Carga de Dimensión dimFechas: en este paso, se establecerá la variable Fecha_Desde,
tomando la fecha del último registro cargado en la Dimensión dimFechas.
a la serie de pasos que realiza esta tarea, se le antepondrá un nuevo paso que borrará los datos
que contenga la tabla de Hechos factVentas en el intérvalo entre Fecha_Desde y
Fecha_Hasta.
33
10. Cubo Multidimensional
Continuando con el ejemplo, se creará un Cubo Multidimensional que estará basado en el modelo
lógico diseñado en el caso práctico de la metodología HEFESTO:
Pasos básicos
1) Se creará un Cubo Multidimensional llamado Cubo Hefesto:
3) Se creará un Dimensión para analizar l@s clientes. Su nombre será Dimensión Clientes.
34
4) Se creará un Dimensión para analizar los productos. Su nombre será Dimensión Productos.
35
6) Se creará un Indicador, llamado Unidades Vendidas que se calculará de la siguiente manera:
SUM(cantidad)
7) Se creará un Indicador, llamado Monto Total de Ventas que se calculará de la siguiente manera:
SUM(montoTotal)
36