Compartilhar via


Visão geral do Direct Lake

O Direct Lake é uma opção de modo de armazenamento de tabela de modelo semântico Power BI disponível no Microsoft Fabric. Ele é otimizado para que grandes volumes de dados sejam carregados rapidamente na memória das tabelas Delta disponíveis no OneLake , o único repositório para todos os dados de análise. Depois de carregado na memória, o modelo semântico habilita a análise interativa de alto desempenho.

Diagrama mostra um modelo semântico do Direct Lake e como ele se conecta às tabelas Delta no OneLake, conforme descrito nos parágrafos anteriores.

O Direct Lake é ideal para modelos semânticos que se conectam a grandes Fabric lakehouses, armazéns e outras fontes de dados Fabric com tabelas Delta. O Direct Lake é especialmente útil quando a replicação de todo o volume de dados em uma tabela de importação é impraticável ou impossível. As consultas Direct Lake e Import são processadas pelo mecanismo de consulta VertiPaq, enquanto o DirectQuery federa consultas à fonte de dados subjacente. As consultas Direct Lake e Import normalmente superam as consultas do DirectQuery ao carregar e interagir com visuais em relatórios.

No entanto, o Direct Lake difere do modo de importação de uma maneira importante: uma operação de atualização para um modelo semântico do Direct Lake é conceitualmente diferente de uma operação de atualização para um modelo semântico de importação. O modo de importação replica os dados e cria uma cópia inteira armazenada em cache dos dados para o modelo semântico, enquanto uma atualização do Direct Lake copia apenas metadados (conhecidos como enquadramento, descritos posteriormente neste artigo), o que pode levar alguns segundos para ser concluído. A atualização do Direct Lake é uma operação de baixo custo que analisa os metadados da versão mais recente das tabelas Delta e atualiza as referências aos arquivos mais recentes no OneLake. Por outro lado, uma atualização de importação produz uma cópia dos dados, o que pode levar um tempo considerável e consumir recursos significativos de fonte de dados e capacidade (memória e CPU). O Direct Lake move a preparação de dados para o OneLake e, ao fazê-lo, usa toda a amplitude das tecnologias de Fabric para preparação de dados, incluindo trabalhos do Spark, instruções DML T-SQL, fluxos de dados, pipelines e muito mais.

O modo de armazenamento Direct Lake oferece os seguintes principais benefícios:

  • Semelhante ao modo de importação, as consultas do Direct Lake são processadas pelo mecanismo VertiPaq e, portanto, fornecem desempenho de consulta comparável ao modo de importação sem a sobrecarga de gerenciamento dos ciclos de atualização de dados para carregar todo o volume de dados.
  • Usa investimentos de Fabric existentes integrando-se perfeitamente a grandes lakehouses, armazéns e outras fontes Fabric com tabelas Delta. Por exemplo, Direct Lake é uma opção ideal para a camada de análise de ouro na arquitetura medalhão lakehouse.
  • Maximiza o retorno sobre o investimento (ROI) porque os volumes de dados analisados podem exceder os limites máximos de memória da capacidade, pois apenas os dados necessários para responder a uma consulta são carregados na memória.
  • Minimiza as latências de dados sincronizando rapidamente e automaticamente um modelo semântico com suas fontes, disponibilizando novos dados para usuários empresariais sem agendamentos de atualização.

Dica

O desempenho do Direct Lake depende de tabelas Delta bem ajustadas. Para obter diretrizes abrangentes sobre como otimizar tabelas para o consumo do Direct Lake, incluindo recomendações de V-Order e grupos de linhas, consulte Manutenção e otimização de tabelas entre diferentes cargas de trabalho.

Quando você deve usar o modo de armazenamento do Direct Lake?

O principal caso de uso para o modo de armazenamento do Direct Lake normalmente é para projetos de análise orientados por TI que usam arquiteturas centradas no lago. Nesses cenários, você tem ou espera acumular grandes volumes de dados no OneLake. O carregamento rápido desses dados na memória, as operações de atualização frequentes e rápidas, o uso eficiente dos recursos de capacidade e o desempenho rápido da consulta são importantes para esse caso de uso.

Nota

