BANCO DE DADOS II TEMAS AVANÇADOS DE BANCOS DE DADOS. Armazéns de dados. MsC. Leoder Alemañy Socarrás Armazén de dados Armazén de dados Os armazéns de dados permitem realizar análises sobre a informação para apoiar a tomada de decisões numa entidade determinada. Os elementos fundamentais que compõem o desenho de um armazém de dados são: os factos, as medidas e as dimensões. Num armazém de dados a informação é representada num cubo de dados Armazén de dados Cubos Facto Dimensões Medidas Atributos das Dimensões Llaves Atributos das Dimensões Atributos A qualidade do armazém mede-se pela qualidade dos atributos, os mesmos devem ser: • Descritivos • Completos (sem valores nulos) • Indexados • Palavras inteiras • Documentados (metadata) 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) Tipos de dimensões Existen tres tipos de dimensões : • Estándar •de Tiempo •Padre-hijo 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 Padre-hijo •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. Tipos de relações entre as dimensões e os factos As classificações fundamentais que recebem estas relações são: • Regular • Referida • Muitos a Muitos. Regular • Relação um – muitos da tabela de dimensão com a tabela de factos. Referenciada • Produz-se quando a tabela de dimensão não está directamente relacionada com a tabela de factos. Na imagem que aparece embaixo é o tipo de relação que existe entre DimGeography (dimensão) e FactResellerSales (facto). Muchos – muchos • Relações muitos – muitos entre tabela de factos e tabela de dimensão. Estas relações implementamse através de uma tabela de factos intermediária. Muchos – muchos Estilos de desenho de armazém de dados • Para desenhar um armazém de dados pode-se aplicar o estilo estrela ou o copo de neve. A seguir explicam-se em detalhe a cada um deles. Estrella Tabla de factos: Objeto de análisis • Chave principal múltipla (em caso que assumam-se as chaves foráneas como primárias, é o caso da figura que aparece a seguir) ou única (em caso que se assumam as chaves das tabelas dimensões unicamente como chaves foráneas). • Uma ou mais medidas que devem ser numéricas e aditivas (factos para Kimball) Conjunto de Tabelas de dimensões: • Diferentes perspectivas para analisar os factos. Chave primária que coincide com uma chave foránea na tabela de factos. Estrella Copo de nieve (Snowflake) • Este estilo utiliza-se quando nas dimensões os atributos de baixa cardinalidad se levam a tabelas separadas. Isto faz as representações mais complexas e diminui o rendimento das consultas, mas às vezes se utiliza para poupar espaço de armazenamento. Kimball não recomenda sua utilização para armazéns de dados. Copo de nieve (Snowflake) Constelação de factos •Quando múltiplas tabelas de factos compartilham as mesmas dimensões, então estamos em presença de uma constelação de factos. 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. Propriedades dos elementos para desenhar um armazém de dados numa ferramenta Propriedades dos cubos: • Name: Nome do cubo. • Visible: Determina se o cubo é visível ou não. • Default Measure: A medida devolvida pelo cubo em caso que as consultas não especifiquem de forma explícita que medida se deseja visualizar. Propriedades dos elementos para desenhar um armazém de dados numa ferramenta Propriedades das dimensões: • Name: Nome da dimensão. • Usage: Uso que dar-se-á à dimensão. • KeyColumns: Coluna(s) de chave para a dimensão. • NameColumn: Coluna que proporciona o valor mostrado na dimensão ao consultar dados. Propriedades dos elementos para desenhar um armazém de dados numa ferramenta Propiedades de las medidas: • Name: Nome da medida. • Description: Descrição da medida. • Source: Coluna da tabela de factos a partir da qual se obtém a medida. • Format String: Determina o formato de visualização da medida (por exemplo, percentagem e moeda). Também permite ingressar uma corrente de formato personalizada. • Visible: Determina se a medida é visível ou não. Esta propriedade é útil quando se definem medidas intermediárias, a partir das quais calcularse-ão outras medidas através de MDX. • Data Type: Tipo de dado da medida. Por defeito, é herdado do tipo de dado da coluna que gera a medida. 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 Nro_producto Trimestre Día 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 Conclusiones Tarefa Exercício 4 da Clase Práctica # 2