Qual é o endpoint de análise SQL para uma lakehouse?

O endpoint de análise SQL fornece uma interface de consulta T-SQL apenas de leitura sobre as tabelas Delta no teu lakehouse. Cada lakehouse fornece automaticamente um endpoint de análise SQL quando criado — não há nada extra para configurar. Nos bastidores, o endpoint de análise SQL corre no mesmo motor que o Fabric Data Warehouse, por isso obtém consultas SQL de alto desempenho e baixa latência sem gerir a infraestrutura.

O endpoint de análise SQL não é exclusivo dos lakehouses. Outros itens do Fabric — incluindo warehouses, bases de dados espelhadas, bases de dados SQL e Azure Cosmos DB — também automaticamente provisionam um endpoint de análises SQL. A experiência e as limitações são as mesmas em todos eles.

Captura de ecrã do endpoint de análise SQL para um lakehouse mostrando o editor de consultas e a lista de tabelas.

O que pode fazer

O endpoint de análise SQL opera em modo apenas de leitura sobre tabelas Delta — não pode inserir, atualizar ou eliminar dados através dele. Para modificar dados, mude para o lakehouse e use Apache Spark.

Dentro desse limite só de leitura, pode fazer o seguinte:

  • Interrogar tabelas Delta com T-SQL — Execute instruções SELECT em qualquer tabela Delta no seu lakehouse, incluindo tabelas expostas através de atalhos para recursos externos no Azure Data Lake Storage ou Amazon S3.
  • Crie vistas, funções e procedimentos armazenados — Encapsule a lógica de negócio e padrões de consulta reutilizáveis em objetos T-SQL que persistam no endpoint de análise SQL.
  • Aplique segurança ao nível das linhas e ao nível do objeto — Use permissões granulares SQL para controlar quais as tabelas, colunas ou linhas que os utilizadores podem ver.
  • Construa relatórios Power BI — Os modelos semânticos Power BI podem ligar-se ao endpoint de análise SQL através do seu endpoint Tabular Data Stream (TDS), para que possa construir relatórios sobre os seus dados do lakehouse.
  • Consulta entre espaços de trabalho — Use atalhos OneLake para referenciar tabelas Delta noutras casas de lago ou armazéns, e depois junte-as numa única consulta. Para mais cenários entre espaços de trabalho, veja casos de utilização de endpoints de análise SQL do Lakehouse.

Nota

As tabelas Delta externas criadas com o código Spark não são visíveis para o ponto de extremidade de análise SQL. Use atalhos na secção de Tabelas para tornar visíveis tabelas Delta externas. Para saber como, veja Criar um atalho.

Aceda ao endpoint de análise SQL

Pode abrir o endpoint de análise SQL de duas formas:

  • A partir do espaço de trabalho — Na lista de itens do seu espaço de trabalho, encontre o item endpoint de análise SQL (que partilha nome com o seu lakehouse) e selecione-o.
  • Do explorador Lakehouse — No canto superior direito da fita, use o menu suspenso para mudar para a vista endpoint de análise SQL.

De qualquer forma, o query editor abre-se onde podes escrever e executar consultas T-SQL contra as tuas tabelas Delta.

Segurança

O conjunto de regras de segurança SQL no endpoint de análise SQL só se aplica quando os dados são acedidos através do endpoint. Não se aplicam quando os mesmos dados são acedidos através do Spark ou de outras ferramentas.

Para proteger os seus dados:

  • Defina permissões granulares SQL no endpoint de análise SQL para controlar acesso a tabelas, colunas ou linhas específicas.
  • Defina as funções e permissões do workspace para controlar quem pode aceder ao lakehouse e aos respetivos dados através de outros caminhos.

Para saber mais sobre o modelo de segurança, consulte OneLake Security para endpoints de análise SQL.

Sincronização de metadados

Quando cria ou atualiza uma tabela Delta no seu lakehouse, o endpoint de análise SQL deteta automaticamente a alteração e atualiza os seus metadados SQL — definições de tabelas, tipos de colunas e estatísticas. Não há nenhum passo de importação nem é necessário sincronizar manualmente. Tens várias opções para iniciar manualmente uma atualização dos metadados do endpoint de análise SQL.

Para mais informações, consulte a sincronização de metadados dos endpoints de análise SQL.

Reaprovisionamento

Se o endpoint de SQL Analytics falhar no provisionamento ao criar um lakehouse, pode tentar novamente diretamente na página inicial do lakehouse sem necessidade de recriar o lakehouse.

Captura de ecrã que mostra a opção para repetir o provisionamento de SQL Analytics endpoints no lakehouse.

Nota

