ANALISIS Y DISEÑO DE SISTEMAS

INVESTIGACION EN INTERNET

PROFESOR: YAROS PEREZ

REALIZADO POR: ING. MIGUEL ALVAREZ

 

TEMA: ALMACENES DE BASES DE DATOS (Data Warehouses)

 

Subtema: Conceptos e Implementacion De Data Warehouses

 

Resumen

Preguntas

Infografia

 

Introducción

 

El  concepto de DWH está teniendo una gran aplicación en la actualidad para el desarrollo de las empresas, como almacén de datos. Sus objetivos incluyen la reducción de los costes de almacenamiento y una mayor velocidad de respuesta frente a las consultas de los usuarios. Estos pueden ahora analizar y realizar preguntas sobre años, más que sobre meses de información.

 

Para diseñar una buena arquitectura de DWH es necesario como primer paso conocer bien los requerimientos del negocio y hacer un estudio profundo de las fuentes externas que van a suministrar los datos. Además, hacer un buen diseño del área de transformación de datos, cuáles son las transformaciones que se van a realizar y cómo se va a implementar el modelo dimensional con sus tablas de hechos y de dimensiones es el segundo paso a seguir.

 

No se tiene un enfoque único para construir un data warehouse que se adapte a las necesidades de las empresas, debido a que las necesidades de cada una de ellas son diferentes, al igual que su contexto.

 

Además, como la tecnología data warehousing va evolucionando, se aprende cada vez más y más sobre el desarrollo de data warehouses, que resulta en que el único enfoque práctico para al almacenamiento de datos es la evolución de uno mismo.

 

 

 

 

 

 

Data Warehouse

 

Un DWH es un espacio en el cual es posible almacenar datos que contienen información estratégica; hacer Data Warehousing es el proceso de consolidar esta información. Es una arquitectura que debe servir como infraestructra para una solución completa de inteligencia de negocios. Es una base de datos que contiene datos de toda la compañía, datos históricos de todas las fuentes de datos, datos consolidados y consistentes, datos estructurados y listos para distribuir y realizar consultas en ellos.

 

“ Un DWH es un sistema de datos orientado al sujeto, integrado, de tiempo variante y no volatil que da soporte a las necesidades de toma de decisiones por parte de la dirección”

Hill Inmon (llamado el padre del DWH)

 

Data Warehousing

 

Es un proceso que extrae y transforma datos, transforma datos en un formato útil para ser ubicados dentro de la base de datos,

transformar datos en conocimiento, usar herramientas para construir y manejar el Data warehouse.

 

Diferencias entre Bases Operacionales y DWH

 

Operacional

Data Warehouse

Predomina la actualización

Predomina la consulta

La actividad más importante es de tipo operativo (día a día)

La actividad más importante es el análisis y la decisión estratégica

Predomina el proceso puntual

Predomina el proceso masivo

Estructura relacional

Visión multidimensional

Datos Operacionales

Datos orientados negocio

Orientado a la aplicación

Orientado al sujeto

Disponibilidad información actual

Disponiblidad información ctual+histórico

Información detallada (datos desagregados)

Información detallada + resumida

Usuarios de perfiles medios o bajos

Usuarios de perfiles altos

Cambia continuamente

Estable

 

Caracteristicas del DWH

 

Diseñadas para tomar decisiones

Procesos Analíticos en línea (OLAP)

Diferentes niveles de análisis

Permiten Drillin-up y Drilling-Down

Encontrar relaciones y patrones entre los datos

Diseñada al rededor de los conceptos del negocio de la empresa (Cliente, Geografía, Producto)

 

Orientado al tema: La información se clasifica en base a los aspectos que son de interés para la empresa.

 

Integrado: En convenciones de nombres consistentes, en la medida uniforme de variables, en la codificación de estructuras consistentes, en atributos físicos de los datos consistentes, fuentes múltiples y otros.

 

De tiempo variante: Como la información en el data warehouse es solicitada en cualquier momento, los datos encontrados en el depósito se llaman de tiempo variante, lo cual se representan en datos historicos no existentes en ambientes operacionales o transaccionales.

 

