Durante os vídeos foi dito que existem situações onde é melhor usar o modelo snow flake e situações onde é melhor usar o modelo star schema, daí gostaria de saber quando utilizar cada um destes modelos com vantagens e desvantagens.
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Durante os vídeos foi dito que existem situações onde é melhor usar o modelo snow flake e situações onde é melhor usar o modelo star schema, daí gostaria de saber quando utilizar cada um destes modelos com vantagens e desvantagens.
Oi Thiago, tudo bem?
Vamos fazer uma comparação entre os modelos:
Otimização de dados
O modelo Snowflake usa dados normalizados, quer dizer que os dados são organizados no database para eliminar a redundância e então ajudar a reduzir a quantidade de dados. A hierarquia dos negócios e suas dimensões são preservadas no modelo de dados por meio do relacionamento de chave externa e chave primária. O modelo Star, por outro lado, usa dados não normalizados. Nesse modelo, as dimensões se referem diretamente a tabela de fatos e a hierarquia de negócios não é feito por meio do relacionamento de chave externa e chave primária.
Modelo de negócios
Chave primária é uma chave única (atributo de dados) que é selecionada para dados específicos. No modelo Snowflake, a hierarquia de negócios do modelo de dados é representada em um relacionamento de chave externa e chave primária entre as várias tabelas de dimensões. No modelo Star, todas as tabelas de dimensões necessárias têm apenas chaves estrangeiras nas tabelas de fatos.
Desempenho
O modelo Snowflake possui mais junções entre a tabela de dimensões e a tabela de fatos, portanto, o desempenho é mais lento. Por exemplo, se você deseja saber os detalhes do anunciante, esse modelo vai pedir muitas informações, como nome, ID e endereço do anunciante, sobre as quais o anunciante e a tabela da conta precisam ser unidas e depois unidas com a tabela de fatos. O modelo Star, possui menos junções entre as tabelas de dimensões e a tabela de fatos. Nesse modelo, se você precisar de informações sobre o anunciante, basta associar a tabela de dimensões do anunciantes a tabela de fatos.
Feito essa comparação, vamos responder sua dúvida: Snow Flake ou Star Schema quando usar?
O modelo Snowflake, a análise de dimensão é mais fácil. Por exemplo, "Quantas contas ou campanhas estão online para um determinado anunciante?"
O modelo de esquema Star é útil para análise de métricas, como "Qual é a receita de um determinado cliente?"
Desculpa pela resposta enorme, rs e espero ter ajudado. Bons estudos :)