Entender os fundamentos do data warehouse

Concluído

O processo de criação de um data warehouse moderno normalmente consiste em:

  • Ingestão de dados – Mover dados de sistemas de origem para um data warehouse.
  • Armazenamento de dados – Armazenamento dos dados em um formato otimizado para análise.
  • Processamento de dados – Transformação dos dados em um formato pronto para consumo por ferramentas de análise.
  • Análise e entrega de dados – Análise dos dados para obter insights e fornecê-los à empresa.

O Microsoft Fabric permite que engenheiros e analistas de dados ingiram, armazenem, transformem e visualizem dados em uma única ferramenta com uma experiência tradicional e que faz uso de pouca codificação.

Entender a experiência de data warehouse do Fabric

O data warehouse do Fabric é relacional e dá suporte a todos os recursos T-SQL transacionais compatíveis com um data warehouse corporativo. Ele é um data warehouse totalmente gerenciado, escalonável e altamente disponível que pode ser usado para armazenar e consultar dados no lakehouse. Com o data warehouse, você tem controle total sobre a criação de tabelas e o carregamento, a transformação e a consulta de dados por meio do portal do Fabric ou de comandos T-SQL. É possível usar o SQL para consultar e analisar os dados ou o Spark para processá-los e criar modelos de machine learning.

Os data warehouses no Fabric facilitam a colaboração entre engenheiros de dados e analistas de dados, que trabalham juntos na mesma experiência. Os engenheiros de dados criam uma camada relacional nos dados do lakehouse que pode ser usada por analistas por meio do T-SQL e do Power BI para explorar os dados.

Projetar um data warehouse

Como todos os bancos de dados relacionais, o data warehouse do Fabric contém tabelas para armazenar seus dados para análises posteriores. Normalmente, essas tabelas são organizadas em um esquema otimizado para modelagem multidimensional. Nesta abordagem, os dados numéricos relacionados a eventos (como ordens de vendas) são agrupados por diferentes atributos (como data, cliente e loja). Por exemplo, é possível analisar o valor total pago por ordens de vendas ocorridas em uma data específica ou em uma determinada loja.

Tabelas em um data warehouse

As tabelas em um data warehouse geralmente são organizadas a fim de dar suporte à análise eficiente e eficaz de grandes quantidades de dados. Essa organização costuma ser chamada de modelagem dimensional, e envolve a estruturação de tabelas em tabelas de fatos e tabelas de dimensões.

As tabelas de fatos contêm os dados numéricos que você deseja analisar. Essas tabelas geralmente têm um grande número de linhas e são a principal fonte de dados para análise. Por exemplo, uma tabela de fatos pode conter o valor total pago por ordens de vendas que ocorreram em uma data específica ou em uma loja específica.

As tabelas de dimensões contêm informações descritivas sobre os dados que estão nas tabelas de fatos. As tabelas de dimensões geralmente têm um pequeno número de linhas e são usadas para fornecer contexto com relação aos dados nas tabelas de fatos. Por exemplo, uma tabela de dimensões pode conter informações sobre os clientes que fizeram ordens de vendas.

Além das colunas de atributos, uma tabela de dimensões contém uma coluna de chave exclusiva que identifica exclusivamente cada linha na tabela. Na verdade, é comum que uma tabela de dimensões inclua duas colunas de chave:

  • Uma chave substituta é um identificador exclusivo para cada linha na tabela de dimensões. Muitas vezes, consiste em um valor inteiro que é gerado automaticamente pelo sistema de gerenciamento de banco de dados quando uma nova linha é inserida na tabela.
  • Uma chave alternativa geralmente é uma chave natural ou de negócios que identifica uma instância específica de uma entidade no sistema de origem transacional, como um código de produto ou ID de cliente.

Você precisa de chaves substitutas e alternativas em um data warehouse, porque elas atendem a propósitos diferentes. As chaves substitutas são específicas do data warehouse e ajudam a manter a consistência e a precisão dos dados. As chaves alternativas são específicas do sistema de origem e ajudam a manter a rastreabilidade entre o data warehouse e o sistema de origem.

Tipos especiais de tabelas de dimensões

Tipos especiais de dimensões fornecem contexto adicional e permitem uma análise de dados mais abrangente.

As dimensões de tempo fornecem informações sobre o período em que um evento ocorreu. Essa tabela permite que analistas de dados agreguem dados em intervalos temporais. Por exemplo, uma dimensão de tempo pode incluir colunas para o ano, o trimestre, o mês e o dia em que uma ordem de venda foi feita.

As dimensões que mudam lentamente são tabelas de dimensões que rastreiam alterações nos atributos de dimensão ao longo do tempo, como alterações no endereço de um cliente ou no preço de um produto. Elas são importantes em um data warehouse porque permitem que os usuários analisem e entendam as alterações nos dados ao longo do tempo. As dimensões que mudam lentamente garantem que os dados permaneçam atualizados e precisos, o que é fundamental para tomar boas decisões de negócios.

Designs de esquema de data warehouse

Na maioria dos bancos de dados transacionais usados em aplicativos empresariais, os dados são normalizados para reduzir a duplicação. No entanto, em um data warehouse, os dados de dimensão geralmente são desnormalizados para reduzir o número de junções necessárias para consultá-los.

Muitas vezes, um data warehouse é organizado como um esquema em estrela, em que uma tabela de fatos está diretamente relacionada às tabelas de dimensões, conforme mostrado neste exemplo:

Diagrama de um design de esquema em estrela exibindo uma tabela FactSales com cinco dimensões que formam uma estrela.

É possível usar os atributos de algo para agrupar números na tabela de fatos em diferentes níveis. Por exemplo, é possível encontrar a receita total de vendas para toda uma região ou somente para um cliente. As informações de cada nível podem ser armazenadas na mesma tabela de dimensões.

Dica

Confira O que é um esquema em estrela? para saber mais sobre como projetar esquemas em estrela para o Fabric.

Se houver muitos níveis ou algumas informações forem compartilhadas por itens diferentes, pode fazer sentido usar um esquema floco de neve. Aqui está um exemplo:

Diagrama de um design de esquema floco de neve exibindo diversas dimensões.

Nesse caso, a tabela DimProduct foi dividida (normalizada) a fim de criar tabelas de dimensões separadas para categorias de produtos e fornecedores.

  • Cada linha na tabela DimProduct contém valores de chave para as linhas correspondentes nas tabelas DimCategory e DimSupplier.

Uma tabela DimGeography foi adicionada e contém informações sobre onde os clientes e as lojas estão.

  • Cada linha nas tabelas DimCustomer e DimStore contém um valor de chave para a linha correspondente na tabela DimGeography.