15
1 IMPLEMENTACIÓN DE UN CUBO DE DATOS DE UN CINEMA, HACIENDO USO DE LAS HERRAMIENTAS DE BUSINESS INTELLIGENCE DE SQL AUTORES: CRUZ ZAMORA JUNIOR WILSON ESQUIVEL GUEVARA MARIA DEL CARMEN LIMAY OLIVA MARY LAURA CAROLINA DOCENTE: ING. ARTURO DÍAZ PULIDO RESUMEN: En el presente proyecto, se mostrará la creación de un cubo de datos de un cinema, haciendo uso de algunas herramientas necesarias como business intelligence, parte de SQL Server 2012, y utilizando Visual studio 2010 para realizar el diseño, y la organización de los datos. Se explicará la formación de un cubo OLAP, y su análisis. PALABRAS CLAVE: OLAP, business intelligence, diseño.

Proyecto de base ii

Embed Size (px)

Citation preview

Page 1: Proyecto de base ii

1

IMPLEMENTACIÓN DE UN CUBO DE DATOS DE UN CINEMA,

HACIENDO USO DE LAS HERRAMIENTAS DE BUSINESS

INTELLIGENCE DE SQL

AUTORES:

CRUZ ZAMORA JUNIOR WILSON

ESQUIVEL GUEVARA MARIA DEL CARMEN

LIMAY OLIVA MARY LAURA CAROLINA

DOCENTE:

ING. ARTURO DÍAZ PULIDO

RESUMEN:

En el presente proyecto, se mostrará la creación de un cubo de datos de un

cinema, haciendo uso de algunas herramientas necesarias como business intelligence, parte de

SQL Server 2012, y utilizando Visual studio 2010 para realizar el diseño, y la organización de los

datos. Se explicará la formación de un cubo OLAP, y su análisis.

PALABRAS CLAVE:

OLAP, business intelligence, diseño.

Page 2: Proyecto de base ii

2

INDICE 1. INTRODUCCIÓN ........................................................................................................................... 3

2. USOS DE UN SISTEMA OLAP O BI ................................................................................................ 4

2.1. ARQUITECTURA Y FUNCIONAMIENTO DE UN CUBO O BI ................................................... 4

2.2. MODELO DE NEGOCIO DIMENSIONAL ................................................................................ 7

2.3. BASE DE DATOS ................................................................................................................... 7

2.4. MODELO RELACIONAL ......................................................................................................... 8

2.5. INTERFAZ CON EL USUARIO ................................................................................................ 8

2.6. MÓDULO DE EXPLICACIÓN .................................................................................................. 8

2.7. MÓDULO DE PREPARACIÓN DE PLATAFORMAS Y HERRAMIENTAS. ................................ 11

2.8. VENTAJAS E INCONVENIENTES DE UN CUBO U OTRO MODELO DE BI ............................. 12

2.8.1. VENTAJAS .................................................................................................................. 12

2.8.2. INCONVENIENTES ...................................................................................................... 12

2.9. LENGUAJE DE PROGRAMACIÓN USADOS ......................................................................... 12

2.9.1. INTRODUCCIÓN A VISUAL STUDIO Y SQL .................................................................. 12

2.9.2. CARACTERÍSTICAS PRINCIPALES ................................................................................ 13

3. CUBO OLAP ................................................................................................................................ 13

3.1. PLANTEAMIENTO Y DISEÑO .............................................................................................. 13

3.2. IMPLEMENTACIÓN ............................................................................................................ 13

3.3. EJECUCIÓN ......................................................................................................................... 14

3.4. Referencias Bibliográficas ................................................................................................. 15

Page 3: Proyecto de base ii

3

1. INTRODUCCIÓN

Resulta una problemática actual en las empresas, la organización de grandes cantidades de

datos, aún más importante, la administración de ella para la obtención de no solo datos, sino

información. La información es uno de los factores que ayuda a estas grandes empresas a

tomar decisiones beneficiosas para la misma, y proyectarse al futuro con más seguridad y

planificación. Todo esto requiere de grandes almacenes de datos.