No volátil: En ambientes operacionales la actualización (insertar, borrar y modificar) se hace sobre una base de registro por registro, en el data warehouse es mucho más simple. Hay dos únicos tipos de operaciones: la carga inicial de datos y el acceso a los mismos. No hay actualización de datos (en el sentido general de actualización) en el depósito, como una parte normal de procesamiento.

 

 

Estructura del Data Warehouse

 

Detalle de datos actuales: 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 su acceso 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.

 

Datos ligeramente resumidos: La data ligeramente resumida es aquella que proviene desde un bajo nivel de detalle encontrado al nivel de detalle actual. Este nivel del data warehouse casi siempre se almacena en disco. Los puntos en los que se basa el diseñador para construirlo son: que la unidad de tiempo se encuentre sobre la esquematización hecha y qué contenidos (atributos) tendrá la data ligeramente resumida.

 

Metadata: El componente final del data warehouse es el de la metadata. De muchas maneras la metadata se sitúa en una dimensión diferente al de otros datos del data warehouse, debido a que su contenido no es tomado directamente desde el ambiente operacional y es usada como un directorio para ayudar al analista a ubicar los contenidos del data warehouse, una guía para la trazabilidad de los datos, de cómo se transforma, del ambiente operacional al de data warehouse, una guía de los algoritmos usados para la esquematización entre el detalle de datos actual, con los datos ligeramente resumidos y éstos, con los datos completamente resumidos, etc.

 

 

A continuación ilustramos la estructura del DWH:

 

 

Figura 5

 

 

Arquitectura del DWH

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.

 

Base de datos operacional / Nivel de base de datos externo: Los sistemas operacionales procesan datos para apoyar las necesidades operacionales críticas. Para hacer eso, se han creado las bases de datos operacionales históricas que proveen una estructura de procesamiento eficiente, para un número relativamente pequeño de transacciones comerciales bien definidas.

 

Nivel de acceso a la información: Es el nivel del que el usuario final se encarga directamente. Representa las herramientas que el usuario final normalmente usa día a día. Por ejemplo: EXCEL, LOTUS 1-2-3, FOCUS, ACCESS, SAS, etc. Este nivel también incluye el hardware y software involucrados en mostrar información en pantalla y emitir reportes de impresión, hojas de cálculo, gráficos y diagramas para el análisis y presentación.

 

Nivel de acceso a los datos: 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. El nivel de acceso a los datos entonces es responsable de la interfaces entre las herramientas de acceso a la información y las bases de datos operacionales.

 

Nivel de Directorio de Datos (Metadata): A fin de proveer el acceso a los datos universales, es absolutamente necesario mantener alguna forma de directorio de datos o repositorio de la información metadata. La metadata es la información alrededor de los datos dentro de la empresa. Las descripciones de registro en un programa COBOL son metadata. También lo son las sentencias DIMENSION en un programa FORTRAN o las sentencias a crear en SQL.

 

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.

 

Nivel de Mensaje de la Aplicación: Tiene que ver con el transporte de información alrededor de la red de la empresa. El mensaje de aplicación se refiere también como "subproducto", pero puede involucrar sólo protocolos de red. Puede usarse por ejemplo, para aislar aplicaciones operacionales o estratégicas a partir del formato de datos exacto, recolectar transacciones o los mensajes y entregarlos a una ubicación segura en un tiempo seguro.

 

Nivel Data Warehouse (Físico): En el data warehouse (núcleo) es donde ocurre la data actual, principalmente para usos estratégicos. En un data warehouse físico, copias, en algunos casos, muchas copias de datos operacionales y/o externos, son almacenados realmente en una forma que es fácil de acceder y es altamente flexible. Cada vez más, los data warehouses son almacenados sobre plataformas cliente/servidor, pero por lo general se almacenan sobre mainframes.

 

