Tabelas em Fabric Data Warehouse

Aplica-se a: ✅ Armazém em Microsoft Fabric

Este artigo detalha conceitos-chave para criar tabelas no Microsoft Fabric.

Nas tabelas, os dados são organizados logicamente em um formato de linha e coluna. Cada linha representa um registro exclusivo e cada coluna representa um campo no registro.

Determinar categoria de tabela

Um esquema em estrela organiza os dados em tabelas factuais e tabelas dimensionais. Algumas tabelas são usadas para integração ou preparo de dados antes de passar para uma tabela de fatos ou dimensões. Ao projetar uma tabela, decida se os dados da tabela pertencem a uma tabela de fato, dimensão ou integração. Esta decisão determina a estrutura de tabela adequada.

  • As tabelas de fatos contêm dados quantitativos que geralmente são gerados em um sistema transacional e, em seguida, carregados no data warehouse. Por exemplo, uma empresa de varejo gera transações de vendas todos os dias e, em seguida, carrega os dados em uma tabela de fatos de data warehouse para análise.

  • As tabelas de dimensão contêm dados de atributos que podem ser alterados, mas geralmente mudam com pouca frequência. Por exemplo, o nome e o endereço de um cliente são armazenados em uma tabela de dimensões e atualizados somente quando o perfil do cliente muda. Para minimizar o tamanho de uma grande tabela de fatos, o nome e o endereço do cliente não precisam estar em todas as linhas de uma tabela de fatos. Em vez disso, a tabela de fatos e a tabela de dimensões podem compartilhar uma ID de cliente. Uma consulta pode unir as duas tabelas para associar o perfil e as transações de um cliente.

  • As tabelas de integração fornecem um local para integrar ou preparar dados. Por exemplo, você pode carregar dados em uma tabela de preparo, executar transformações nos dados em preparo e, em seguida, inserir os dados em uma tabela de produção.

Uma tabela armazena dados no OneLake como parte do Depósito. A tabela e os dados persistem independentemente de uma sessão estar aberta ou não.

Mesas no armazém

Para mostrar a organização das tabelas, você pode usar fact, dimou int como prefixos para os nomes das tabelas. A seguinte tabela mostra alguns dos nomes de esquema e tabela para o armazém de dados de exemplo WideWorldImportersDW.