Los sistemas OLAP son muy utilizados por la mayoría de empresas, las cuales implementan

varios Datamart, los cuales no son más que almacenes de datos bien estructurados.

El presente documento tiene como objetivo principal, exponer el diseño de un Cubo de Datos,

la cual es una estructura muy usada para organizar los datos y obtener información. Este cubo

de datos será realizado enfocado en una base creada para ese propósito, una base de datos de

un cinema.

Cada paso realizado será explicado, pero solo se dará un resumen de cada uno de ellos.

Haciendo uso de las herramientas que ofrece sql, y Visual Studio, se expondrá el diseño e

implementación de esta estructura.

Page 4: Proyecto de base ii

4

2. USOS DE UN SISTEMA OLAP O BI OLAP es el acrónimo en inglés de procesamiento analítico en línea (On-Line Analytical

Processing). Es una solución utilizada en el campo de la llamada Inteligencia empresarial (o

Business Intelligence) cuyo objetivo es agilizar la consulta de grandes cantidades de datos.

Para ello utiliza estructuras multidimensionales (o Cubos OLAP) que contienen datos

resumidos de grandes Bases de datos o Sistemas Transaccionales (OLTP). Se usa en

informes de negocios de ventas, marketing, informes de dirección, minería de datos y

áreas similares. (wikipedia)

Razones de su uso extendido:

- Proporciona rapidez en las consultas de datos.

- Su diseño es cómodo, y está orientado al ámbito empresarial.

- Permiten procesar grandes volúmenes de información, esto se debe a que los cubos

son vectores.

- Las herramientas OLAP proporcionan a las compañías un sistema confiable para

procesar datos que luego serán utilizados para llevar a cabo análisis e informes que

permitan mejorar las operaciones productivas, tomar decisiones inteligentes y

optimizar la competitividad en el mercado.

- Antes solo se utilizaban sistemas ROLAP, ahora gracias al concepto de cubo OLAP, las

soluciones se han ampliado, y contamos con un sistema donde la información es

confiable, precisa, y su extracción muy rápida.

2.1. ARQUITECTURA Y FUNCIONAMIENTO DE UN CUBO O BI a) Arquitectura

La arquitectura de un cubo consta de dimensiones y hechos.

- Dimensiones: Representan factores por lo que se analiza un determinado área del

negocio. Son pequeñas y usualmente están desnormalizadas.

- Hechos: Son el objeto de los análisis y están relacionados con las dimensiones. Son

tablas muy grandes y suelen estar desnormalizadas.

Cada una de las dimensiones que posee la base de datos incorpora un campo

determinado para un tipo de dato específico, que luego podrá ser comparado con la

información contenida en el resto de dimensiones, para hacer posible la evaluación y

posteriores informes de la información realmente relevante para una compañía.

Una base de datos multidimensional puede contener varios cubos o vectores que

extenderán las posibilidades del sistema OLAP con el cual se trabaja.

Page 5: Proyecto de base ii

5

Para poder realizar un cubo de datos OLAP, tenemos que realizar primeramente un

diseño. El cual, como se mencionaba, está compuesto de dimensiones y hechos. Las

dimensiones son las características que se medirán, y la tabla de hechos las contendrá.

La tabla de hechos tendrá las llaves primarias de todas las tablas con las que se

relaciona, es decir, las dimensiones. Pero gracias a esta tabla se podrán obtener las

medidas al cubo en función a las dimensiones elegidas.

Todo esto conlleva un proceso de selección riguroso, ya que si no se eligen

correctamente las dimensiones, el cubo mostrará datos correctos, pero difíciles de

entender, poco relacionados. Y como el cubo es parte de un datamart, está enfocado a

un usuario, el cual desea entender toda la información de manera más sencilla, se la

debe proporcionar de dicha forma.

En un cubo OLAP contamos con 2 formas de hacer el diseño de las dimensiones, pero

al final darán resultados satisfactorios. La primera, es un modelo de diseño llamado

“modelo estrella”, el cual consta de dimensiones bien definidas, y es muy aplicable al

