BANCO DE DADOS II TEMAS AVANÇADOS DE BANCOS DE DADOS. Introdução ao modelo multidimencional . MsC. Leoder Alemañy Socarrás OLTP – Procesamiento Transaccional en Línea • São sistemas operacionais que capturam transacções e as alojam em Banco de dados. • Exemplos: Aplicativos para caixas automáticos. Aplicativos para realizar operações bancárias. Aplicativos de vendas de produtos on-line. Aplicativos para reservaciones de hotéis on-line. OLTP Características: • Transacções em tempo real (com dia a dia) • Dados alojados mudam continuamente. • Mantêm os dados (INSERT, DELETE, UPDATE) • Estruturas de dados optimizadas – padrão. • Limitado para a tomada de decisões, as consultas históricas produzem um impacto na operação do sistema. • Usa Diagrama Entidade Rela Necessidades de análises de dados Necessidades de análises de dados • ¿Quantos sapatos do 41 de cor vermelha se venderam no último mês na zona norte, este e sul; comparados com as vendas do mesmo mês no ano passado? • ¿Que tipo de cliente me tem estado comprando o BMW 320i durante os últimos 10 anos? • ¿Quais são as 25 primeiras marcas, por produtos, estilos e regiões de Espanha classificadas pela margem de vendas em euros? Necessidades de gestão de dados • ¿Que desconto deveríamos oferecer para incrementar significativamente as vendas? • O produto de tipo A vendeu-se bem mais que o produto de tipo B. Encontrar padrões de correlação entre estes tipos de produtos e extrair similitudes/diferenças. • ¿Quais são as tendências em minhas vendas? OLAP – Procesamiento analítico en línea • Os sistemas OLAP encarregam-se do processamento analítico dos dados e estão focados a apoiar a tomada de decisões em determinada entidade. Características: • Optimizado para responder rapidamente a consultas. • Proporciona uma vista de dados multidimensional. • Alojam grandes volumes de dados. • Estão destinados a diretores. • Seus dados encontram-se geralmente desnormalizados. OLAP - Ejemplos • OLAP en el Marketing • Sistemas de Información para ejecutivos • Alertas. • Toma de decisiones. • OLAP en la Actividad Financiera • Reportes analíticos. • Planeamiento. • Análisis. • Análise de produtos. • Análise de Clientes. • Análise de Facturação. • OLAP en Otros Usos • Análise da Produção. • Análise de Serviços ao cliente. • Evolução do Custo do produto. OLTP y OLAP OLTP OLAP Usuario Operativos, Profesionales TI Trabajadores de conocimiento Uso Predecible, Repetitivo Heurístico Accesos Alta Media y baja Tipo acceso R/W - actualización al campo Lectura - Sumarización T. respuesta Segundos Segundos a minutos Contenido Valores elementales Datos sumarizados, derivados Estabilidad Dinámicos Estáticos hasta su actualización Función Operaciones día a día Soporte a las decisiones Diseño BD Orientado a la aplicación Orientado al tema (sujeto) Estructura Transaccional (NORMALIZADA) Consultas (DESNORMALIZADA) # filas cientos millones # usuarios miles cientos DB Size 100 MB-GB 100GB-TR métrica rendimiento de la transacción rendimiento de la consulta OLAP - OLTP OLTP OLAP Diagrama E-R Cubos Entidad Atributo Relación Hechos Dimensiones Jerarquías Medidas Normalización Integridad Referencial Codificación Granularidad UML Lenguaje de Modelamiento Unificado UDM modelo dimensional unificado Análisis Diseño Desarrollo Implementación Explotación Diseño Carga Explotación Armazém de dados (Data Warehouse) •Um armazém de dados é uma colecção de dados orientada a temas, integrada, não volátil e de tempo variante, que brinda suporte à tomada de decisões. Orientados por temas O armazém de dados está orientado pelas principais áreas de temáticas da empresa que têm sido definidas no modelo de dados de alto nível. Exemplos de áreas de temáticas: - Clientes - Produtos - Transacção ou actividade - Políticas - Reclamos - Contas Orientados por temas A cada área de aspecto principal é implementada fisicamente como uma série de tabelas relacionadas no armazém de dados. Um área de aspecto principal pode constar de 10, 100 ou inclusive mais tabelas físicas que estão relacionadas. Exemplo Dados integrados Dados integrados de diferentes fontes de dados operacionais. Exemplo Dados não voláteis • Os dados alojados não se modificam nem actualizam nunca, só se acrescentam novos dados. Dados variáveis no tempo • Dados relativos a um período de tempo e incrementamse periodicamente. Desenho de um armazém de dados • A granularidad é considerado o aspecto a mais importância no desenho de um armazém de dados. • A granularidad refere-se ao nível de detalhes ou resumo das unidades de dados no armazém de dados. Quanto mais detalhe exista, menor será o nível de granularidad. Quanto menos detalhe exista, maior será o nível de granularidad. Exemplo Desenho de um armazém de dados • Quando existem muitas tabelas, é recomendável misturar fisicamente algumas das tabelas (desnormalización). Conceptualizando •Facto: Evento específico que constitui a unidade fundamental de análise de dados, para a tomada de decisões. Exemplos: vendas, exportações, investimentos, etc. •Dimensões: É uma entidade de negócios respeito da qual se devem calcular as métricas. Exemplos: clientes, produtos, tempo, etc. Conceptualizando •Medidas: Valores quantitativos que alojam as métricas do negócio. Estão representados por colunas numéricas na tabela de factos. Estes dados provem/provêm directamente dos sistemas OLTP. Conceptualizando • Cubo: A ideia fundamental do modelo multidimensional é que os dados de negócio podem ser representados como um tipo de cubo de dados. Nos cubos a cada cela contém um valor e as arestas do cubo definem dimensões naturais de análises. Modelos básicos dimensionais Estrella Copo de Nieve Atributos nas dimensões • Os atributos descrevem características das dimensões. • São geralmente textuais ou comportam-se como tal. • Tomam valores discretos. • Aparecem nas colunas de reporte-los de saída. • Podem formar hierarquias nas dimensões: • (localização: direcção, cidade, província) dimensões estándar •É o tipo mais singelo de dimensão. •Uma dimensão regular tem um conjunto fixo de hierarquias e níveis, estabelecido pelo desenhador. dimensões Time Definem-se geralmente mediante uma hierarquia de vários níveis. Exemplo: •Ano •Semestre •Trimestre •Mês Dimensões Parent – Child •Baseiam-se em relações recursivas existentes numa tabela de dimensão. •Por exemplo, um empregado tem um chefe. Mas este chefe é também um empregado. Membros de uma dimensão •A cada membro é uma ocorrência específica de uma dimensão. •As dimensões costumam ter uma estrutura baseada em níveis. A cada membro localiza-se num determinado nível. Relações entre os membros Roles das dimensões • Em ocasiões, uma dimensão participa múltiplas vezes no mesmo cubo, desempenhando diferentes papéis. Exemplos: • Uma tabela de factos pode conter três colunas que o enlacem com a dimensão de tempo: uma coluna para alojar a data de facturação, outra para alojar a data de remessa, e outra para alojar a data de entrega. • Uma tabela de factos pode conter duas colunas enlaçadas com a dimensão de empregados: uma coluna para representar ao empregado que efectuou a venda, e outra para representar ao empregado que efectuou o despacho. Roles das dimensões Exemplos: Uma tabela de factos pode conter duas colunas enlaçadas com a dimensão de empregados: uma coluna para representar ao empregado que efectuou a venda, e outra para representar ao empregado que efectuou o despacho. Constelación de hechos Múltiplas tabelas de factos compartilham as mesmas dimensões. Embarques Tiempo llave-tiempo día_semana semana trimestre Producto Ventas Clientes llave-cliente id-cliente nombre credito direccion ciudad llave-tiempo llave-producto llave-cliente llave-tienda unidades vendidas precio llave-producto id-producto descripción marca tipo de empaque llave-tiempo llave-producto llave-tiendaorigen llave-tiendadestino llave-transportista unidades embarcadas precio_embarque Transportista Tiendas llave-tienda id-tienda nombre dirección ciudad llave-transportista id-transportista nombre dirección tipo Dimensões conformadas (compartilhadas) •É uma dimensão que significa o mesmo para a cada possível tabela de factos com a que se possa unir •Exemplos: loja, produto, tempo. •É responsabilidade do equipo desenhador estabelecer, publicar e manter as dimensões conformadas •Sem um uso estrito de dimensões conformadas o armazém nunca funcionará como um tudo. DESENHO FÍSICO MOLAP - OLAP Multidimensional • Os dados origem e suas agregações estão numa estrutura multidimensional. AGREGACIONES Y DATOS Vista de Usuario Base de Datos Relacional Base de Datos Multidimensional Características • Provê excelente rendimento e compressão de dados. • Melhor tempo de resposta, depende das agregações. • Estrutura optimizada para maximizar as consultas. • Apropriado para cubos de rápida resposta. ROLAP - OLAP Relacional • A informação do cubo, seus dados, sua agregação, são alojar num banco de dados relacional. • Não copia a BD original, acede às tabelas origem. • É mais lenta que as outras estratégias (MOLAP ou HOLAP). • Utiliza-se para poupar espaço de armazenamento em grandes BD de baixa frequência de consulta. AGREGACIONES Y DATOS Base de Datos Relacional Base de Datos Multidimensional Vista de Usuario HOLAP – OLAP Híbrido •Combina características de MOLAP e ROLAP. •As agregações alojem-se numa estrutura multidimensional e os dados, na BD original. •Cubos mais pequenos que MOLAP e mais rápidos que ROLAP. DATOS Base de Datos Relacional AGREGACIONES Base de Datos Multidimensional Vista de Usuario Usos comunes: •Cubos que requerem rápida resposta. •Quando existem sumarizaciones baseadas numa grande quantidade de dados de origem. •Solução de compromisso para baixar o espaço ocupado sem prejudicar totalmente o rendimento das consultas. Modelagem de um Armazém de Dados EXEMPLO Organização: Corrente de supermercados. Actividade objeto de análise: vendas de produtos. Exemplo de informação registada sobre uma venda: “do produto “Enlatados” venderam-se no armazém “Armazém nro.1” no dia 7/7/2011, 5 unidades por um custo de 103,19 euros.” Modelagem hecho Marca Descripción Semana Categoría Departamento Mes Trimestre Día Nro_producto Año Tipo importe unidades dimensión Almacén medidas Ciudad Tipo atributos Región Exemplo Producto llave-producto id-producto descripción marca tipo de empaque Tiempo llave-tiempo día-semana semana trimestre Ventas llave-tiempo llave-producto llave-almacén unidades vendidas importe Almacén llave-almacén id-almacén nombre direccion ciudad Extracção Transformação e Ónus (ETL) É o processo que permite às organizações mover dados desde múltiplas fontes, reformatearlos e os limpar, e carregar em outro banco de dados, data mart, ou data warehouse para analisar, ou em outro sistema operacional para apoiar um processo de negócio. Inteligência de Negócio (BI) Conjunto de metodologias, aplicativos e tecnologias que permitem reunir, depurar e transformar dados dos sistemas transacionais e informação não estruturada (interna e externa à companhia) em informação estruturada, para sua exploração direta (reportes, análise OLTP / OLAP, alertas...) ou para sua análise e conversão em conhecimento, dando assim suporte à tomada de decisões sobre o negócio. Obrigado