Publicité
Publicité

Contenu connexe

Dernier(20)

Publicité

Data Warehouse em Bancos de Dados NoSQL - Isaac.pptx

  1. Esquema Lógico para Data Warehouse em Bancos de Dados NoSQL Orientados por Colunas Autores: Mohamed Boussahoua, Omar Boussaid, Fadila Bentayeb (Université Lumiere Lyon 2 | UL2)
  2. Objetivo • A principal contribuição deste trabalho é a transformação do data warehouse relacional em um data warehouse NoSQL orientado por colunas
  3. • Geralmente é implementados como sistemas de gerenciamento de bancos de dados relacionais tradicionais • Pontos fracos – Não são adequados para bancos de dados distribuídos: • Apresentam problemas de escalabilidade • Problemas de operação de junção • Armazenamento de dados em massa • Problemas de acesso. Data Warehouse
  4. NoSQL • Uma solução escolhida é usar um banco de dados não relacional – Permite o armazenamento com menor custo – Oferece grande flexibilidade na representação de dados – Permite gerenciamento de grandes quantidades de armazenamento de dados em servidores distribuídos
  5. • Tipos de modelagem – Orientado por chave-valor (Key / Value Store) – Orientado por colunas (Column Store) – Orientado por documentos (Document Store) – Orientado por grafos (Graph Store). NoSQL
  6. NoSQL orientado por colunas • Modelo mais apropriado escolhido para o armazenamento de data warehouse foi orientado por colunas: – Tabelas de largura variável – Alto desempenho em consultas – Compactação de dados – Não há regras de normalização
  7. NoSQL orientado por colunas • Todos os dados são armazenados na mesma tabela • Cada tabela é composta por uma ou mais famílias de colunas (CFi) • Cada família de colunas é composta por um conjunto de atributos e colunas • Cada linha de dados das colunas é referenciada por uma chave Row-key (Ri)
  8. • Tabela T, com 2 famílias de colunas, CF1 e CF2 • Cada linha de dados é referenciada pelas chaves R1, R2, R3, R4 e R5 NoSQL orientado por colunas Armazenamento do Hbase
  9. A proposta de abordagem • Precisamos de um conjunto Q de consultas mais frequentes a serem feitas em uma tabela de fatos e suas dimensões • Matriz de Uso de Atributos (AUM) – Contém informações dos atributos que são utilizados nas consultas mais frequentes • Matriz de Afinidade de Atributos (AAM) – Contém informações dos atributos que são consultados simultaneamente nas consultas mais frequentes
  10. Construindo Famílias da Coluna: • Uso de técnicas de agrupamento (clustering) – Técnica usada para agrupar dados com informações semelhantes – Ela tem como entrada um conjunto de atributos obtidos a partir da Matriz de Afinidade de Atributos (AAM) – A saída são famílias de colunas formadas por atributos/elementos que tenham características semelhantes • Entre vários tipos de algoritmos de agrupamento o algoritmo escolhido foi o k-means – Permite construir o número máximo dos grupos possíveis – Tem entrada a matriz de afinidade de atributo (AAM) e um número k – A saída é um conjunto k de famílias de colunas A proposta de abordagem
  11. A proposta de abordagem
  12. Implementação, Experimentos e Resultados • Para o experimento é usado uma tabela de fatos e suas 9 tabelas de dimensões • Foram selecionados 19 consultas que acessam 67 atributos explorando todo o esquema da tabela de fatos • O banco de dados não relacional usado foi HBase.
  13. • Foram calculam cubos OLAP com base nas 19 consultas com um número gradualmente crescente dimensões • O grau dessa dimensionalidade é dividido em 3 níveis: – pequeno (SD), médio (MD) e grande (LD) – Quanto maior o grau de dimensionalidade da consulta, maior será o numero de informações (tabelas, atributos e predicados) usados para efetuar uma consulta Implementação, Experimentos e Resultados
  14. • Benchmark TPC-DS foi usado para avaliar o desempenho da técnica • O método proposto foi analisado com os valores de k: • k = 4 • k = 11 • k = 13 • Outros dois métodos foram escolhidos para serem comparados ao nosso: – Flat Schema • Os dados são armazenados em uma tabela Hbase com uma família de colunas para todos os atributos – Naıve schema • Os dados são armazenados em uma tabela Hbase com 10 famílias de colunas Implementação, Experimentos e Resultados
  15. Implementação, Experimentos e Resultados Duração do tempo de execução das consultas q1, q2, q3 Pequeno (SD)
  16. Implementação, Experimentos e Resultados Duração do tempo de execução das consultas q1, q2, q3 • Esquema k = 4 – Não teve um bom resultado pela má escolha do número de famílias da colunas k; os atributos nas famílias de colunas não estão bem agrupados. • Flat schema – Todos os atributos das tabelas de fatos e dimensões são combinados em uma família de colunas; HBase solicita que carregue na memória um grande número de arquivos HFiles • Naive schema, k = 11, k = 13 – HBase explora famílias de colunas com tamanhos de dados pequenos – O número de HFiles na memória é pequeno
  17. Implementação, Experimentos e Resultados Duração do tempo de execução das consultas q4 a q12 Médio (MD)
  18. Implementação, Experimentos e Resultados Duração do tempo de execução das consultas q13 a q19 Grande (LD)
  19. Implementação, Experimentos e Resultados Pequeno (SD), Médio (MD) e Grande (LD), Tempo de resposta das consultas globais de q1 a q19
  20. Conclusão • O objetivo principal deste trabalho é a transformação do data warehouse relacional em um data warehouse NoSQL colunar (CN-DW). • Vários testes foram feitos usando benchmark TPC-DS • Os resultados obtidos, comparado aos outros métodos, confirmam os benefícios das técnicas de agrupamento (clustering) para a criação de famílias de colunas aumentando assim o desempenho das consultas
Publicité