mundo de las ventas. El segundo lleva el nombre de “modelo copo de nieve”, el cual es

totalmente igual al modelo estrella, la diferencia es que este mantiene las relaciones

existentes entre las tablas de la base de datos. Es decir, al final en teoría se convierte

en un modelo estrella, porque sigue siendo una sola tabla la que contiene las medidas,

pero las dimensiones mantienen sus relaciones con las demás tablas, lo que hace que

tenga la forma en que se observe sea distinta a una estrella.

- Modelo estrella: como se muestra en la ilustración 1. Las dimensiones básicas de este

diseño son tiempo, producto, cliente, y la tabla ventas vendría a ser los hechos que se

realizan en la empresa, es la que nos proporcionará las medidas.

Ilustración 1 : Modelo Estrella (sitio web Mundo DB)

Page 6: Proyecto de base ii

6

Consiste en estructurar la información en procesos, vistas y métricas recordando a una

estrella). Es decir, tendremos una visión multidimensional de un proceso que medimos a

través de unas métricas. A nivel de diseño, consiste en una tabla de hechos en el centro

para el hecho objeto de análisis y una o varias tablas de dimensión por cada dimensión de

análisis que participa de la descripción de ese hecho. En la tabla de hecho encontramos los

atributos destinados a medir el hecho: sus métricas. Mientras, en las tablas de dimensión,

los atributos se destinan a elementos de nivel y a atributos de dimensión .En el esquema

en estrella la tabla de hechos es la única tabla del esquema que tiene múltiples joins que la

conectan con otras tablas. El resto de tablas del esquema únicamente hacen join con esta

tabla de hechos.

- Modelo Copo de Nieve:

El esquema en copo de nieve es un esquema de representación derivado del esquema en

estrella, en el que las tablas de dimensión se normalizan en múltiples tablas. Por esta

razón, la tabla de hechos deja de ser la única tabla del esquema que se relaciona con otras

tablas, y aparecen nuevas joins gracias a que las dimensiones de análisis se representan

ahora en tablas de dimensión normalizadas. En la estructura dimensional normalizada, la

tabla que representa el nivel base de la dimensión es la que hace join directamente con la

tabla de hechos. La diferencia entre ambos esquemas reside entonces en la estructura de

las tablas de dimensión. Para conseguir un esquema en copo de nieve se ha de tomar un

esquema en estrella y conservar la tabla de hechos, centrándose únicamente en el

modelado de las tablas de dimensión, que si bien en el esquema en estrella se

encontraban totalmente desnormalizadas, ahora se dividen en subtablas tras un proceso

de normalización. Es posible distinguir dos tipos de esquemas en copo de nieve, un "copo

de nieve" completo (en el que todas las tablas de dimensión en el esquema en estrella

aparecen ahora normalizadas en el copo de nieve) o un "copo de nieve" parcial (sólo se

lleva a cabo la normalización de algunas de ellas).

Como se observa en la ilustración 2.

Ilustración 2: diseño copo de nieve. (sitio web Mundo DB)

Page 7: Proyecto de base ii

7

Habiendo visto ambos modelos, para este proyecto se optó por el modelo copo de nieve,

el cual mostraremos su diseño en la siguiente sección.

2.2. MODELO DE NEGOCIO DIMENSIONAL En la base de datos creada de un cinema, hemos obtenido, que los hechos

contendrían a: las proyecciones, las ventas de entradas. Ambas vendrían a ser las

medidas que usaremos.

Las dimensiones serían las tablas sombreadas de azul, las tablas de hechos, las

sombreadas de amarillo.

2.3. BASE DE DATOS La base de datos realizada es una base de datos de un cinema, como se verá a

continuación en el modelo relacional.

Ilustración 3: Modelo dimensional en Visual Studio 2010.

Page 8: Proyecto de base ii

8

2.4. MODELO RELACIONAL

El modelo relacional fue realizado en “Erwin”, el cual nos permite del mismo modelo

obtener el código para la creación de la base en sql server, o en cualquier otro