Nivel de Organización de Datos: Se llama también gestión de copia o réplica, pero de hecho, incluye todos los procesos necesarios como seleccionar, editar, resumir, combinar y cargar datos en el depósito y acceder a la información desde bases de datos operacionales y/o externas. La organización de datos involucra con frecuencia una programación compleja, pero cada vez más, están creándose las herramientas data warehousing para ayudar en este proceso. Involucra también programas de análisis de calidad de datos y filtros que identifican modelos y estructura de datos dentro de la data operacional existente.

 

Operaciones en un Data Warehouse

 

Sistemas Operacionales: Los datos administrados por los sistemas de aplicación operacionales son la fuente principal de datos para el data warehouse. Las bases de datos operacionales se organizan como archivos indexados (UFAS, VSAM), bases de datos de redes/jerárquicas (I-D-S/II, IMS, IDMS) o sistemas de base de datos relacionales (DB2, ORACLE, INFORMIX, etc.). Según las encuestas, aproximadamente del 70% a 80% de las bases de datos de las empresas se organizan usando DBMSS no relacional.

 

Extracción, Transformación y Carga de los Datos: Se requieren herramientas de gestión de datos para extraer datos desde bases de datos y/o archivos operacionales, luego es necesario manipular o transformar los datos antes de cargar los resultados en 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.

 

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.

 

Acceso de usuario final: Los usuarios acceden al data warehouse por medio de herramientas de productividad basadas en GUI (Graphical User Interface - Interface gráfica de usuario). Pueden proveerse a los usuarios del data warehouse muchos de estos tipos de herramientas. Estos pueden incluir software de consultas, generadores de reportes, procesamiento analítico en línea, herramientas data/visual mining, etc., dependiendo de los tipos de usuarios y sus requerimientos particulares. Sin embargo, una sola herramienta no satisface todos los requerimientos, por lo que es necesaria la integración de una serie de herramientas.

 

Plataforma del data warehouse: La plataforma para el data warehouse es casi siempre un servidor de base de datos relacional. Cuando se manipulan volúmenes muy grandes de datos puede requerirse una configuración en bloque de servidores UNIX con multiprocesador simétrico (SMP) o un servidor con procesador paralelo masivo (MPP) especializado. Los extractos de la data integrada/transformada se cargan en el data warehouse. Uno de los más populares RDBMSs disponibles para data warehousing sobre la plataforma UNIX (SMP y MPP) generalmente es Teradata. La elección de la plataforma es crítica. El depósito crecerá y hay que comprender los requerimientos después de 3 o 5 años.

 

 

A continuación ilustramos la arquitectura del DWH:

 

 

 

Figura 8

 

 

Data Mart

 

Es un subconjunto de un Data Warehouse, subconjunto de las actividades de una organización, pequeña base de datos que permite solucionar un problema estecífico o base de datos de un área de la organización en específico.

 

Son utiles debido que permite manipular consultas rápidas, pocos usuarios compitiendo por los recursos y un rápido desarrollo, se garantiza que tiene campos comunes, todas las transformaciones de las fuentes son comunes, simple y rápido de implementar, guardar información específica de un área de la compañía.

 

Como desventaja se tiene que toma mucho tiempo y es más difícil diseñar primero el Data Warehouse y luego los Data Marts, datos duplicados entre Data Marts, la información de un Data Mart podría no ser compatible con la de otro Data Mart.

 

 

 

 

Cubos

 

Son subconjunto de los datos de una DWH que es almacenado en una estructura multidimensional y que son usados para responder consultas complejas por medio de medidas y datos almacenados en tablas llamadas dimensiones.

 

Estructura

 

Conjunto de dimensiones relacionadas que forman una cuadrícula ndimensional

Cada celda del cubo contiene un valor

El valor de cada celda es una intersección entre las dimensiones

El dato en la celda es un número sumarizado

 

Componentes

 

Dimensiones: Conjunto de valores de una cara

Miembros: Un valor en particular de una dimensión

Celdas: Conjunto que contiene un miembro de cada dimensión

Jerarquías: Agrupaciones que combinan varios miembros

Niveles: Un valor en particular de una dimensión

Niveles Múltiples: Conjunto que contiene un miembro de cada dimensión

 

 