As tabelas Import e DirectQuery em modelos semânticos ainda são relevantes em Fabric e são a escolha certa do modelo semântico para alguns cenários. Por exemplo, o modo de importação de armazenamento geralmente funciona bem para um analista de autoatendimento que precisa de liberdade e agilidade para agir rapidamente e sem dependência de TI para adicionar novos elementos de dados.

Um modelo semântico com tabelas de importação e tabelas do Direct Lake oferece a escala e a flexibilidade necessárias para muitos cenários de BI.

Além disso, a integração OneLake grava automaticamente dados para tabelas no modo de armazenamento Importar para Tabelas Delta no OneLake sem envolver nenhum esforço de migração, permitindo-lhe aproveitar muitos dos benefícios de Fabric que são disponibilizados para usuários de modelo semântico de Import, como integração com lakehouses por meio de atalhos, consultas SQL, notebooks e muito mais. Recomendamos essa opção como uma maneira rápida de colher os benefícios do Fabric sem precisar reprojetar imediatamente ou necessariamente seu armazém de dados existente e/ou sistema de análise.

O Direct Lake depende da preparação de dados que está sendo feita no data lake. A preparação de dados pode ser feita usando várias ferramentas, como trabalhos do Spark para Fabric lakehouses, instruções DML T-SQL para Fabric warehouses, fluxos de dados, pipelines e outros, o que ajuda a garantir que a lógica de preparação de dados seja executada upstream na arquitetura para maximizar a reutilização. No entanto, se o autor do modelo semântico não tiver a capacidade de modificar o item de origem, por exemplo, se um analista de autoatendimento não tiver permissões de gravação em um lakehouse gerenciado por TI, aumentar o modelo com tabelas de modo de armazenamento de importação poderá ser uma boa opção, pois o modo de importação dá suporte à preparação de dados usando Power Query, que é definido como parte do modelo semântico.

Certifique-se de considerar sua licença de capacidade do Fabric e os guardrails de capacidade do Fabric ao avaliar o modo de armazenamento Direct Lake. Além disso, considere as considerações e limitações , que são descritas posteriormente neste artigo.

Dica

Recomendamos que você produza um protótipo — ou poc (prova de conceito)— para determinar se um modelo semântico do Direct Lake é a solução certa e reduzir o risco.

Conceitos-chave e terminologia

Este guia presume familiaridade com os seguintes conceitos:

  • Os usuários carregam e interagem com visuais em relatórios Power BI gerando consultas DAX para o modelo semântico.

  • Modo de armazenamento: o modelo semântico processa as consultas DAX de forma diferente, dependendo do modo de armazenamento de tabela usado. Por exemplo:

    • Os modos de importação e armazenamento do Direct Lake usam o mecanismo VertiPaq para processar consultas DAX e retornar resultados para o relatório e o usuário do Power BI.
    • O DirectQuery converte consultas DAX para a sintaxe de consulta da fonte de dados, como uma consulta SQL, e as executa no banco de dados de origem subjacente. Esses bancos de dados de origem normalmente não são otimizados para carga de consulta pesada proveniente de relatórios e consultas agregadas necessárias para os visuais e podem resultar em um desempenho mais lento quando comparados aos modos Import e Direct Lake.

O modo de armazenamento é uma propriedade de uma tabela no modelo semântico. Quando um modelo semântico inclui tabelas com modos de armazenamento diferentes, ele é conhecido como um modelo composto. Para obter mais informações sobre modos de armazenamento, consulte Semantic model modes in the serviço do Power BI.

O modo de armazenamento de tabela do Direct Lake tem duas opções:

  • Direct Lake no OneLake pode usar dados de uma ou mais fontes de dados Fabric com tabelas Delta. O Direct Lake no OneLake não reverte ao modo DirectQuery por meio do endpoint analítico SQL da fonte de dados. Modelos semânticos com o Direct Lake em tabelas OneLake também podem ter tabelas de importação adicionadas de outras fontes de dados.

  • Direct Lake no SQL pode usar os dados de uma única fonte de dados Fabric com tabelas Delta. O ponto de extremidade de análise do SQL é usado para descoberta de tabelas Delta e visualizações SQL, além de verificações de permissão. Os endpoints Direct Lake nos pontos de extremidade SQL retornam ao modo de armazenamento de tabelas DirectQuery caso não consigam carregar os dados diretamente de uma tabela Delta, como quando a fonte de dados é uma visualização SQL ou quando o data warehouse utiliza controle de acesso granular baseado em SQL. A propriedade de modelo semântico, o comportamento do Direct Lake, controla o comportamento de fallback.

