Escolha um modo de armazenamento

Concluído

A primeira decisão de design para qualquer modelo semântico no Microsoft Fabric é como os dados fluem para dentro do modelo. O modo de armazenamento que escolher afeta o desempenho das consultas, a frescura dos dados e quais as funcionalidades do Fabric disponíveis. No Fabric, o Direct Lake é o padrão, e para a maioria das cargas de trabalho é a escolha certa.

Modo Direct Lake

Direct Lake é o modo de armazenamento predefinido para modelos semânticos criados em Microsoft Fabric. Ao contrário do modo Importação, o Direct Lake não copia dados para o modelo. Ao contrário do DirectQuery, não traduz consultas para SQL de origem. Em vez disso, o Direct Lake lê tabelas Delta diretamente do OneLake para a memória, o que combina a rapidez do Import com a frescura do DirectQuery.

Quando um utilizador abre um relatório suportado por um modelo semântico Direct Lake, o motor carrega dados de colunas a partir de ficheiros Delta Parquet sob demanda. Não precisas de agendar uma atualização, como acontece com o modo de importação. Quando as tabelas Delta subjacentes atualizam, o modelo reflete essas alterações.

Os modelos Direct Lake ativam automaticamente o grande formato de armazenamento semântico dos modelos. Esta configuração remove o limite de tamanho de modelo de 10 GB e é um pré-requisito para o escalamento de consulta e para o acesso de leitura/escrita ao endpoint XMLA. Não precisas de o ativar manualmente para modelos Direct Lake.

Opções de ligação ao Direct Lake

Os modelos Direct Lake podem ligar-se aos dados através de dois caminhos:

  • Mesas OneLake: O modelo liga-se diretamente às mesas Delta numa casa de lago ou armazém. Este é o caminho mais simples e funciona bem quando os seus dados estão num único armazenamento de dados Fabric.
  • Endpoint de análise SQL: O modelo conecta-se através do endpoint SQL de um data lakehouse ou armazém de dados. Este caminho permite o acesso a vistas, consultas cruzadas entre bases de dados e funcionalidades de segurança definidas na camada SQL.

Escolha tabelas OneLake quando os seus dados são simples e estão num só lugar. Escolha o endpoint de análise SQL quando precisar de vistas, joins entre fontes ou segurança ao nível de linha definida em SQL.

Comportamento de recuo

Algumas operações podem fazer com que um modelo Direct Lake volte ao modo DirectQuery. Cálculos complexos de DAX, consultas que excedem a memória disponível ou certas operações não suportadas desencadeiam este recurso. Quando ocorre o fallback, a consulta é executada contra o endpoint de análise SQL em vez de ler diretamente os ficheiros Delta.

Pode configurar o comportamento alternativo nas definições do modelo semântico.

  • Permitir fallback: Consultas que não podem correr em modo Direct Lake revertem automaticamente para DirectQuery. O utilizador obtém resultados, mas o desempenho pode diminuir.
  • Despermitir o fallback: Consultas que não conseguem ser executadas no modo Direct Lake devolvem um erro. Esta opção garante um desempenho consistente, mas exige que todas as consultas permaneçam dentro das capacidades do Direct Lake.

Para a maioria das cargas de trabalho de produção, comece com o modo de contingência ativado e monitorize quais consultas o desencadeiam. Depois, otimize essas consultas ou estruturas de dados para reduzir a frequência de fallback ao longo do tempo.

Modo de importação

O modo de importação copia os dados para o modelo semântico e armazena-os num formato comprimido em memória. As consultas são executadas contra a cópia local, o que torna o Import o modo de armazenamento mais rápido para o desempenho das consultas. No entanto, os dados só são tão atuais quanto a última atualização.

O modo importação é a escolha certa quando:

  • A sua fonte de dados está fora do Fabric (bases de dados locais, APIs de terceiros, ficheiros planos).
  • O desempenho das consultas é a prioridade máxima e não é necessária atualização em tempo quase real.
  • Precisas de funcionalidades que ainda não são suportadas no Direct Lake.

Tip

Ao usar o modo Importação, ligue-se a vistas em vez de tabelas brutas, inclua apenas as colunas necessárias e use tipos de dados apropriados para reduzir o tamanho do modelo. Saiba mais sobre técnicas para reduzir dados carregados em modelos de importação.

Modo DirectQuery

O DirectQuery envia consultas diretamente para a fonte de dados no momento da consulta. Nenhum dado é armazenado no modelo, o que torna o DirectQuery adequado para cenários de dados em tempo real e conjuntos de dados muito grandes que não podem ser importados.

A troca é o desempenho. Cada interação com o relatório gera uma consulta contra o sistema de origem. O DirectQuery funciona melhor quando:

  • Dados em tempo real são necessários e mesmo atrasos curtos de atualização não são aceitáveis.
  • Os volumes de dados de origem são demasiado grandes para importar, e a fonte de dados está fora do Fabric.
  • Os requisitos de governação exigem que os dados permaneçam na fonte.

Tip

Para mais informações, consulte as orientações do modelo DirectQuery.

Modo composto

O modo composto combina modos de armazenamento dentro de um único modelo. Algumas tabelas usam Import, enquanto outras usam DirectQuery ou Direct Lake. Isto proporciona flexibilidade para cenários em que diferentes tabelas têm necessidades distintas de desempenho e frescura.

Por exemplo, uma grande tabela de factos pode ficar no Direct Lake, enquanto uma pequena tabela de referência de uma fonte externa usa Import. O modo composto permite também relações muitos-para-muitos entre tabelas de diferentes fontes de dados.

Use o modo composto quando:

  • Precisas de dados tanto de fontes Fabric como não-Fabric no mesmo modelo.
  • Algumas tabelas requerem dados em tempo real, enquanto outras beneficiam de desempenho em cache.
  • É necessário combinar tabelas Direct Lake com tabelas de importação para análise entre fontes.

Escolha o modo de armazenamento certo

A tabela seguinte resume quando escolher cada modo:

Modo Localização dos dados Velocidade de consulta Atualidade dos dados Melhor para
Direct Lake OneLake (tabelas Delta) Rápido Quase em tempo real Cargas de trabalho nativas do Fabric (padrão)
Importação Cache dentro do modelo Mais rápido Dependente da atualização Fontes não-Fabric, desempenho máximo
DirectQuery Sistema fonte Depende do sistema de origem Quase em tempo real Requisitos em tempo real, dados externos muito grandes
Compósito Mixed Variações Mixed Cenários multi-fonte, requisitos híbridos

O modo de armazenamento também afeta o consumo da IA. Quando o Copilot ou os agentes de dados consultam um modelo semântico, devolvem respostas com base nos dados que o modelo reflete atualmente. A atualização quase em tempo real do Direct Lake significa que as consultas de IA devolvem resultados atuais sem esperar por uma atualização agendada. Para modelos que servem tanto utilizadores humanos como IA, a escolha do modo de armazenamento afeta diretamente a qualidade de ambas as experiências.

No Fabric, começa com o Direct Lake. Só muda para outro modo quando o teu cenário específico o exigir.