servidor. Se usó porque sus beneficios eran muy buenos. El proceso de diseño era

fácil, y muy cómodo. Y se puede ahorrar tiempo con su uso.

2.5. INTERFAZ CON EL USUARIO El medio de comunicación con el usuario será la plataforma de Visual Studio, o si el

usuario prefiere algo más sencillo, Excel es una opción que nos puede ayudar a

visualizar los resultados.

2.6. MÓDULO DE EXPLICACIÓN Los resultados se mostrarán en pantalla, de acuerdo a lo que usuario quiera ver.

Tenemos dos medidas básicas, el número de proyecciones, y la cantidad de ventas

de entradas. Estas medidas se podrán relacionar con las dimensiones elegidas.

Al usar Excel podremos visualizar, utilizando la opción de “Datos De otras fuentes

desde Analysis Services”, se podrá visualizar el servidor local, del cual se puede

importar el cubo realizado en visual studio. Así se podrá visualizar los siguientes

resultados:

Ilustración 4: modelo relacional de la base de datos.

Page 9: Proyecto de base ii

9

Ilustración 5: Resultados de Excel, la relación de las salas de proyección de películas, mostrando el recuento de ventas y proyecciones por casa una de ellas.

Ilustración 6: se muestra cada cliente, y las películas que a las que asistieron, y la cantidad de entradas que compraron.

Page 10: Proyecto de base ii

10

Ilustración 8: la clasificación del tipo de pago que realizaron, cuantos lo hicieron en efectivo o con tarjeta, y las proyecciones, reflejan la cantidad de proyecciones que tuvo dicha película.

Ilustración 7: se muestra las películas, y la cantidad de proyecciones,

Page 11: Proyecto de base ii

11

Y si el usuario desearía otros resultados. Tan solo se tendría que seleccionar las

dimensiones, y si se requiere algo más específico, el usuario deberá hacer uso de los

filtros. Cabe mencionar que gracias a Excel también se podrán realizar gráficos muy

interesantes haciendo uso de esta información ya organizada.

2.7. MÓDULO DE PREPARACIÓN DE PLATAFORMAS Y HERRAMIENTAS. Lo usado durante la creación del cubo fue:

o Sql server 2012.

o Visual Studio 2010.

o Erwin data modeler.

o Excel 2010.

Para hacer uso de estos, es necesario descargar las versiones originales, de las

páginas oficiales de descarga. En este caso, se eligió Visual 2010, porque era el

único compatible en Windows 7 con las herramientas de Business Intelligence que

ofrece sql 2012.

Ilustración 9: interface para seleccionar los filtros o búsquedas, y para mostrar los resultados según las dimensiones.

Page 12: Proyecto de base ii

12

Erwin, es fácil de usar y se puede conseguir una versión para estudiantes en la

página oficial del mismo, es gratuito, al menos por un año.

Excel 2010, es parte del paquete de Office, y se usó para visualizar los datos del

cubo por su interface tan sencilla, y muy familiar.

2.8. VENTAJAS E INCONVENIENTES DE UN CUBO U OTRO MODELO DE BI

2.8.1. VENTAJAS

- Tiene Acceso a grandes cantidades de información.

- Permite analizar las relaciones entre diferentes tipos de datos.

- Involucra datos agregados.

- Presenta los datos en diferente perspectiva.

- Responde con rapidez a consultas de usuario.

- Fácil uso.

2.8.2. INCONVENIENTES

- No puede realizar cambios en su estructura, ya que se deberán cargar los

datos nuevamente.

- El modelo de negocios no siempre se adapta bien al modelo jerárquico.

2.9. LENGUAJE DE PROGRAMACIÓN USADOS

2.9.1. INTRODUCCIÓN A VISUAL STUDIO Y SQL

a) Visual Studio.

Visual Studio en un entorno muy completo y confiable de herramientas de

desarrollo para la generación de aplicaciones web ASP.NET, Servicios Web XML,

aplicaciones de escritorio y aplicaciones móviles. Visual Basic, Visual C# y Visual