O reprovisionamento pode falhar, assim como pode o provisionamento inicial. Se tentativas repetidas falharem, contacte o suporte.

Limitações

O endpoint de análise SQL partilha o seu motor com o Fabric Data Warehouse, e ambos partilham as mesmas limitações.

As seguintes limitações aplicam-se ao endpoint de analítica SQL, geração automática de esquema e descoberta de metadados.

  • Os dados devem estar no formato Delta Parquet para serem automaticamente detetados no endpoint de analítica SQL. O Delta Lake é uma estrutura de armazenamento de código aberto que permite a construção da arquitetura Lakehouse.

  • O mapeamento de coluna delta por nome é suportado, mas o mapeamento de coluna delta por ID não é suportado. Para obter mais informações, consulte Recursos do Delta Lake e Experiências do Fabric.

  • As tabelas Delta criadas fora da pasta /tables não estão disponíveis no endpoint de análise SQL.

    Se não vir uma tabela Lakehouse no endpoint de análise SQL, verifique a localização da tabela. Apenas as tabelas que referenciam dados na /tables pasta estão disponíveis no endpoint de análise SQL. As tabelas que fazem referência a dados na pasta /files no lago não são expostas no endpoint de análise SQL. Como solução alternativa, mova os dados para a /tables pasta.

  • Algumas colunas que existem nas tabelas Delta do Spark podem não estar disponíveis nas tabelas no endpoint de análise SQL. Para cada tabela Delta no seu Lakehouse, o endpoint de análise SQL gera automaticamente uma tabela com tipos de dados T-SQL. O motor do ponto final de análise SQL baseia-se no motor do Fabric Data Warehouse e partilha os tipos de dados. Para obter uma lista completa dos tipos de dados suportados, consulte Tipos de dados no Fabric Data Warehouse.

  • Se você adicionar uma restrição de chave estrangeira entre tabelas no ponto de extremidade de análise SQL, não poderá fazer mais alterações de esquema (por exemplo, adicionando as novas colunas). Se não vir as colunas Delta Lake com os tipos que devem ser suportados no endpoint de análise SQL, verifique se existe uma restrição de chave estrangeira que possa impedir atualizações na tabela.

  • Para obter informações e recomendações sobre o desempenho do ponto de extremidade da análise SQL, consulte Considerações sobre o desempenho do ponto de extremidade da análise SQL.

  • As funções definidas pelo utilizador (UDFs) escalares são suportadas quando inseríveis. Para obter mais informações, consulte CREATE FUNCTION e Scalar UDF inlining.

  • O tipo de dado varchar(max) é suportado apenas em endpoints de análise SQL de itens espelhados e bases de dados Fabric, mas não em Lakehouses. As tabelas criadas após 10 de novembro de 2025 serão automaticamente mapeadas com varchar(max). As tabelas criadas antes de 10 de novembro de 2025 precisam de ser recriadas para adotar um novo tipo de dado, ou serão automaticamente atualizadas para varchar(max) durante a próxima alteração de esquema.

O truncamento de dados para 8 KB ainda se aplica nas tabelas do endpoint de análise SQL do Lakehouse, incluindo atalhos de acesso a um item espelhado.

Nem todas as tabelas suportam junções varchar(max), por isso essas colunas podem não funcionar como esperado se uma das tabelas ainda tiver truncação de dados. Por exemplo, se fizer CTAS de uma tabela de um item espelhado recém-criado numa tabela Lakehouse usando o Spark, e depois os juntar usando a coluna com varchar(max), os resultados da consulta serão diferentes em comparação com o tipo de dados varchar(8000). Se quiser continuar a ter o comportamento anterior, pode converter a coluna para varchar(8000) na sua consulta.

Pode confirmar se uma tabela tem alguma coluna varchar(max) dos metadados do esquema usando a seguinte consulta T-SQL. Um max_length valor de -1 representa varchar(max):

SELECT o.name, c.name, type_name(user_type_id) AS [type], max_length
FROM sys.columns AS c
INNER JOIN sys.objects AS o
ON c.object_id = o.object_id
WHERE max_length = -1 
AND type_name(user_type_id) IN ('varchar', 'varbinary');
  • Esquemas com nomes que entram em conflito com esquemas do sistema (como sys ou information_schema) e princípios de segurança da base de dados (como db_owner, db_datareader) não são suportados no endpoint de análise SQL. As tabelas sob estes esquemas falham em sincronizar com o endpoint de análise SQL.

  • Um espaço de trabalho suporta até 150 itens de endpoint de armazém e análise SQL combinados. Criar itens adicionais para além deste limite não é suportado. Apaga um item existente antes de criares um novo.