Implementación de un Data Warehouse

 

Factores en la Planificacion de un Data Warehouse

No existe una fórmula de garantía real para el éxito de la construcción de un data warehouse, pero hay muchos puntos que contribuyen a ese objetivo:

 

Establecer una asociación de usuarios, gestión y grupos

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.

 

Seleccionar una aplicación piloto con una alta probabilidad de éxito

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.

 

Construir prototipos rápida y frecuentemente

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.

 

Implementación incremental

La implementación incremental reduce riesgos y asegura que el tamaño del proyecto permanezca manejable en cada fase.

 

Reportar activamente y publicar los casos exitosos

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. La retroalimentación del usuario también ayuda a comprender cómo evoluciona la implementación del data warehouse a través del tiempo para reunir requerimientos de usuario nuevamente identificados.

 

Estrategias para el Desarrollo de un Data Warehouse

Antes de desarrollar un data warehouse, es crítico el desarrollo de una estrategia equilibrada que sea apropiada para sus necesidades y sus usuarios.

Las preguntas que deben tenerse en cuenta son:

¿Quién es el auditorio?

¿Cuál es el alcance?

¿Qué tipo de data warehouse debería construirse?

 

Existe un número de estrategias mediante las cuales las organizaciones pueden conseguir sus data warehouses.

 

Primera: Establecer un ambiente "data warehouse virtual", el cual puede ser creado por:

Instalación de un conjunto de facilidades para acceso a datos, directorio de datos y gestión de proceso.

Entrenamiento de usuarios finales.

Control de cómo se usan realmente las instalaciones del data warehouse.

Basados en el uso actual, crear un data warehouse físico para soportar los pedidos de alta frecuencia.

 

Segunda: 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.

 

Esta estrategia tiene la ventaja de ser simple y rápida. Desafortunadamente, si los datos existentes son de mala calidad y/o el acceso a los datos no ha sido previamente evaluado, entonces se puede crear una serie de problemas.

 

Tercera: Finalmente, la estrategia data warehousing óptima es seleccionar el número de usuarios basados en el valor de la empresa y hacer un análisis de sus puntos, preguntas y necesidades de acceso a datos.

 

De acuerdo a estas necesidades, se construyen los prototipos data warehousing y se prueban para que los usuarios finales puedan experimentar y modificar sus requerimientos.

 

Consideraciones Previas al Desarrollo de un Data Warehouse

Hay muchas maneras para desarrollar data warehouses como tantas organizaciones existen. Sin embargo, hay un número de dimensiones diferentes que necesitan ser consideradas tales como alcance de un data warehouse, redundancia de datos, tipo de usuario final.

 

Alcance de un Data Warehouse: 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.

 

Redundancia de Datos: 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" : usuarios finales pueden acceder a bases de datos operacionales directamente, usando cualquier herramienta que posibilite "la red de acceso de datos".

 

Data warehouses "centrales" :  Es una única base de datos física, que contiene todos los datos para un área funcional específica, departamento, división o empresa.

 

Data warehouses "distribuidos": 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.

 

Tipo de Usuario Final: En general, se puede considerar tres grandes categorías, ejecutivos y gerentes, "Power users" (analistas financieros y de negocios, ingenieros, etc.), usuarios de soporte (de oficina, administrativos, etc.).

 

Cada una de estas categorías diferentes de usuario tienen su propio conjunto de requerimientos para los datos, acceso, flexibilidad y facilidad de uso.

 

 

Elementos Claves para el Desarrollo de un Data Warehouse

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

 

Arquitectura del Depósito: 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.

 

Arquitectura del servidor: Al decidir sobre una estructura de depósito distribuida o centralizada, también se necesita considerar los servidores que retendrán y entregarán los datos. El tamaño de su implementación (y las necesidades de su empresa para escalabilidad, disponibilidad y gestión de sistemas) influirá en la elección de la arquitectura del servidor.

 

Sistemas de Gestión de Bases de Datos: Los data warehouses (conjuntamente con los sistemas de soporte de decisión [Decision Support Systems - DSS] y las aplicaciones cliente/servidor), fueron los primeros éxitos para el DBMS relacional (Relational Data Base Management Systems - RDBMS).

 

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.

 