C++ utilizan todos el mismo entorno de desarrollo integrado (IDE), que habilita el

uso compartido de herramientas y facilita la creación de soluciones en varios

lenguajes. Asimismo, dichos lenguajes utilizan las funciones de .NET Framework,

las cuales ofrecen acceso a tecnologías clave para simplificar el desarrollo de

aplicaciones web ASP y Servicios Web XML.

b) Sql server.

Es un servidor de bases de datos muy completo, que es relacional. El lenguaje que

usa es el transac-sql. Es un lenguaje antiguo, pero que aún tiene su uso muy

extendido, ya que de ahí se derivan muchos de los lenguajes para servidores de

base de datos actuales.

Page 13: Proyecto de base ii

13

2.9.2. CARACTERÍSTICAS PRINCIPALES

a) Visual Studio. Es un IDE, que usa diversos lenguajes. En este caso no se hizo uso de

los lenguajes directamente, sino más bien del entorno que ofrece. Las plantillas

que ofrece son muy importantes. Son muy completas y están ligadas al diseño que

brinda Business Inteligence.

b) SQL. Sql consta de características esenciales como:

- Es un lenguaje muy potente

- Sencillez al indicar lo que queremos obtener, por ejemplo la sentencia

SELECT.

- La escritura de sus sentencias siguen el mismo patrón, inicia con el

verbo el cual indica la acción, seguido del objeto sobre el cual se

realizara al acción y finalizando por cláusulas que restringen la acción

deseada.

- Aunque este escrito en un idioma distinto al nuestro, debido a su

reducida, escritura es fácil de entender y de aprender.

- SQL Server proporciona un conjunto de tipos de datos del sistema que

define todos los tipos de datos que pueden utilizarse con SQL Server.

3. CUBO OLAP

3.1. PLANTEAMIENTO Y DISEÑO La base de datos creada, ya se mostró anteriormente, lo que se hizo en el diseño del

cubo fue identificar los hechos y dimensiones.

Hechos:

Medidas:

- Cantidad de Ventas.

- Cantidad de Proyecciones.

Dimensiones:

- Cliente.

- Tipo de pago.

- Proyección: película, horario, tipo de película, pago.

3.2. IMPLEMENTACIÓN Siguiendo los pasos:

- Generar una vista de datos, seleccionando “una nueva vista de datos”,

en esa opción, seleccionar las todas las tablas de la base de datos.

Page 14: Proyecto de base ii

14

- Crear dimensión a dimensión, ya que si se deja que el asistente del

cubo cree las dimensiones, no las creara correctamente. Además asi,

se puede seleccionar solo los atributos necesarios de cada tabla para

que se carguen.

- Ahora seleccionar la opción de “nuevo cubo”, la cual nos seleccionará

automáticamente las dimensiones ya estructuradas

- Se revisa el cubo, seleccionando la opción del “examinador”. O bien

usar Excel, para visualizar los datos.

En la siguiente imagen se podrá ver cómo quedaría el proyecto en Visual Studio.

3.3. EJECUCIÓN Al tener las dimensiones ya definidas en el proyecto. Se procede a realizar el cubo.

Siempre se debe ejecutar el cubo, solo así se podrá abrir el “Examinador”, que nos

permitirá observar los datos organizados. En la ilustración 11, se muestra algunas

dimensiones relacionadas con las medidas.

Ilustración 10: la creación de dimensiones en Visual Studio.

Page 15: Proyecto de base ii

15

3.4. Referencias Bibliográficas sitio web Mundo DB. (s.f.). Recuperado el 19 de Diciembre de 2014, de sitio web Mundo DB:

http://mundodb.es/diseno-data-warehouse-hechos-y-dimensiones-modelo-estrella-vs-

copo-de-nieve

wikipedia. (s.f.). Recuperado el 18 de Diciembre de 2014, de wikipedia:

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

Ilustración 11: se visualiza en “el examinador” los recuentos de ventas y proyecciones, según las fechas. Los valores null, son aquellas entradas que aún no han sido vendidas.