WideWorldImportersDW Nome da tabela de origem Tipo de Tabela Nome da Tabela Data Warehouse
Cidade Dimensão wwi.DimCity
Pedido Fato wwi.FactOrder
  • Os nomes de tabela não podem conter / ou \ ou terminar com um ..
  • Pode criar tabelas temporárias (#temp) com âmbito da sessão no Fabric Data Warehouse. Para mais informações, consulte Tabelas temporárias em Fabric Data Warehouse.

Criar uma tabela

Para o Warehouse, você pode criar uma tabela como uma nova tabela vazia. Você também pode criar e preencher uma tabela com os resultados de uma instrução de seleção. A seguir estão os comandos T-SQL para criar uma tabela.

Instrução T-SQL Descrição
CRIAR TABELA Cria uma tabela vazia definindo todas as colunas e opções da tabela.
CRIAR TABELA COMO SELECT Preenche uma nova tabela com os resultados de uma instrução select. As colunas da tabela e os tipos de dados baseiam-se nos resultados da instrução select. Para importar dados, esta instrução pode selecionar a partir de uma tabela externa.

Este exemplo cria uma tabela com duas colunas:

CREATE TABLE MyTable (col1 int, col2 int );

O Fabric Data Warehouse suporta colunas IDENTITY (Pré-visualização) em tabelas para inserir automaticamente uma sequência crescente de números.

Nomes de esquema

O Warehouse suporta a criação de esquemas personalizados. Tal como no SQL Server, os esquemas são uma boa forma de agrupar objetos que são usados de forma semelhante. O código a seguir cria um esquema definido pelo usuário chamado wwi.

  • Os nomes de esquema não podem conter / ou \ ou terminar com um ..
CREATE SCHEMA wwi;

Tipos de dados

O Microsoft Fabric suporta os tipos de dados T-SQL mais comuns.

Agrupamento

Os armazéns de fabrico são configurados com base na definição de agrupamento do espaço de trabalho, que por defeito é a colação com diferenciação de maiúsculas e minúsculas (CS) Latin1_General_100_BIN2_UTF8. Ao criar um novo armazém, o agrupamento do espaço de trabalho será usado. Para mais informações, veja Data Warehouse colação.

As colações de armazém suportadas são:

  • Latin1_General_100_BIN2_UTF8 (padrão)
  • Latin1_General_100_CI_AS_KS_WS_SC_UTF8

Você pode criar um armazém com um agrupamento não padrão usando a API REST. Para obter mais informações, consulte Como criar um armazém com ordenação que não diferencia maiúsculas de minúsculas (CI).

Depois que o agrupamento for definido durante a criação do banco de dados, todos os objetos subsequentes (tabelas, colunas, etc.) herdarão esse agrupamento padrão. Depois que um depósito é criado, a configuração de agrupamento não pode ser alterada.

Estatísticas

O otimizador de consulta usa estatísticas em nível de coluna quando cria o plano para executar uma consulta. Para melhorar o desempenho da consulta, é importante ter estatísticas sobre colunas individuais, especialmente colunas usadas em junções de consulta. O Warehouse suporta a criação automática de estatísticas.

A atualização estatística não acontece automaticamente. Atualize as estatísticas depois que um número significativo de linhas for adicionado ou alterado. Por exemplo, atualize as estatísticas após uma carga. Para mais informações, consulte Estatísticas em Fabric Data Warehouse.

Chave primária, chave estrangeira e chave exclusiva

Para o Warehouse, PRIMARY KEY e UNIQUE as restrições só são suportadas quando NONCLUSTERED e NOT ENFORCED são ambas usadas.

FOREIGN KEY só é suportado quando NOT ENFORCED é utilizado.

Alinhar os dados de origem com o data warehouse

As tabelas de depósito são preenchidas carregando dados de outra fonte de dados. Para obter uma carga bem-sucedida, o número e os tipos de dados das colunas nos dados de origem devem estar alinhados com a definição da tabela no depósito.

Se os dados forem provenientes de vários armazenamentos de dados, você poderá portá-los para o depósito e armazená-los em uma tabela de integração. Uma vez que os dados estejam na tabela de integração, pode usar o poder do armazém para implementar operações de transformação. Depois que os dados estiverem preparados, você poderá inseri-los em tabelas de produção.

Limitações

O Warehouse suporta muitos, mas não todos, dos recursos de tabela oferecidos por outros bancos de dados.

  • Atualmente, não há suporte para tabelas temporárias globais.

A lista a seguir mostra alguns dos recursos de tabela que não são suportados no momento.

  • 1.024 colunas máximas por tabela

  • Colunas computadas

  • Visualizações indexadas

  • Tabelas particionadas

  • Sequência

  • Colunas esparsas

  • Sinónimos

  • Acionadores

  • Índices exclusivos

  • Tipos definidos pelo usuário

  • Tabelas externas

  • Os metadados dos objetos do armazém são armazenados em cache por Fabric Data Warehouse para fornecer acesso rápido aos objetos e às suas definições. Para armazéns muito grandes com mais de 750.000 objetos (por exemplo, tabelas, exibições, procedimentos armazenados e funções), os metadados não são mais armazenados em cache pelo sistema. Em vez disso, as operações de esquema consultam o repositório de metadados diretamente. Isso garante a estabilidade do sistema e evita a falta de cache em bancos de dados extremamente grandes. No entanto, as operações de atualização de esquema podem levar mais tempo em comparação com armazéns menores onde o cache de metadados está habilitado.

Importante

Existem limitações na adição de restrições de tabela ou colunas ao utilizar o Git Integration para o desenvolvimento do Fabric Warehouse.