La performance de los RDBMS tradicionales es mejor para consultas basadas en claves ("Encuentre cuenta de cliente #2014") que para consultas basadas en el contenido ("Encuentre a todos los clientes con un ingreso sobre $ 10,000 que hayan comprado un automóvil en los últimos seis meses").

 

La selección del DBMS está también sujeta al servidor de hardware que se usa. Algunos RDBMS, como el DB2 Paralelo, INFORMIX XPS y el ORACLE Paralelo, ofrecen versiones que soportan operaciones paralelas. El software paralelo divide consultas, uniones a través de procesadores múltiples y corre estas operaciones simultáneamente para mejorar la performance.

 

Se requiere el paralelismo para el mejor desempeño en los servidores MPP grandes y SMP agrupados. No es aún una opción con MDDBS o DBMS relacional - objeto.

 

 

Preguntas

 

  1. Cuales son las diferencias entre los dwh y los sistemas transaccionales ?
  2. Cuales son las preguntas que debemos hacernos para desarrollar un dwh ?
  3. Que significa ETL ?
  4. Quien es el llamado padre del concepto dwh ?
  5. Qué son cubos ?
  6. Qué es un datamart ?
  7. Cual es la diferencia entre Data Warehouse y Data Warehousing ?
  8. Porque se dice que un dwh es no volatil ?
  9. Que es OLAP ?
  10. Que significa DSS ?
  11. Cuales son las categorias de tipo de usuario final ?
  12. Qué son Data warehouses distribuidos ?

 

 

Infografia

 

 

Ver Archivo Local

En esta dirección se pueden ver conceptos interesantes de dwh, tambien exponen que un expediente de una empresa más allá de la información transaccional y operacional, almacenado en una base de datos diseñada para favorecer análisis y la divulgación eficientes de datos (especialmente OLAP). El almacenamiento de los datos no debe usarse con datos de uso actual.

Los almacenes de los datos contienen a menudo grandes cantidades de información que se subdividen a veces en unidades lógicas más pequeñas llamadas los centros comerciales dependientes de los datos.

http://es.wikipedia.org/wiki/Data_warehouse

 

Ver Archivo Local

En este site tenemos un documento completo con aspectos de dwh, y lo definen como un conjunto de procesos y acciones, es una colección de datos orientados a un tema, integrados y no volátiles en el soporte al proceso de toma de decisiones de la gerencia. Se habla de los impactos empresariales, quienen lo usan, para que lo usan, comparativo con sistemas transaccionales, etc

http://www.monografias.com/trabajos6/dawa/dawa.shtml

 

Ver Archivo Local

Haciendo click en este link vemos aspectos tales como la estructura del data warehouse, se muestran los diferentes componentes del data warehouse (y se definen) como lo es el detalle de datos actuales,  detalle de datos antiguos, datos ligeramente resumidos

datos completamente resumidos y meta data.

http://www.pcm.gob.pe/PORTAL_ONGEI/publica/metodologias/Lib5084/14.HTM

 

Ver Archivo Local

Lugar de internet con titulo Aplicaciones de Negocio, donde podemos obtener un par de conceptos de datawarehouse como este: es una solución que permite centralizar en un solo punto toda la información definida por la compañía como relevante para la gestión de su negocio y la toma de decisiones. La distribución de la información se realiza a través de herramientas que permiten a los usuarios finales construir sus propios informes de forma autónoma.

http://www.empresas.telefonica.es/catalogoTEE/aplicacionesnegocio/aplic_negoc/serv_gestion/data_warehouse/index.html

 

Ver Archivo Local

En esta dirección se puede bajar un archivo PDF con afirmaciones como esta: El data warehouse, es actualmente, el centro de atención de las grandes instituciones, porque provee un ambiente para que las organizaciones hagan un mejor uso de la información que está siendo administrada por diversas aplicaciones operacionales.

http://www.willydev.net/descargas/prev/ElABCDW.PDF