Comparação de modos de armazenamento

A tabela a seguir compara o modo de armazenamento Direct Lake com os modos de armazenamento Import e DirectQuery.

Capacidade Direct Lake no OneLake Direct Lake em pontos de extremidade SQL Importação DirectQuery
Licenciamento Assinatura de capacidade do Fabric (SKUs) apenas Assinatura de capacidade do Fabric (somente SKUs) Qualquer licença Fabric ou Power BI (incluindo licenças gratuitas Microsoft Fabric) Qualquer licença Fabric ou Power BI (incluindo licenças gratuitas Microsoft Fabric)
Fonte de dados Tabelas de qualquer fonte de dados Fabric apoiadas por tabelas Delta Somente tabelas (ou exibições) de lakehouse ou warehouse Qualquer conector Qualquer conector que dê suporte ao modo DirectQuery
Conectar-se a exibições do ponto de extremidade de análise de SQL Não Sim – mas retornará automaticamente ao modo DirectQuery Sim Sim
Modelos compostos Sim – pode combinar com as tabelas no modo de armazenamento de importação na modelagem web do Power BI e tabelas DirectQuery com uso de ferramentas XMLA. Não 1 Sim – pode combinar com tabelas de modo de armazenamento DirectQuery, Dual e Direct Lake Sim – pode combinar com tabelas nos modos de armazenamento de importação, Dual e Direct Lake
SSO (logon único) Sim Sim Não aplicável Sim
Tabelas calculadas Sim – mas os cálculos não podem se referir a colunas de tabelas no modo Direct Lake. Não – exceto grupos de cálculo, parâmetros de hipótesese parâmetros de campo, que criam implicitamente tabelas calculadas Sim Não – tabelas calculadas usam o modo de armazenamento de importação mesmo quando se referem a outras tabelas no modo DirectQuery
Colunas calculadas Não Não Sim Sim
Tabelas híbridas Não Não Sim Sim
Modelar partições de tabela Não – no entanto, o particionamento pode ser feito no nível da tabela Delta Não – no entanto, o particionamento pode ser feito no nível da tabela Delta Sim – criado automaticamente pela atualização incremental ou criado manualmente usando o ponto de extremidade XMLA Não
Agregações definidas pelo usuário Não Não Sim – Há suporte para importar tabelas de agregação em tabelas DirectQuery Sim
Segurança em nível de objeto ou segurança em nível de coluna do ponto de extremidade de análise SQL Não Sim – mas pode produzir erros quando a permissão é negada Sim – mas deve duplicar permissões com a segurança em nível de objeto do modelo semântico Sim – mas as consultas podem produzir erros quando a permissão é negada
RLS (segurança em nível de linha) do ponto de extremidade da análise SQL Não Sim – mas as consultas retornarão ao modo DirectQuery Sim – mas deve duplicar permissões com o modelo semântico RLS Sim
RLS (segurança em nível de linha) do modelo semântico Sim – mas é altamente recomendável usar uma conexão de nuvem com identidade fixa. Sim – mas é altamente recomendável usar uma conexão de nuvem com identidade fixa. Sim Sim
OLS (segurança no nível do objeto) do modelo semântico Sim Sim Sim Sim
Volumes de dados grandes sem requisito de atualização Sim Sim Não Sim
Reduzir a latência de dados Sim – quando as atualizações automáticas estão habilitadas ou o reframamento programático Sim – quando as atualizações automáticas estão habilitadas ou o reframamento programático Não Sim
Power BI Embedded Sim 2 Sim 2 Sim Sim

1 Ao usar o Direct Lake em pontos de extremidade SQL, não é possível combinar tabelas de modo de armazenamento Direct Lake com tabelas do modo de armazenamento DirectQuery ou Dual no mesmo modelo semântico. No entanto, você pode usar Power BI Desktop para criar um modelo composto em um modelo semântico do Direct Lake e, em seguida, estendê-lo com novas tabelas (usando importação, DirectQuery ou modo de armazenamento duplo) ou cálculos. Para obter mais informações, consulte Criar um modelo composto em um modelo semântico.

