Manual para Construir Un Data Warehouse
Manual para Construir Un Data Warehouse
Manual para Construir Un Data Warehouse
INDICE
1. ASPECTOS TEORICOS
PRESENTACION
Sin embargo, la tecnología data warehousing basa sus conceptos y diferencias entre
dos tipos fundamentales de sistemas de información en todas las organizaciones: los sistemas
técnico-operacionales y los sistemas de soporte de decisiones. Este último es la base de un
data warehouse.
Como indica su nombre, son los sistemas que ayudan a manejar la empresa con sus
operaciones cotidianas. Estos son los sistemas que operan sobre el "backbone" (columna
vertebral) de cualquier empresa o institución, entre las que se tiene sistemas de ingreso de
órdenes, inventario, fabricación, planilla y contabilidad, entre otros.
Por otra parte, hay otras funciones dentro de la empresa que tienen que ver con el
planeamiento, previsión y administración de la organización. Estas funciones son también
críticas para la supervivencia de la organización, especialmente en nuestro mundo de rápidos
cambios.
Las funciones como "planificación de marketing", "planeamiento de ingeniería" y
"análisis financiero", requieren, además, de sistemas de información que los soporte. Pero
estas funciones son diferentes de las operacionales y los tipos de sistemas y la información
requerida son también diferentes. Las funciones basadas en el conocimiento son los sistemas
de soporte de decisiones.
Estos sistemas están relacionados con el análisis de los datos y la toma de decisiones,
frecuentemente, decisiones importantes sobre cómo operará la empresa, ahora y en el futuro.
Estos sistemas no sólo tienen un enfoque diferente al de los operacionales, sino que, por lo
general, tienen un alcance diferente.
Las aplicaciones están relacionadas con el diseño de la base de datos y del proceso.
En data warehousing se enfoca el modelamiento de datos y el diseño de la base de datos. El
diseño del proceso (en su forma clásica) no es separado de este ambiente.
1.3.2 Integración
A través de los años, los diseñadores de las diferentes aplicaciones han tomado sus
propias decisiones sobre cómo se debería construir una aplicación. Los estilos y diseños
personalizados se muestran de muchas maneras.
No importa mucho cómo el GENERO llega al data warehouse. Probablemente "M" y "F"
sean tan buenas como cualquier otra representación. Lo importante es que sea de cualquier
fuente de donde venga, el GENERO debe llegar al data warehouse en un estado integrado
uniforme.
Por lo tanto, cuando el GENERO se carga en el data warehouse desde una aplicación,
donde ha sido representado en formato "M" y "F", los datos deben convertirse al formato del
data warehouse.
Medida de atributos. Los diseñadores de aplicaciones miden las unidades de medida
de las tuberías en una variedad de formas. Un diseñador almacena los datos de tuberías en
centímetros, otros en pulgadas, otros en millones de pies cúbicos por segundo y otros en
yardas.
Al dar medidas a los atributos, la transformación traduce las diversas unidades de
medida usadas en las diferentes bases de datos para transformarlas en una medida estándar
común.
Tal como se muestra en la figura, los puntos de integración afectan casi todos los
aspectos de diseño - las características físicas de los datos, la disyuntiva de tener más de una
de fuente de datos, el problema de estándares de denominación inconsistentes, formatos de
fecha inconsistentes y otros.
1° La más simple es que la información representa los datos sobre un horizonte largo
de tiempo - desde cinco a diez años. El horizonte de tiempo representado para el ambiente
operacional es mucho más corto - desde valores actuales hasta sesenta a noventa días.
Por supuesto, si los snapshots de los datos se han tomado incorrectamente, entonces
pueden ser cambiados. Asumiendo que los snapshots se han tomado adecuadamente, ellos no
son alterados una vez hechos. En algunos casos puede ser no ético, e incluso ilegal, alterar los
snapshots en el data warehouse. Los datos operacionales, siendo requeridos a partir del
momento de acceso, pueden actualizarse de acuerdo a la necesidad.
1.3.4 No Volátil
La información es útil sólo cuando es estable. Los datos operacionales cambian sobre
una base momento a momento. La perspectiva más grande, esencial para el análisis y la toma
de decisiones, requiere una base de datos estable.
La tecnología
permite realizar backup y recuperación, transacciones e integridad de los datos y la detección y
solución al estancamiento que es más complejo. En el data warehouse no es necesario el
procesamiento.
Se debe considerar lo siguiente: Los datos se filtran cuando pasan desde el ambiente
operacional al de depósito. Existe mucha data que nunca sale del ambiente operacional. Sólo
los datos que realmente se necesitan ingresarán al ambiente de data warehouse. El horizonte
de tiempo de los datos es muy diferente de un ambiente al otro. La información en el ambiente
operacional es más reciente con respecto a la del data warehouse. Desde la perspectiva de los
horizontes de tiempo únicos, hay poca superposición entre los ambientes operacional y de data
warehouse.
Los data warehouses tienen una estructura distinta. Hay niveles diferentes de
esquematización y detalle que delimitan el data warehouse. La estructura de un data
warehouse se muestra en la Figura N° 5.
En la figura, se muestran los diferentes componentes del data warehouse y son: Detalle
de datos actuales Detalle de datos antiguos Datos ligeramente resumidos Datos
completamente resumidos Meta data
Detalle de datos actuales.- En gran parte, el interés más importante radica en el detalle
de los datos actuales, debido a que:
Refleja las ocurrencias más recientes, las cuales son de gran interés Es voluminoso, ya
que se almacena al más bajo nivel de granularidad. Casi siempre se almacena en disco, el cual
es de fácil acceso, aunque su administración sea costosa y compleja. Detalle de datos
antiguos.- La data antigua es aquella que se almacena sobre alguna forma de almacenamiento
masivo. No es frecuentemente accesada y se almacena a un nivel de detalle, consistente con
los datos detallados actuales. Mientras no sea prioritario el almacenamiento en un medio de
almacenaje alterno, a causa del gran volumen de datos unido al acceso no frecuente de los
mismos, es poco usual utilizar el disco como medio de almacenamiento.
A fin de recordar los diferentes niveles de los datos encontrados en el data warehouse,
considere el ejemplo mostrado en la Figura N° 6.
El detalle de ventas antiguas son las que se encuentran antes de 1992. Todos los
detalles de ventas desde 1982 (o cuando el diseñador inició la colección de los archivos) son
almacenados en el nivel de detalle de datos más antiguo.
El detalle actual contiene información desde 1992 a 1993 (suponiendo que 1993 es el
año actual). En general, el detalle de ventas no se ubica en el nivel de detalle actual hasta que
haya pasado, por lo menos, veinticuatro horas desde que la información de ventas llegue a
estar disponible en el ambiente operacional.
En otras palabras, habría un retraso de tiempo de por lo menos veinticuatro horas, entre el
tiempo en que en el ambiente operacional se haya hecho un nuevo ingreso de la venta y el
momento cuando la información de la venta haya ingresado al data warehouse.
El detalle de las ventas son resumidas semanalmente por línea de subproducto y por
región, para producir un almacenamiento de datos ligeramente resumidos.
Una de las razones por las que el desarrollo de un data warehouse crece rápidamente,
es que realmente es una tecnología muy entendible. De hecho, data warehousing puede
representar mejor la estructura amplia de una empresa para administrar los datos
informacionales dentro de la organización. A fin de comprender cómo se relacionan todos los
componentes involucrados en una estrategia data warehousing, es esencial tener una
Arquitectura Data Warehouse.
Una Arquitectura Data Warehouse (Data Warehouse Architecture - DWA) es una forma
de representar la estructura total de datos, comunicación, procesamiento y presentación, que
existe para los usuarios finales que disponen de una computadora dentro de la empresa.
Esta dificultad en accesar a los datos operacionales es amplificada por el hecho que
muchos de estos sistemas tienen de 10 a 15 años de antigüedad. El tiempo de algunos de
estos sistemas significa que la tecnología de acceso a los datos disponible para obtener los
datos operacionales, es así mismo antigua.
Cada vez más, las organizaciones grandes adquieren datos adicionales desde bases
de datos externas. Esta información incluye tendencias demográficas, econométricas,
adquisitivas y competitivas (que pueden ser proporcionadas por Instituciones Oficiales - INEI).
Internet o también llamada "information superhighway" (supercarretera de la información)
provee el acceso a más recursos de datos todos los días.
El nivel de acceso a los datos de la arquitectura data warehouse está involucrado con
el nivel de acceso a la información para conversar en el nivel operacional. En la red mundial de
hoy, el lenguaje de datos común que ha surgido es SQL. Originalmente, SQL fue desarrollado
por IBM como un lenguaje de consulta, pero en los últimos veinte años ha llegado a ser el
estándar para el intercambio de datos.
Uno de los adelantos claves de los últimos años ha sido el desarrollo de una serie de
"filtros" de acceso a datos, tales como EDA/SQL para accesar a casi todo los Sistemas de
Gestión de Base de Datos (Data Base Management Systems - DBMSs) y sistemas de archivos
de datos, relacionales o no. Estos filtros permiten a las herramientas de acceso a la
información, accesar también a la data almacenada en sistemas de gestión de base de datos
que tienen veinte años de antigüedad.
El nivel de gestión de procesos tiene que ver con la programación de diversas tareas
que deben realizarse para construir y mantener el data warehouse y la información del
directorio de datos. Este nivel puede depender del alto nivel de control de trabajo para muchos
procesos (procedimientos) que deben ocurrir para mantener el data warehouse actualizado.
a) Sistemas Operacionales
Los datos administrados por los sistemas de aplicación operacionales son la fuente
principal de datos para el data warehouse.
Tomar los datos desde varias bases de datos operacionales y transformarlos en datos
requeridos para el depósito, se refiere a la transformación o a la integración de datos. Las
bases de datos operacionales, diseñadas para el soporte de varias aplicaciones de producción,
frecuentemente difieren en el formato.
Los mismos elementos de datos, si son usados por aplicaciones diferentes o
administrados por diferentes software DBMS, pueden definirse al usar nombres de elementos
inconsistentes, que tienen formatos inconsistentes y/o ser codificados de manera diferente.
Todas estas inconsistencias deben resolverse antes que los elementos de datos sean
almacenados en el data warehouse.
c) Metadata
Otro paso necesario es crear la metadata. La metadata (es decir, datos acerca de
datos) describe los contenidos del data warehouse. La metadata consiste de definiciones de los
elementos de datos en el depósito, sistema(s) del (os) elemento(s) fuente. Como la data, se
integra y transforma antes de ser almacenada en información similar.
El sistema de depósito ejecuta las consultas que se pasa a los datos por el software de
acceso a los datos del usuario. Aunque un usuario visualiza las consultas desde el punto de
vista de un GUI, las consultas típicamente se formulan como pedidos SQL, porque SQL es un
lenguaje universal y el estándar de hecho para el acceso a datos.
f) Datos Externos
Uno de los desafíos de mantener un data warehouse, es idear métodos para identificar
datos nuevos o modificados en las bases de datos operacionales. Algunas maneras para
identificar estos datos incluyen insertar fecha/tiempo en los registros de base de datos y
entonces crear copias de registros actualizados y copiar información de los registros de
transacción y/o base de datos diarias.
1.6.2 Metadata
Típicamente, la metadata incluye los siguientes ítems: Las estructuras de datos que
dan una visión de los datos al administrador de datos. Las definiciones del sistema de registro
desde el cual se construye el data warehouse. Las especificaciones de transformaciones de
datos que ocurren tal como la fuente de datos se replica al data warehouse. El modelo de datos
del data warehouse (es decir, los elementos de datos y sus relaciones). Un registro de cuando
los nuevos elementos de datos se agregan al data warehouse y cuando los elementos de datos
antiguos se eliminan o se resumen. Los niveles de sumarización, el método de sumarización y
las tablas de registros de su data warehouse.
Existe un flujo de datos normal y predecible dentro del data warehouse. La Figura N°
10 muestra ese flujo.
Los datos ingresan al data warehouse desde el ambiente operacional. (Hay pocas
excepciones a esta regla).
Hay pocas excepciones al flujo mostrado. Sin embargo, en general, para la mayoría de
datos encontrados en un data warehouse, el flujo de la información es como se ha explicado.
1.8 MEDIOS DE ALMACENAMIENTO PARA INFORMACION ANTIGUA
Los datos operacionales y los datos del data warehouse son accesados por usuarios
que usan los datos de maneras diferentes.
Los usuarios que accesan a los datos operacionales, comúnmente efectúan tareas
predefinidas que, generalmente requieren acceso a una sola base de datos de una aplicación.
Por el contrario, los usuarios que accesan al data warehouse, efectúan tareas que requieren
acceso a un conjunto de datos desde fuentes múltiples y frecuentemente no son predecibles.
Lo único que se conoce (si es modelada correctamente) es el conjunto inicial de datos que se
han establecido en el depósito.
Por lo general, los diferentes niveles de datos dentro del data warehouse reciben
diferentes usos. A más alto nivel de esquematización, se tiene mayor uso de los datos.
Hay una buena razón para mover una organización al paradigma sugerido en la figura,
la utilización del recurso. La data más resumida, permite capturar los datos en forma más
rápida y eficiente. Si en una tarea se encuentra que se hace mucho procesamiento a niveles de
detalle del data warehouse, entonces se consumirá muchos recursos de máquina. Es mejor
hacer el procesamiento a niveles más altos de esquematización como sea posible.
Para ilustrar cómo un data warehouse puede ayudar a una organización a mejorar sus
operaciones, se muestra un ejemplo de lo que es el desarrollo de actividades sin tener un data
warehouse.
Ejemplo:
Lo más interesante es que se ha pedido otro informe que continúe al primer informe
(debido a que las preguntas se originaron a partir del anterior). El hecho es, que ninguno de los
trabajos realizados hasta aquí (por ejemplo, diversos programas de extracción) se pueden usar
para los próximos o para cualquier reporte subsiguiente. Imagine el tiempo y el esfuerzo que se
ha desperdiciado por un enfoque anticuado. (Ver Figura N° 13).
Nuevamente, el punto importante aquí es que todo el trabajo desempeñado para hacer
este informe no afecta a otros reportes que pueden solicitarse es decir, todos ellos son
independientes y caros, desde el punto de vista de recursos y productividad.
Al crear un data warehouse y combinar todos los datos requeridos, se obtienen los
siguientes beneficios: Las inconsistencias de los datos se resuelven automáticamente cuando
los elementos de datos se cargan en el data warehouse, no manualmente, cada vez que se
prepara un reporte. Los errores que ocurrieron durante el proceso complejo de la preparación
del informe, se minimizan porque el proceso es ahora mucho más simple. Los elementos de
datos son fácilmente accesibles para otros usos, no sólo para un reporte particular. Se crea
una sola fuente.
Por lo mismo, los datos en los niveles más altos de detalle pueden ser reestructurados
fácilmente, mientras que el volumen de datos en los niveles más inferiores es tan grande, que
los datos no pueden ser fácilmente reestructurados.
Además, se observa que hay tablas del mismo tipo divididas a través del tiempo. Por
ejemplo, para el histórico de la fabricación de las piezas, hay muchas tablas separadas
físicamente, representando cada una un trimestre diferente. La estructura de los datos es
consistente con la tabla de la elaboración de las piezas, aunque físicamente hay muchas tablas
que lógicamente incluyen el histórico.
Para los diferentes tipos de tablas hay diferentes unidades de tiempo que físicamente
dividen las unidades de información. El histórico de fabricación está dividido por trimestres, el
histórico de la orden de piezas está dividido por años y el histórico de cliente es un archivo
único, no dividido por el tiempo.
Así también, las diferentes tablas son vinculadas por medio de un identificador común,
piezas u órdenes de piezas (la representación de la interrelación en el ambiente de depósito
toma una forma muy diferente al de otros ambientes, tal como el ambiente operacional).
Mientras que los componentes del data warehouse trabajan de acuerdo al modelo
descrito para casi todos los datos, hay pocas excepciones útiles que necesitan ser discutidas.
Una de ellas es la data resumida pública, que es la data que ha sido calculada fuera del
data warehouse pero es usada a través de la corporación. La data resumida pública se
almacena y administra en el data warehouse, aunque su cálculo se haya hecho fuera de él.
Es esencial involucrar tanto a los usuarios como a la gestión para asegurar que el data
warehouse contenga información que satisfaga los requerimientos de la empresa.
Una aplicación piloto de alcance limitado, con un reembolso medible para los usuarios
y la gestión, establecerá el data warehouse como una tecnología clave para la empresa. Estos
mismos criterios (alcance limitado, reembolso medible y beneficios claros para la empresa) se
aplican a cada fase de la implementación de un data warehouse.
La única manera para asegurar que el data warehouse reúna las necesidades de los
usuarios, es hacer el prototipo a lo largo del proceso de implementación y aún más allá, así
como agregar los nuevos datos y/o los modelos en forma permanente. El trabajo continuo con
los usuarios y la gestión es, nuevamente, la clave.
4. Implementación incremental
La retroalimentación de los usuarios ofrece una excelente oportunidad para publicar los
hechos exitosos dentro de una organización. La publicidad interna sobre cómo el data
warehouse ha ayudado a los usuarios a operar más efectivamente puede apoyar la
construcción del data warehouse a lo largo de una empresa.
1ra.: Establecer un ambiente "data warehouse virtual", el cual puede ser creado por :
1.Instalación de un conjunto de facilidades para acceso a datos, directorio de datos y
gestión de proceso.
2.Entrenamiento de usuarios finales.
3.Control de cómo se usan realmente las instalaciones del data warehouse.
4.Basados en el uso actual, crear un data warehouse físico para soportar los pedidos
de alta frecuencia.
2da.: Construir una copia de los datos operacionales desde un sistema operacional
único y posibilitar al data warehouse de una serie de herramientas de acceso a la información.
Una vez se tenga un consenso general sobre las necesidades, entonces se consiguen
los datos provenientes de los sistemas operacionales existentes a través de la empresa y/o
desde fuentes externas de datos y se cargan al data warehouse.
1ra. : Los usuarios de los data warehouses usualmente no conocen mucho sobre sus
requerimientos y necesidades como los usuarios operacionales.
A pesar que el diseño del data warehouse es diferente al usado en los diseños
tradicionales, no es menos importante. El hecho que los usuarios finales tengan dificultad en
definir lo que ellos necesitan, no lo hace menos necesario. En la práctica, los diseñadores de
data warehouses tienen que usar muchos "trucos" para ayudar a sus usuarios a "visualizar" sus
requerimientos. Por ello, son esenciales los prototipos de trabajo.
2.1.4 ESTRATEGIAS PARA LA GESTION DE UN DATA WAREHOUSE
Los data warehouses requieren una comercialización y gestión muy cuidadosa. Debe
considerarse lo siguiente:
1ra.: Un data warehouse es una inversión buena sólo si los usuarios finales realmente
pueden conseguir información vital más rápida y más barata de lo que obtienen con la
tecnología actual.
Como consecuencia, la gestión tiene que pensarse seriamente sobre cómo quieren sus
depósitos para su eficaz desempeño y cómo conseguirán llegar a los usuarios finales.
3ra.: La gestión debe comprender también que si se embarcan sobre un programa data
warehousing, se crearán nuevas demandas sobre sus sistemas operacionales, que son:
Demandas para mejorar datos Demandas para una data consistente Demandas para diferentes
tipos de datos, etc.
Las herramientas para capturar y explorar los datos al detalle evolucionan, así como
nuestra capacidad para encontrar las formas de explotar los datos recolectados.
En los últimos 10 años se han combinado dos factores para ayudar a la difusión de los
data warehouses. Ellos son:
Las organizaciones saben que los conocimientos inmersos en las masas de datos que
rutinariamente recogen sobre sus clientes, productos, operaciones y actividades comerciales,
contribuyen a reducir los costos de operación y aumentar las rentas, por no mencionar que es
más fácil la toma de decisiones estratégicas.
Al mismo tiempo, los Sistemas de Gestión de Base de Datos (Data Base Management
Systems - DBMS(s)) modernos, proporcionan mayor soporte para las estructuras de datos
complejas.
El alcance de un data warehouse puede ser tan amplio como toda la información
estratégica de la empresa desde su inicio, o puede ser tan limitado como un data warehouse
personal para un solo gerente durante un año.
En la práctica, en la amplitud del alcance, el mayor valor del data warehouse es para la
empresa y lo más caro y consumidor de tiempo es crear y mantenerlo. Como consecuencia de
ello, la mayoría de las organizaciones comienzan con data warehouses funcionales,
departamentales o divisionales y luego los expanden como usuarios que proveen
retroalimentación.
Hay tres niveles esenciales de redundancia de datos que las empresas deberían
considerar en sus opciones de data warehouse: Data warehouses "virtual" o "Point to Point"
Data warehouses "centrales" Data warehouses "distribuidos"
Una estrategia de data warehouses virtual, significa que los usuarios finales pueden
accesar a bases de datos operacionales directamente, usando cualquier herramienta que
posibilite "la red de acceso de datos".
Este enfoque provee flexibilidad así como también la cantidad mínima de datos
redundantes que deben cargarse y mantenerse. Además, se pueden colocar las cargas de
consulta no planificadas más grandes, sobre sistemas operacionales.
Los depósitos virtuales de datos proveen un punto de partida para que las
organizaciones determinen qué usuarios finales están buscando realmente.
El concepto de data warehouses centrales es el concepto inicial que se tiene del data
warehouse. Es una única base de datos física, que contiene todos los datos para un área
funcional específica, departamento, división o empresa.
Los data warehouses centrales se seleccionan por lo general donde hay una necesidad
común de los datos informáticos y un número grande de usuarios finales ya conectados a una
red o computadora central. Pueden contener datos para cualquier período específico de
tiempo. Comúnmente, contienen datos de sistemas operacionales múltiples.
Los data warehouses centrales son reales. Los datos almacenados en el data
warehouse son accesibles desde un lugar y deben cargarse y mantenerse sobre una base
regular. Normalmente se construyen alrededor de RDBMs avanzados o, en alguna forma, de
servidor de base de datos informático multidimensional.
Los data warehouses distribuidos son aquellos en los cuales ciertos componentes del
depósito se distribuyen a través de un número de bases de datos físicas diferentes.
Cada vez más, las organizaciones grandes están tomando decisiones a niveles más
inferiores de la organización y a la vez, llevando los datos que se necesitan para la toma de
decisiones a la red de área local (Local Area Network - LAN) o computadora local que sirve al
que toma decisiones.
De la misma forma que hay una gran cantidad de maneras para organizar un data
warehouse, es importante notar que también hay una gama cada vez más amplia de usuarios
finales.
Un data warehouse está integrado por un servidor de hardware y los DBMS que
conforman el depósito. Del lado del hardware, se debe combinar la configuración de
plataformas de los servidores, mientras se decide cómo aprovechar los saltos casi constantes
de la potencia del procesador. Del lado del software, la complejidad y el alto costo de los
DBMSes fuerzan a tomar decisiones drásticas y balances comparativos inevitables, con
respecto a la integración, requerimientos de soporte, desempeño, eficiencia y confiabilidad.
Para conseguir que la implementación del depósito tenga un inicio exitoso, se necesita
enfocar hacia tres bloques claves de construcción: Arquitectura total del depósito Arquitecturas
del servidor Sistemas de Gestión de Base de Datos
El desarrollo del data warehouse comienza con la estructura lógica y física de la base
de datos del depósito más los servicios requeridos para operar y mantenerlo. Esta elección
conduce a la selección de otros dos ítems fundamentales: el servidor de hardware y el DBMS.
1° Un plan para almacenar los datos de su compañía, que podría obtenerse desde
fuentes múltiples internas y externas, es consolidar la base de datos en un data warehouse
integrado. El enfoque consolidado proporciona eficiencia tanto en la potencia de procesamiento
como en los costos de soporte. (Ver Figura N° 16).
2° La arquitectura global distribuye información por función, con datos financieros sobre
un servidor en un sitio, los datos de comercialización en otro y los datos de fabricación en un
tercer lugar. (Ver Figura N° 17)
3° Una arquitectura por niveles almacena datos altamente resumidos sobre una
estación de trabajo del usuario, con resúmenes más detallados en un segundo servidor y la
información más detallada en un tercero.
La estación de trabajo del primer nivel maneja la mayoría de los pedidos para los datos,
con pocos pedidos que pasan sucesivamente a los niveles 2 y 3 para la resolución.
Los servidores de un sólo procesador son los más fáciles de administrar, pero ofrecen
limitada potencia de procesamiento y escalabilidad. Además, un servidor sólo presenta un
único punto de falla, limitando la disponibilidad garantizada del depósito.
2° Multiprocesamiento simétrico
Las máquinas de multiprocesamiento simétrico (Symmetric MultiProcessing - SMP)
aumentan mediante la adición de procesadores que comparten la memoria interna de los
servidores y los dispositivos de almacenamiento de disco.
Se puede adquirir la mayoría de SMP en configuraciones mínimas (es decir, con dos
procesadores) y levantar cuando es necesario, justificando el crecimiento con las necesidades
de procesamiento. La escalabilidad de una máquina SMP alcanza su límite en el número
máximo de procesadores soportados por los mecanismos de conexión (es decir, el backplane y
bus compartido).
Esta arquitectura es ideal para la búsqueda de grandes bases de datos. Sin embargo,
el DBMS que se selecciona debe ser uno que ofrezca una versión paralela. Y aún entonces, se
requiere un diseño y afinamiento esenciales para obtener una óptima distribución de los datos y
prevenir "hot spots" o "data skew" (donde una cantidad desproporcionada del procesamiento es
cambiada a un nodo de procesamiento, debido a la partición de los datos bajo su control).
NUMA crea una sola gran máquina SMP al conectar múltiples nodos SMP en un solo
(aunque físicamente distribuida) banco de memoria y un ejemplo único de OS. NUMA facilita el
enfoque SMP para obtener los beneficios de performance de las grandes máquinas MPP (con
32 o más procesadores), mientras se mantiene las ventajas de gestión y simplicidad de un
ambiente SMP estándar.
Lo más importante de todo, es que existen DBMS y aplicaciones que pueden moverse
desde un solo procesador o plataforma SMP a NUMA, sin modificaciones.
Los RDBMS son muy flexibles cuando se usan con una estructura de datos
normalizada. En una base de datos normalizada, las estructuras de datos son no redundantes
y representan las entidades básicas y las relaciones descritas por los datos (por ejemplo
productos, comercio y transacción de ventas). Pero un procesamiento analítico en línea (OLAP)
típico de consultas que involucra varias estructuras, requiere varias operaciones de unión para
colocar los datos juntos.
Para el soporte de depósitos a gran escala y para mejorar el interés hacia las
aplicaciones OLAP, los proveedores han añadido nuevas características al RDBMS tradicional.
Estas, también llamadas características super relacionales, incluyen el soporte para hardware
de base de datos especializada, tales como la máquina de base de datos Teradata.
La estructura de los datos en una base de datos relacional tradicional, facilita consultas
y análisis a lo largo de dimensiones diferentes que han llegado a ser comunes. Estos
esquemas podrían usar tablas múltiples e indicadores para simular una estructura
multidimensional. Algunos productos DBMS, tales como Essbase y Gentium, implementan
técnicas de almacenamiento y operadores que soportan estructuras de datos
multidimensionales.
Por su enfoque en los valores de datos codificados, la mayor parte de los sistemas de
base de datos pueden acomodar estos tipos de datos, sólo con extensiones basadas en cierta
referencias, tales como indicadores de archivos que contienen los objetos. Muchos RDBMS
almacenan los datos complejos como objetos grandes binarios (Binary Large Objects - BLOBs).
En este formato, los objetos no pueden ser indexados, clasificados, o buscados por el servidor.
Los DBMS relacional-objeto, de otro lado, almacenan los datos complejos como objetos
nativos y pueden soportar las grandes estructuras de datos encontradas en un ambiente
orientado a objetos. Estos sistemas de base de datos naturalmente acomodan no sólo tipos de
datos especiales sino también los métodos de procesamiento que son únicos para cada uno de
ellos.
Los modelos de uso de los data warehouses son también un factor. Las consultas y
vistas de reportes preestructuradas frecuentemente satisfacen a los usuarios informáticos,
mientras que hay menos demandas sobre el DBMS y la potencia de procesamiento del
servidor. El análisis complejo, que es típico de los ambientes de decisión-soporte, requiere más
poder y flexibilidad de todos los componentes del servidor. Las búsquedas masivas de grandes
data warehouses favorecen el paralelismo en el DBMS y el servidor.
El valor de la data fresca requerida indica cuán importante es para el data warehouse
renovar y cambiar los datos. Los grandes volúmenes de datos que se refrescan a intervalos
frecuentes, favorecen una arquitectura físicamente centralizada para soportar una captura de
datos eficiente y minimizar el tiempo de transporte de los datos.
Un perfil de usuario debería identificar quiénes son los usuarios de su data warehouse,
dónde se ubican y cuántos necesita soportar. La información sobre cómo cada grupo espera
usar los data warehouses, ayudará a analizar los diversos estilos de uso.
Conocer la ubicación física de sus usuarios ayudará a determinar cómo y a qué área
necesita distribuir el data warehouse. Una arquitectura por niveles podría usar servidores en el
lugar de las redes de área local. O puede necesitar un enfoque centralizado para soportar a los
trabajadores que se movilizan y que trabajan en el depósito desde sus laptops.
Como su depósito evoluciona y los datos que contiene llegan a ser más accesible, los
empleados externos al depósito podrían descubrir también el valor de sus datos. Al enlazar su
data warehouse a otros sistemas (tanto internos como externos a la organización), se puede
compartir información con otras entidades comerciales con poco o sin desarrollo. Los mensajes
E-mail, servidores Web y conexiones Intranet/Internet, pueden entregar listas por niveles a sus
proveedores o según su condición, a sus socios de negocio.
Como los data warehouses continúan creciendo en sofisticación y uso, los datos
acumulados dentro de una empresa llegarán a ser más organizados, más interconectados, más
accesibles y, en general, más disponibles a más empleados.
4° Validar los datos que usa la aplicación del data warehouse para realizar las
consultas de prueba.
En la práctica, se tendría que realizar múltiples pasos como parte de una operación
única o cuando use una sola herramienta. En particular, limpiar la data y asegurar la integridad
referencial son procesos interdependientes.
Las herramientas comerciales pueden ayudar en cada uno de estos pasos. Sin
embargo, es posible escribir sus propios programas para hacer el mismo trabajo.
Cada vez que se carga un nuevo conjunto de datos, la limpieza de datos comúnmente
constituye cerca del 25 por ciento de lo que puede ser un proceso de cuatro semanas.
Ejemplo 1:
La ventaja de ésto es que CompuCom ahora posee estas rutinas y puede usarlas en
otras aplicaciones.
Los usuarios ayudaron a definir los requerimientos de limpieza de datos, ya que son
ellos los que mejor conocen los datos y pueden informar sobre qué tipo de datos sucios deben
salir y cómo limpiarlos.
La compañía no usa una herramienta de limpieza comercial porque gran parte de sus
datos está en la misma forma básica. Así, la compañía puede fácilmente usar de nuevo las
rutinas escritas.
Ejemplo 2:
Ohio Casualty Insurance (Hamilton, OH) experimentó por dos años con la limpieza in-
house, usando programas COBOL, antes de usar la herramienta comercial, Integrity Data
Reengineering Tool de Vality Technology.
Sin embargo, es difícil tratar de programar para todas las situaciones en que se puede
caer. Después de tomar un año en desarrollar programas genéricos de extraer/
transformar/cargar, se necesitó otro año, para programar en Cobol y editar el manual, para
conseguir los datos de las pólizas correctos para el depósito.
Ejemplo 3:
La agencia de servicios prometió identificar las relaciones entre los diversos grupos
dentro de las compañías clientes. Además, la agencia proveería información industrial para las
organizaciones de clientes, tales como el número de empleados, las rentas y el crecimiento, las
cuales serían valiosas para las ventas de Intel. Desafortunadamente, la agencia de servicio no
hizo un buen trabajo de identificar las relaciones entre los clientes, lo que dio como resultado el
hecho de que algunas personas estuvieron asociadas con compañías equivocadas.
Intel tomó la cinta de la agencia de servicio y luego corrió los datos con el paquete de
análisis estadístico SAS, del Instituto SAS, para identificar y corregir los problemas con las
relaciones con un tope de 10 agrupaciones (es decir, las primeras compañías en una relación
jerárquica única).
La compañía luego usó las herramientas de base de datos Oracle para propiciar el
análisis y la limpieza. Ya que la nueva data llegaba todo el tiempo, algunas de las rutinas de
limpieza de Oracle fueron implementadas como procedimientos almacenados para que puedan
correr automáticamente contra la nueva data.
Intel aún persiste en encargar las tareas de la limpieza de los datos. Sin embargo, la
compañía planea mantener la limpieza in-house hasta que encuentre una agencia de servicio
aceptable.
Ejemplo 4:
CrediCard (São Paulo, Brasil), un gran emisor de tarjetas de crédito en Sudamérica,
consiguió herramientas de limpieza y mejora de datos como parte de la implementación de un
data warehouse por Market Knowledge, una filial de Equifax.
Además, ellos pueden mejorar los datos al realizar operaciones como corrección de
cantidades monetarias por la inflación y la devaluación, creando un campo de edad virtual
basado en la fecha de nacimiento de una persona y añadiendo datos de censos a los registros
entrantes. Estas rutinas (por ejemplo, corrección de inflación) favorecen particularmente a los
requerimientos brasileños.
Ellos además están diseñados para el uso del personal de comercialización no-técnico.
Las rutinas de limpieza de los datos, las cuales son programadas como comandos SQL,
empleó sólo alrededor de tres personas por semana para crearlas - una porción mínima de un
proyecto de 2 años y medio.
Las herramientas para mejorar los datos, más automatizadas y más inteligentes,
representan alrededor de $ 120,000 del total del proyecto de $ 840,000.
Preparación de los datos para cargarlos en una base de datos del depósito,
Administración de la metadata.
Estos productos cuestan desde $ 75,000 a más de $ 200,000, dependiendo del tamaño
y la complejidad del proyecto y pueden también limpiar, transformar y validar.
Ejemplo 5:
Sin embargo, tienen una buena oportunidad de que las herramientas mencionadas
anteriormente de Prism y Carleton no limpien todo lo que se necesite. Ellos pueden encontrar
anomalías comunes que pueden manejarse mediante simples tablas de búsqueda de
información (por ejemplo, reconocer que Avenida y Av. representan la misma información),
pero podrían no salir exitosos con irregularidades más importantes e impredecibles, porque
estas herramientas no están diseñadas para hacer tipos de limpieza de gran intensidad.
Por ejemplo:
¿Desea usted tratar una serie de concesiones de Martha's Fried Chicken como un
cliente único con direcciones múltiples?
Para los propósitos del data warehouse, ¿tiene sentido sustituir una dirección central
única para las diferentes direcciones de las concesiones?
O, ¿le gustaría tratar las ubicaciones de las concesiones como clientes completamente
diferentes?
Esta decisión determina cómo se agrega o consolida estos registros y si se trata las
diferentes direcciones de Martha's Fried Chicken como excepciones.
Integrity incide exclusivamente sobre la limpieza de los datos, comenzando desde los
archivos básicos. No extrae los datos desde bases de datos operacionales, carga los datos en
la base de datos del depósito, duplica y sincroniza los datos o administra la metadata.
Por ello, además de costar $ 250,000, Integrity podría requerir también una herramienta
como Warehouse Manager o Passport. Sin embargo, pueden ser suficientes los utilitarios
disponibles con la base de datos para una simple extracción/carga.
El modelo lógico de datos debe tener un alcance más alto y cubrir todas las áreas de
interés, así como los procesos más estratégicos de cada una de ellas.
Ejemplo: Puede cubrir las áreas de mercadeo, crédito y comercialización y los procesos
de segmentación, scoring para retención, scoring para crédito y gestión de clientes, productos y
canales de ventas.
Un proyecto base entrega capacidad genérica de análisis a todos los usuarios que
tengan acceso al data warehouse, pero no tiene, entre sus funcionalidades, la solución de un
problema específico o el soporte especializado de un proceso específico.
Un proyecto base es más económico y fácil de acabar que uno especializado, más
costoso y difícil de terminar.
1° Definir el mejor diseño físico para el modelo de datos. El diseño físico debe estar
orientado a generar buen rendimiento en el procesamiento de consultas, a diferencia del
modelo lógico que está orientado al usuario y a la facilidad de consulta.
2° Definir los procesos de extracción, filtro, transformación de información y carga de
datos que se deben implementar para poblar ese modelo de datos.
Cuando se evalúan los costos, el usuario del data warehouse puede no tener el
contenido de los costos en mente, pero las preguntas mínimas que puede comenzar a hacerse
son las siguientes:
¿Qué clases de costos excedieron el presupuesto en más del 10% en cada uno de los
12 meses pasados?
¿Se aumentaron los presupuestos en más de 5% para cualquier área dentro de los
últimos 18 meses?
¿Cómo tener márgenes de operación sobre los dos últimos años en cada área de
negocio? Donde han disminuido los márgenes, ¿se han incrementado los costos?
Con frecuencia, los aspectos realmente importantes identificados por una gestión
mayor, tienen un valor agregado, en el que ellos saben si tuvieron la información que estaban
buscando, lo que significaría una mejora de (por ejemplo) las ventas en 0.5% a 1% - que, si su
operación estuvo por los billones de dólares en un año, puede resultar en cientos de millones
de dólares. En algunos casos, el costo del depósito inicial se ha recobrado en un período de 6
a 8 meses.
Al hacerse preguntas de este tipo, los usuarios comienzan a identificar las áreas en la
que los costos han aumentado o disminuido significativamente y pueden evaluar cada una de
estas áreas con más detalle.
Caso práctico:
Costos iniciales
Costos en procesamiento
Aplicaciones y herramientas de acceso para los usuarios finales Decisiones con mayor
información Toma de decisiones más rápida Capacidad de soporte a la información
organizacional.
a) Para la Empresa
El data warehouse hace lo posible por aprovechar el valor potencial enorme de los
recursos de información de la empresa y volver ese valor potencial en valor verdadero.
Los usuarios del data warehouse pueden accesar a una riqueza de información
multidimensional, presentado coherentemente como una fuente única confiable y disponible a
ellos por medio de sus estaciones de trabajo.
Los usuarios pueden usar sus herramientas familiares, hojas de cálculo, procesadores
de textos y software de análisis de datos y análisis estadístico para manipular y evaluar la
información obtenida desde el data warehouse.
La pugna constante por resolver las necesidades de usuarios que piden acceso a los
datos operacionales, finaliza con la implementación de un data warehouse. La mayoría de los
usuarios no necesita accesar más a los datos actuales, porque ellos tienen información más útil
disponible desde el data warehouse.
En este caso se necesita software especializado que permita capturar los datos
relevantes en forma rápida y pueda verse a través de diferentes dimensiones de los datos. El
software no debería limitarse únicamente al acceso a los datos, si no también, al análisis
significativo de los datos. En efecto, transformar los datos de la información cruda o no
procesada, en información útil para la empresa.
Más que aprender SQL o escribir un programa para accesar a la información de una
base de datos, las herramientas de consulta al igual que la mayoría de herramientas visuales,
le permiten apuntar y dar un click a los menús y botones para especificar los elementos de
datos, condiciones, criterios de agrupación y otros atributos de una solicitud de información.
Para hacer consultas más accesibles a usuarios no-técnicos, los productos tales como
Crystal Reports de Seagate, Impromptu de Cognos, Reportsmith de Borland, Intelligent Query
de IQ Software, Esperant de Software AG y GQL de Andyne, ofrecen interfases gráficas para
seleccionar, arrastrar y pegar.
Lo más avanzado de estos productos lo orientará hasta las consultas que tienen
sintaxis mala o que devuelven resultados imprevistos. El acceso a los datos han mejorado
también con las nuevas versiones de estos productos y los vendedores ya instalan drivers
estándares tales como ODBC y 32-bit nativo, hasta fuentes de datos comerciales.
Una vez que se han creado las pantallas SQL, puede necesitar desarrollar un conjunto
de consultas y reportes estándares, aunque algunos productos ofrecen librerías de plantillas
prediseñadas y reportes predefinidos que se pueden modificar rápidamente.
Los generadores de reporte tienen sus limitaciones cuando los usuarios finales
necesitan más que una sola, una vista estática de los datos, que no sean sujeto de otras
manipulaciones. Para estos usuarios, las herramientas del procesamiento analítico en línea
(OLAP - On Line Analytical Processing), proveen capacidades "Slide y Dice" que contestaría
"¿qué sucedió?" al analizar por qué los resultados están como están.
Los proveedores como Arbor, vieron ésto como una oportunidad para crear de facto
normas para editar MDDB APIs, propiciando herramientas terceristas y estableciendo
asociaciones estratégicas.
Este proceso puede ser complejo y consumidor de tiempo pero, nuevamente, los
proveedores están investigando la forma de solucionarlos. Las herramientas de extracción de
datos y otras automatizan el proceso, trazando campos relacionales en la estructura
multidimensional y desarrollando el MDDB sobre la marcha.
Los defensores de ROLAP argumentan que se usan estándares abiertos (SQL) y que
se esquematiza (nivel de detalle) los datos para hacerlos más fácilmente accesibles. Por otra
parte, argumentan que una estructura multidimensional nativa logra mejor performance y
flexibilidad, una vez que se desarrolla el almacén de los datos.
Lo bueno es que estas tecnologías evolucionan rápidamente y/o pueden proveer una
pronta solución OLAP. Algunos productos ejemplos son PowerPlay de Cognos, Business
Objects con el software del mismo nombre, Brio Query de Brio Technology y una serie de DSS
Agent/DSS Server de MicroStrategy.
Los usuarios de estos productos deben decidir sobre si los datos del procesamiento
analítico en línea, deberían almacenarse en bases de datos multidimensionales especialmente
diseñadas o en bases de datos relacionales. Esto depende de las necesidades de la
organización.
El precio de esta facilidad de uso es que por lo general existen algunas limitaciones
sobre las capacidades analíticas disponibles con el sistema de información ejecutivo. Además,
muchas de las herramientas de consulta/reporte y OLAP/multidimensional, pueden usarse para
desarrollar sistemas de información ejecutivos.
1. El libro electrónico es una versión en línea, electrónica, contraparte del papel que
muchos ejecutivos usan en reuniones con el personal. Las diapositivas electrónicas presentan
una visión concreta de una iniciativa organizacional o quizás los datos para dar a conocer la
situación actual de un proyecto importante.
Los reportes del centro de comando pueden ser accesados diariamente o con más
frecuencia, si la información cambia constantemente o sólo cuando se garantiza las
excepciones. Algunos productos generan alarmas cuando ocurren las excepciones
especificadas.
Cuando sea apropiado, cada diapositiva del libro electrónico o pantalla del centro de
comando, debería permitir al ejecutivo recibir información adicional si lo desea (y si está
disponible). A diferencia del modelo OLAP, donde el incremento de niveles de información se
dan a conocer tal como el analista manipula los datos, un ejecutivo espera una descripción
global. No deberían escudriñar para obtener respuestas.
Por ello, cuando los ejecutivos piden más información desde las diapositivas del libro
electrónico o de las pantallas del centro de comandos, la presentación debería ser
cuidadosamente elaborada para presentar principalmente información adicional amplificada. El
ejecutivo debe ser capaz de pasar cada punto para "más información", sin perder alguna
información crítica.
Las herramientas Mining usan algunas de las técnicas de computación más avanzadas
como: redes neurales detección de desviación modelamiento predictivo y programación
genética
El Intelligent Miner de IBM para AIX soporta sofisticadas técnicas mining, así como las
funciones de preparación de los datos para extraer información desde bases de datos Oracle o
Sybase y cargarlos en DB2 para mining. Con su opción Data Mine para el motor Red Brick
Warehouse 5.0, Red Brick integra la funcionalidad de un data mining y la arquitectura de
almacenamiento.
Estos software proporcionan procesamiento en paralelo y/o algo fuera de los aspectos
ordinarios, que puedan ser especialmente interesantes para la gente de desarrollo de data
warehouse y de sistemas de soporte de decisiones.
Hay algunas reglas obvias a seguir cuando se eligen herramientas de análisis. Las
herramientas se combinan según las necesidades de los usuarios finales, capacidad técnica
empresarial y la fuente de datos existente.