Esquema Star e Snowflake no Data Warehouse com exemplos

O que é esquema multidimensional?

Esquema Multidimensional é especialmente projetado para modelar sistemas de data warehouse. Os esquemas são projetados para atender às necessidades exclusivas de bancos de dados muito grandes projetados para fins analíticos (OLAP).

Tipos de esquema de data warehouse:

A seguir estão três tipos principais de esquemas multidimensionais, cada um com suas vantagens exclusivas.

  • Star Schedule
  • Esquema de Floco de Neve
  • Diagrama de Galáxia

Neste tutorial, você aprenderá mais sobre-

O que é um esquema em estrela?

Star Schedule no data warehouse, no qual o centro da estrela pode ter uma tabela de fatos e várias tabelas de dimensão associadas. É conhecido como esquema em estrela, pois sua estrutura se assemelha a uma estrela. O modelo de dados Star Schema é o tipo mais simples de esquema de Data Warehouse. Ele também é conhecido como Star Join Schema e é otimizado para consultar grandes conjuntos de dados.

No seguinte exemplo de esquema em estrela, a tabela de fatos está no centro, que contém chaves para todas as tabelas de dimensão, como Dealer_ID, ID do modelo, Date_ID, Product_ID, Branch_ID e outros atributos, como Unidades vendidas e receita.

Exemplo de diagrama de esquema em estrela

Características do esquema em estrela:

  • Cada dimensão em um esquema em estrela é representada com a única tabela de uma dimensão.
  • A tabela de dimensões deve conter o conjunto de atributos.
  • A tabela de dimensão é unida à tabela de fatos usando uma chave estrangeira
  • As tabelas de dimensão não estão unidas entre si
  • A tabela de fatos conteria chave e medida
  • O esquema Star é fácil de entender e fornece o uso ideal do disco.
  • As tabelas de dimensão não são normalizadas. Por exemplo, na figura acima, Country_ID não tem a tabela de pesquisa de país como um design OLTP teria.
  • O esquema é amplamente suportado por ferramentas de BI

O que é um esquema do floco de neve?

Esquema de Floco de Neve no data warehouse é um arranjo lógico de tabelas em um banco de dados multidimensional, de modo que o Diagrama IS assemelha-se a uma forma de floco de neve. Um Esquema em Floco de Neve é ​​uma extensão de um Esquema em Estrela e adiciona dimensões adicionais. As tabelas de dimensão são normalizadas, o que divide os dados em tabelas adicionais.

No exemplo a seguir do Esquema de Floco de Neve, País é normalizado em uma tabela individual.

Exemplo de esquema de floco de neve

Características do esquema do floco de neve:

  • O principal benefício do esquema em floco de neve é ​​que usa menos espaço em disco.
  • Mais fácil de implementar uma dimensão é adicionado ao Esquema
  • Devido a várias tabelas, o desempenho das consultas é reduzido
  • O principal desafio que você enfrentará ao usar o Esquema do floco de neve é ​​que você precisa realizar mais esforços de manutenção por causa de mais tabelas de pesquisa.

Esquema em estrela versus esquema em floco de neve: principais diferenças

A seguir está uma diferença fundamental entre o esquema em estrela e o esquema em floco de neve:

Star Schedule Esquema de Floco de Neve
As hierarquias para as dimensões são armazenadas na tabela dimensional.As hierarquias são divididas em tabelas separadas.
Ele contém uma tabela de fatos cercada por tabelas de dimensão.Uma tabela de fatos cercada por uma tabela de dimensão que, por sua vez, é cercada por uma tabela de dimensão
Em um esquema em estrela, apenas uma única junção cria o relacionamento entre a tabela de fatos e quaisquer tabelas de dimensão.Um esquema em floco de neve requer muitas junções para buscar os dados.
Projeto de banco de dados simples.Projeto de banco de dados muito complexo.
A estrutura de dados desnormalizados e a consulta também são executadas com mais rapidez.Estrutura de dados normalizada.
Alto nível de redundância de dadosRedundância de dados de nível muito baixo
A tabela de dimensão única contém dados agregados.Dados divididos em diferentes tabelas de dimensão.
O processamento do cubo é mais rápido.O processamento do cubo pode ser lento devido à junção complexa.
Oferece consultas de alto desempenho usando Star Join Query Optimization. As tabelas podem ser conectadas com várias dimensões.O esquema Snowflake é representado por uma tabela de fatos centralizada que provavelmente está conectada a várias dimensões.

O que é um esquema de galáxia?

PARA Diagrama de Galáxia contém duas tabelas de fatos que compartilham tabelas de dimensões entre elas. É também chamado de Esquema de Constelação de Fato. O esquema é visto como uma coleção de estrelas, daí o nome Galaxy Schema.

Exemplo de esquema de galáxia

Como você pode ver no exemplo acima, há duas tabelas de fatos

  1. Receita
  2. Produtos.

No esquema do Galaxy, as dimensões compartilhadas são chamadas de dimensões conformadas.

Características do esquema de galáxia:

  • As dimensões neste esquema são separadas em dimensões separadas com base nos vários níveis de hierarquia.
  • Por exemplo, se a geografia tem quatro níveis de hierarquia, como região, país, estado e cidade, o esquema Galaxy deve ter quatro dimensões.
  • Além disso, é possível construir esse tipo de esquema dividindo o esquema de uma estrela em mais esquemas de estrela.
  • As dimensões são grandes neste esquema, o que é necessário para construir com base nos níveis de hierarquia.
  • Este esquema é útil para agregar tabelas de fatos para melhor compreensão.

O que é Star Cluster Schema?

O esquema do floco de neve contém hierarquias totalmente expandidas. No entanto, isso pode adicionar complexidade ao Esquema e requer junções extras. Por outro lado, o esquema em estrela contém hierarquias totalmente colapsadas, o que pode levar à redundância. Portanto, a melhor solução pode ser um equilíbrio entre esses dois esquemas, que é o design do Star Cluster Schema.

Exemplo de esquema de cluster em estrela

Dimensões sobrepostas podem ser encontradas como bifurcações em hierarquias. Uma bifurcação ocorre quando uma entidade atua como pai em duas hierarquias dimensionais diferentes. Entidades bifurcadas então identificadas como classificação com relacionamentos um-para-muitos.

Resumo:

  • O esquema multidimensional é especialmente projetado para modelar sistemas de data warehouse
  • O esquema em estrela é o tipo mais simples de esquema de Data Warehouse. É conhecido como esquema em estrela, pois sua estrutura se assemelha a uma estrela.
  • Um Esquema em Floco de Neve é ​​uma extensão de um Esquema em Estrela e adiciona dimensões adicionais. É chamado de floco de neve porque seu diagrama se assemelha a um floco de neve.
  • Em um esquema em estrela, apenas uma única junção define o relacionamento entre a tabela de fatos e quaisquer tabelas de dimensão.
  • O esquema em estrela contém uma tabela de fatos cercada por tabelas de dimensão.
  • O esquema do floco de neve é ​​cercado por uma tabela de dimensão que, por sua vez, é cercada por uma tabela de dimensão
  • Um esquema em floco de neve requer muitas junções para buscar os dados.
  • Um Galaxy Schema contém duas tabelas de fatos que compartilham tabelas de dimensões. É também chamado de Esquema de Constelação de Fato.
  • O esquema do cluster Star contém atributos do Esquema Star e Snowflake.