2 requer um token de inserção V2. Se você estiver usando uma entidade de serviço, deverá usar uma conexão de nuvem com identidade fixa.

Para obter detalhes sobre como o Direct Lake funciona, incluindo o carregamento de colunas (transcodificação), o enquadramento, as atualizações automáticas e o fallback do DirectQuery, confira como o Direct Lake funciona.

Para obter detalhes sobre permissões, autenticação, OLS/RLS e opções de regra de acesso a dados, consulte Integrar a segurança do Direct Lake.

Requisitos de Capacidade Fabric

Os modelos semânticos do Direct Lake exigem uma licença de capacidade Fabric. Além disso, há proteções de capacidade e limitações que se aplicam à sua SKU (assinatura de capacidade) Fabric, conforme apresentado na tabela a seguir.

Importante

A primeira coluna na tabela a seguir também inclui assinaturas de capacidade Premium do Power BI (SKUs P). Microsoft está consolidando as opções de compra e desativando os SKUs Power BI Premium por capacidade. Os clientes novos e existentes devem considerar a compra de assinaturas de capacidade do Fabric (SKUs F).

Para obter mais informações, consulte Importante atualização no licenciamento do Power BI Premium e Power BI Premium.

SKU do Fabric Arquivos Parquet por tabela Grupos de linhas por tabela Linhas por tabela (milhões) Tamanho máximo do modelo em disco/OneLake (GB) Memória máxima (GB) 1
F2 1,000 1,000 300 10 3
F4 1,000 1,000 300 10 3
F8 1,000 1,000 300 10 3
F16 1,000 1,000 300 20 5
F32 1,000 1,000 300 40 10
F64/FT1/P1 5.000 5.000 1,500 Ilimitado vinte e cinco
F128/P2 5.000 5.000 3.000 Ilimitado 50
F256/P3 5.000 5.000 6.000 Ilimitado 100
F512/P4 10.000 10.000 12,000 Ilimitado 200
F1024/P5 10.000 10.000 24,000 Ilimitado 400
F2048 10.000 10.000 24,000 Ilimitado 400

1 Para modelos semânticos do Direct Lake, Memória máxima representa o limite de recursos de memória superior para a quantidade de dados que podem ser paginados. Por esse motivo, não é um guardrail; no entanto, ele poderá ter um impacto no desempenho se a quantidade de dados for grande o suficiente para causar troca excessiva de páginas dos dados do modelo no OneLake.

Caso os guardrails sejam excedidos, o comportamento dependerá do modo de armazenamento da tabela.

  • Direct Lake no OneLake: semelhante ao modo de importação, a atualização falha e o modelo não pode ser consultado até que as tabelas Delta sejam otimizadas para se enquadrarem nos limites de guardrail.
  • Direct Lake no SQL: retornará ao modo DirectQuery se o fallback estiver habilitado. A atualização de dados é bem-sucedida com um aviso, e as consultas ainda retornam resultados, mas com um desempenho mais lento.

O tamanho máximo do modelo no guardrail de disco/OneLake é avaliado no nível do modelo e afeta todas as consultas. Todos os outros verificadores de integridade apresentados na tabela são avaliados por consulta. Portanto, é importante que você otimize suas tabelas Delta e o modelo semântico Direct Lake para evitar a necessidade de aumentar desnecessariamente para um SKU maior do Fabric.

Além disso, Unidade de capacidade e Memória máxima por limites de consulta se aplicam a modelos semânticos do Direct Lake. Para saber mais, confira Capacidades e SKUs.

Considerações e limitações

Os modelos semânticos do Direct Lake têm algumas considerações e limitações.

Nota

As funcionalidades e os recursos dos modelos semânticos do Direct Lake estão evoluindo rapidamente. Verifique periodicamente para examinar a lista mais recente de considerações e limitações.

Consideração/limitação Direct Lake no OneLake Direct Lake em SQL (endpoint de análise)
Quando o endpoint de análise SQL aplica segurança em nível de linha, as consultas DAX são processadas de forma diferente, dependendo do tipo de modo Direct Lake utilizado.

Quando o Direct Lake no OneLake for empregado, as consultas serão bem-sucedidas e o RLS baseado em SQL não será aplicado. O Direct Lake no OneLake requer que o usuário tenha acesso aos arquivos no OneLake, que não observa o RLS baseado em SQL.
As consultas serão bem-sucedidas. Sim, a menos que o fallback esteja desabilitado, nesse caso, as consultas falharão.
Se uma tabela no modelo semântico for baseada em uma exibição SQL (não materializada), as consultas DAX serão processadas de forma diferente dependendo do tipo de modo Direct Lake empregado.

Neste caso, o Direct Lake nos pontos de extremidade SQL retornará ao DirectQuery.

Não há suporte para criar uma tabela Direct Lake no OneLake com base em uma exibição SQL não materializada. Em vez disso, use uma exibição materializada do lakehouse porque as tabelas Delta são criadas. Como alternativa, use um modo de armazenamento diferente, como Importar ou Direct Lake para tabelas com base em exibições SQL não materializadas.
Não aplicável Sim, a menos que o fallback esteja desabilitado, nesse caso, as consultas falharão.
Modelagem composta, o que significa que as tabelas de modelo semântico do Direct Lake podem ser misturadas com tabelas em outros modos de armazenamento, como Importação, DirectQuery ou Dual (exceto para casos especiais, incluindo grupos de cálculo, parâmetros de hipóteses e parâmetros de campo). Suportado Sem suporte
** Colunas calculadas e tabelas calculadas que fazem referência a colunas ou tabelas no modo de armazenamento do Direct Lake. Grupos de cálculo, parâmetros de hipóteses e parâmetros de campo, que criam implicitamente tabelas calculadas e tabelas calculadas que não fazem referência a colunas ou tabelas do Direct Lake têm suporte em todos os cenários. Sem suporte Sem suporte
As tabelas do modo de armazenamento Direct Lake não dão suporte a tipos de coluna de tabela Delta complexos. Tipos semânticos binários e GUID também não têm suporte. Você deve converter esses tipos de dados em cadeias de caracteres ou outros tipos de dados com suporte. Sem suporte Sem suporte
As relações de tabela exigem que os tipos de dados de colunas relacionadas correspondam. Sim Sim
As colunas de relações de um lado devem conter valores exclusivos. As consultas falharão se valores duplicados forem detectados em uma coluna de um lado. Sim Sim
Inteligência temporal de data/hora no Power BI Desktop para permitir a criação de relações usando apenas a parte de data de uma coluna de data e hora. Observação: há suporte para marcar sua própria tabela de datas como uma tabela de datas e criar relações usando colunas de data. Suportado Sem suporte
O comprimento dos valores de coluna de cadeia de caracteres é limitado a 32.764 caracteres Unicode. Sim Sim
Não há suporte para valores de ponto flutuante não numéricos, como NaN (não um número). Sim Sim
Publicar na Web do Power BI usando um principal de serviço só é suportado ao usar uma identidade fixa para o modelo semântico do Direct Lake. Sim Sim
Na experiência de modelagem da Web , a validação é limitada para modelos semânticos do Direct Lake. As seleções de usuário são consideradas corretas e nenhuma consulta é emitida para validar a cardinalidade ou seleções de filtro cruzado para relações ou para a coluna de data selecionada em uma tabela de data marcada. Sim Sim
No portal Fabric, a guia Direct Lake no histórico de atualizações lista falhas de atualização relacionadas ao Direct Lake. As operações de atualização (enquadramento) bem-sucedidas normalmente não são listadas, a menos que o status da atualização seja alterado, como nenhuma falha de execução ou atualização anterior para atualizar o êxito ou atualizar o êxito com o aviso. Sim Sim
O SKU Fabric determina a memória máxima disponível por modelo semântico do Direct Lake para a capacidade. Quando o limite é excedido, as consultas para o modelo semântico podem ser mais lentas devido à paginação excessiva dentro e fora dos dados do modelo. Sim Sim
Não há suporte para a criação de um modelo semântico do Direct Lake em um workspace que esteja em uma região diferente do workspace da fonte de dados. Por exemplo, se o Lakehouse estiver no Centro-Oeste dos EUA, você só poderá criar modelos semânticos a partir deste Lakehouse na mesma região. Para encontrar em qual região você está, consulte find your Fabric home region. Sim Sim

Uma solução alternativa é criar uma lakehouse no workspace da outra região e criar um atalho para as tabelas antes de criar o modelo semântico.
A inserção de relatórios requer um token de inserção V2. Sim Sim
Perfis de entidade de serviço para autenticação. Sem suporte Sem suporte
Power BI modelos semânticos do Direct Lake podem ser criados e consultados por Principais de Serviço, e a associação de função do Visualizador com Principais de Serviço é suportada. No entanto, os modelos semânticos padrão do Direct Lake em lakehouse/warehouse não dão suporte a esse cenário. Sim Sim
Atalhos em um lakehouse podem ser usados como fontes de dados para tabelas de modelo semântico. Suportado Suportado
Crie modelos do Direct Lake em áreas de trabalho pessoais (Workspace Pessoal). Sem suporte Sem suporte
Regras do pipeline de implantação para reconfigurar a fonte de dados. Não há suporte diretamente – pode criar uma expressão de parâmetro a ser usada no cadeia de conexão. Suportado
Adicionando várias tabelas da mesma tabela de fonte de dados. Não há suporte na Power BI Desktop ou na modelagem da Web. É possível adicionar várias tabelas da mesma tabela de fonte de dados usando ferramentas externas baseadas em XMLA. Usar tabelas Editar nas ferramentas do Power BI e atualizar resultarem em um erro com várias tabelas originadas da mesma tabela de fonte de dados no modelo semântico. Não há suporte na Power BI Desktop ou na modelagem da Web. É possível adicionar várias tabelas da mesma tabela de fonte de dados usando ferramentas externas baseadas em XMLA. Usar Edit tables nas ferramentas do Power BI e fazer refresh resulta em um erro com várias tabelas provenientes da mesma tabela de fonte de dados no modelo semântico.
As tabelas direct lake criadas usando aplicativos XMLA estão inicialmente em um estado não processado até que o aplicativo envie um comando de atualização. Atualize o modelo para processar suas tabelas ao criar um novo modelo semântico. As consultas que envolvem tabelas não processadas retornam um erro. As consultas que envolvem tabelas não processadas retornam ao modo DirectQuery, a menos que o fallback seja desabilitado, caso em que as consultas falham.
As ferramentas compatíveis com XMLA devem dar suporte compatibilityLevel ao 1604 ou superior para trabalhar com modelos semânticos do Direct Lake e expor metadados específicos do Direct Lake. Sim Sim
  • Analisar tabelas dinâmicas no Excel (e outros clientes MDX) tem as mesmas limitações que o DirectQuery com tabelas Direct Lake no modelo semântico. Não há suporte para instruções MDX com escopo de sessão, como conjuntos nomeados, membros calculados, membros padrão etc. Há suporte para instruções MDX com escopo de consulta, como a cláusula 'WITH'. Não há suporte para hierarquias definidas pelo usuário da tabela Direct Lake. As hierarquias definidas pelo usuário da tabela de importação têm suporte mesmo com tabelas do Direct Lake no modelo semântico.

  • Power BI Desktop pode editar ao vivo um modelo semântico com tabelas direct lake e tabelas de importação. Grupos de cálculo, parâmetros de hipóteses e parâmetros de campo, que criam implicitamente tabelas calculadas e tabelas calculadas que não fazem referência a colunas ou tabelas do Direct Lake também podem ser incluídas.

  • Modelagem web do Power BI pode abrir qualquer modelo semântico, incluindo tabelas do Direct Lake com outras tabelas de modo de armazenamento.

  • O modo de exibição de consulta DAX ao usar a edição ao vivo ou estando conectado ao vivo, e ao escrever consultas DAX na Web, tem suporte para modelos semânticos Direct Lake no SQL, Direct Lake no OneLake e true composite (Direct Lake no OneLake + Importação de qualquer fonte de dados).

  • O TMDL View é compatível durante a edição em tempo real no Power BI Desktop.

  • Há suporte para a criação de relatórios com uma conexão dinâmica para todos os modelos semânticos, quando o autor do relatório tem pelo menos acesso de build.

  • A expressão de conexão do Direct Lake no SQL dentro do modelo semântico deve se referir ao ponto de extremidade de análise do SQL por GUID, não por nome descritivo, para usar as operações Edit e refresh no Power BI Desktop e na modelagem web do Power BI. A expressão de conexão pode ser atualizada no modo de exibição TMDL ou em ferramentas externas baseadas em XMLA. O GUID está disponível na URL ao exibir o endpoint de análise SQL no navegador.