Casos de uso do ponto final de análise SQL do Lakehouse

O endpoint de análise SQL é uma superfície T-SQL otimizada para leitura sobre dados Delta no Fabric. Este artigo explica a carga de trabalho de armazenamento de dados Fabric com o endpoint de análise SQL da casa do lago, e cenários para a utilização da casa do lago em armazenamento de dados.

O que é um endpoint de análise SQL Lakehouse?

O endpoint de análise SQL permite-lhe consultar dados na casa do lago utilizando a linguagem T-SQL e o protocolo TDS.

  • O endpoint de análise SQL expõe as tabelas Delta do lakehouse como tabelas SQL que podes consultar com T-SQL.
  • Cada mesa Delta de uma casa de lago é representada como uma única mesa. Os dados devem estar em formato delta.
  • Cada casa do lago tem um endpoint de análise SQL, e cada espaço de trabalho pode ter mais do que uma casa do lago. Outros itens do Fabric – incluindo armazéns, bases de dados espelhadas, bases de dados SQL e Azure Cosmos DB – também auto-provisionam um endpoint de análise SQL, pelo que um espaço de trabalho pode ter mais endpoints de análise SQL do que itens do lakehouse.

Não precisas de criar um endpoint de análise SQL no Fabric. Um endpoint de análise SQL é criado automaticamente para cada lakehouse, base de dados ou base de dados espelhada. Um endpoint de análise SQL funciona como uma solução leve de armazenamento de dados para os seus itens principais, complementando a arquitetura lakehouse do armazém de dados. Esta arquitetura permite que o espelhamento do Spark ou do Fabric controle os dados na estrutura de pastas no lakehouse que o endpoint de análise SQL pode ver.

Note

Nos bastidores, o endpoint de análise SQL utiliza o mesmo motor do Warehouse para servir consultas SQL de alto desempenho e baixa latência.

Descoberta automática de metadados

Um processo contínuo lê os registos Delta da /Tables pasta e garante que os metadados SQL para tabelas, como estatísticas, estão sempre atualizados. Não há nenhuma ação do usuário necessária, nem necessidade de importar, copiar dados ou configurar a infraestrutura. Para obter mais informações, consulte Esquema gerado automaticamente no endpoint de análise SQL.

Cenários que a casa do lago permite para armazenamento de dados

Na Fabric, oferecemos um armazém.

O lakehouse, com o seu endpoint de análise SQL, alimentado pelo warehouse, pode simplificar a tradicional árvore de decisão de padrões de arquitetura batch, streaming ou lambda. Juntamente com um armazém, o lakehouse permite muitos cenários de análise aditiva. Esta secção explora como usar uma casa de lago juntamente com um armazém para uma estratégia analítica de excelência.

Análises com a camada de ouro da sua casa de lago

Uma estratégia bem conhecida para a organização de dados em lagos é a arquitetura de medalhões. Esta estratégia organiza os ficheiros em camadas brutas (bronze), consolidadas (prata) e refinadas (ouro). Pode usar um endpoint de análise SQL para analisar dados na camada ouro da arquitetura medallion se os ficheiros estiverem armazenados no formato Delta Lake, mesmo que estejam armazenados fora do Microsoft Fabric OneLake.

Use atalhos no OneLake para referenciar pastas gold em contas externas de armazenamento do Azure Data Lake que o Synapse Spark ou os motores Azure Databricks gerem.

Também pode adicionar armazéns de dados como soluções orientadas para áreas temáticas ou para domínios, para temas específicos que possam ter requisitos analíticos específicos.

Se optar por manter os seus dados em Fabric, eles são sempre abertos e acessíveis através de APIs, formato Delta e, claro, T-SQL.

Consulte como serviço as suas tabelas Delta do lakehouse e outros itens do OneLake

Analistas, cientistas de dados e engenheiros de dados podem precisar de consultar dados dentro de um data lake. No Fabric, esta experiência de ponta a ponta é completamente SaaSificada.

O OneLake é um data lake único, unificado e lógico para toda a organização. OneLake é o OneDrive para dados. O OneLake pode conter vários espaços de trabalho, por exemplo, ao longo de suas divisões organizacionais. Cada item no Fabric torna os dados acessíveis através do OneLake.

Os dados numa casa de lago no Fabric são fisicamente armazenados no OneLake com a seguinte estrutura de pastas:

  • A /Files pasta contém ficheiros brutos e não consolidados (bronze) que os engenheiros de dados devem processar antes da análise. Os ficheiros podem estar em vários formatos, como CSV, Parquet, diferentes tipos de imagens, entre outros.
  • A /Tables pasta contém dados refinados e consolidados (ouro) prontos para análise empresarial. Os dados consolidados estão no formato Delta Lake.

Um ponto de extremidade de análise SQL pode ler dados na pasta /tables dentro do OneLake. A análise é tão simples como consultar o endpoint de análise SQL da casa do lago. Juntamente com o armazém, também obtém consultas entre bases de dados e a capacidade de alternar de simples consultas de leitura para construir lógica de negócio adicional sobre os seus dados OneLake com Fabric Data Warehouse.

Engenharia de dados com o Spark e servindo com SQL

As empresas orientadas por dados precisam manter seus sistemas de back-end e análise em sincronia quase em tempo real com aplicativos voltados para o cliente. O impacto das transações deve refletir com precisão por meio de processos de ponta a ponta, aplicativos relacionados e sistemas OLTP (processamento de transações online).

No Fabric, você pode usar o Spark Streaming ou a Engenharia de Dados para fazer a curadoria de seus dados. Pode usar o endpoint de análise SQL do Lakehouse para validar a qualidade dos dados e para os processos T-SQL existentes. Isto pode ser feito numa arquitetura de medalhão ou em múltiplas camadas da sua casa de lago, servindo dados de bronze, prata, ouro ou de encenação, curada e refinada. Você pode personalizar as pastas e tabelas criadas através do Spark para atender aos seus requisitos de engenharia de dados e de negócios. Quando pronto, um armazém pode servir todas as suas aplicações de business intelligence a jusante e outros casos de uso analítico, sem copiar dados, usar Vistas ou refinar dados usando CREATE TABLE AS SELECT (CTAS), procedimentos armazenados e outros comandos DML / DDL.

Integração com a camada de ouro da sua casa de lago aberta

Um endpoint de análise SQL não se limita apenas à análise de dados no Fabric. Ao utilizar um ponto final de análise SQL, pode analisar dados em qualquer lakehouse com o Synapse Spark, o Azure Databricks ou qualquer outro motor de engenharia de dados centrado em lakehouses. Pode armazenar os dados no Azure Data Lake Storage ou no Amazon S3.

Pode sempre aceder a esta integração estreita e bidirecional com o lakehouse no Fabric através de qualquer motor, usando APIs abertas, o formato Delta e, claro, o T-SQL.

Virtualização de dados de lagos de dados externos com atalhos

Use atalhos OneLake para referenciar pastas gold em contas externas de armazenamento Azure Data Lake que os motores Synapse Spark ou Azure Databricks gerem, bem como qualquer tabela Delta armazenada na Amazon S3.

Pode analisar qualquer pasta referenciada por um atalho a partir de um endpoint de análise SQL e criar uma tabela SQL para os dados referenciados. Utilize a tabela SQL para expor dados em data lakes geridos externamente e permitir efetuar análises sobre os mesmos.

Este atalho funciona como um armazém virtual que pode utilizar a partir de outro armazém para necessidades analíticas subsequentes adicionais, ou consultar diretamente.

Para analisar dados em contas externas de armazenamento de data lake, utilize os seguintes passos:

  1. Crie um atalho que faça referência a uma pasta no armazenamento do Azure Data Lake ou na conta do Amazon S3. Depois de introduzir os dados e credenciais da ligação, aparece um atalho na casa do lago.
  2. Muda para o endpoint de análise SQL do lakehouse e encontra uma tabela SQL com um nome que corresponda ao nome do atalho. Esta tabela SQL faz referência à pasta em ADLS ou S3.
  3. Consulta a tabela SQL que faz referência a dados em ADLS ou S3. Usa a tabela como farias com qualquer outra tabela no endpoint de análise SQL. Você pode unir tabelas que fazem referência a dados em diferentes contas de armazenamento.

Note

Se a tabela SQL não aparecer imediatamente no endpoint de análise SQL, espere alguns minutos. A tabela SQL que faz referência a dados na conta de armazenamento externo é criada com um atraso.

Analisar dados arquivados ou históricos num data lake

O particionamento de dados é uma técnica bem conhecida de otimização do acesso a dados em lagos de dados. Armazenar conjuntos de dados particionados em estruturas hierárquicas de pastas no formato /year=<year>/month=<month>/day=<day>, onde year, month, e day são as colunas de partição. Esta estrutura mantém os dados históricos logicamente separados e permite que os motores de cálculo leiam os dados conforme necessário com filtragem de desempenho, em vez de lerem todo o diretório e todas as pastas e ficheiros internos.

Os dados particionados permitem um acesso mais rápido se as consultas filtrarem nos predicados que comparam colunas de predicados com um valor.

Um endpoint de análise SQL pode facilmente ler esse tipo de dados sem que seja necessária nenhuma configuração. Por exemplo, você pode usar qualquer aplicativo para arquivar dados em um data lake, incluindo o SQL Server 2022 ou a Instância Gerenciada SQL do Azure. Depois de particionar os dados e colocá-los num lago para fins de arquivamento usando tabelas externas, um endpoint de análise SQL pode ler tabelas Delta Lake particionadas como tabelas SQL e permitir que a sua organização as analise. Esta abordagem reduz o custo total de propriedade, reduz a duplicação de dados e viabiliza cenários de big data, IA e outras análises.

Também pode usar consultas de viagem no tempo para consultar rapidamente versões anteriores dos dados. A viagem no tempo é uma capacidade eficiente e de baixo custo para consultar os estados passados dos dados com consultas T-SQL. Para um endpoint de análise SQL em Lakehouse, a viagem no tempo é limitada pelas definições de retenção de vácuo. Para começar, veja Como: Fazer consultas usando viagem no tempo ao nível da instrução.

Virtualização de dados do Fabric com atalhos

No Fabric, os espaços de trabalho permitem segregar dados com base em requisitos complexos de negócios, geográficos ou regulamentares.

Um endpoint de análise SQL permite-lhe deixar os dados no local e ainda assim analisar os dados no armazém ou na casa do lago, mesmo noutros espaços de trabalho Fabric, através de uma virtualização fluida. Todas as casas de lago em Fabric armazenam dados no OneLake.

Os atalhos permitem que você faça referência a pastas em qualquer local do OneLake.

Todos os armazéns no Fabric armazenam dados de tabelas no OneLake. Se uma tabela for de apenas adição, os dados da tabela serão expostos como dados Delta Lake no OneLake. Os atalhos permitem-te referenciar pastas em qualquer OneLake onde as tabelas do armazém estejam expostas.

Compartilhamento e consulta entre espaços de trabalho

Embora os espaços de trabalho permitam segregar dados com base em requisitos complexos de negócios, geográficos ou regulamentares, às vezes você precisa facilitar o compartilhamento entre essas linhas para necessidades específicas de análise.

Um endpoint de análise SQL Lakehouse pode permitir a partilha fácil de dados entre departamentos e utilizadores, onde o utilizador pode trazer a sua própria capacidade e armazém. Os espaços de trabalho organizam departamentos, unidades de negócios ou domínios analíticos. Ao usar atalhos, os utilizadores podem encontrar os dados de qualquer armazém ou casa do lago. Os usuários podem executar instantaneamente suas próprias análises personalizadas a partir dos mesmos dados compartilhados. Além de ajudar na imputação de custos entre departamentos e na alocação da utilização, esta abordagem é uma versão dos dados sem cópias.

O endpoint de análise SQL permite consultar qualquer tabela e compartilhar facilmente. Pode adicionar controlos usando funções de espaço de trabalho e funções de segurança para satisfazer requisitos adicionais de negócio.

Para permitir a análise de dados entre espaços de trabalho, utilize os seguintes passos:

  1. Crie um atalho do OneLake que faça referência a uma tabela ou pasta em um espaço de trabalho que você possa acessar.
  2. Escolha uma casa de lago ou armazém que contenha uma tabela ou pasta Delta Lake que queira analisar. Quando selecionas uma tabela ou pasta, aparece um atalho na casa do lago.
  3. Muda para o endpoint de análise SQL do lakehouse e encontra a tabela SQL cujo nome corresponde ao nome do atalho. Esta tabela SQL faz referência à pasta em outro espaço de trabalho.
  4. Consulte a tabela SQL que faz referência a dados em outro espaço de trabalho. Podes usar a tabela como qualquer outra tabela no endpoint de análise SQL. Você pode unir as tabelas que fazem referência a dados em espaços de trabalho diferentes.

Para mais informações sobre segurança no endpoint de análise SQL, consulte OneLake security para endpoints de análise SQL.

Note

Se a tabela SQL não aparecer imediatamente no endpoint de análise SQL, espere alguns minutos. A tabela SQL que faz referência a dados em outro espaço de trabalho é criada com um atraso.

Analise dados particionados

O particionamento de dados é uma técnica bem conhecida de otimização do acesso a dados em lagos de dados. Armazena conjuntos de dados particionados em estruturas hierárquicas de pastas no formato /year=<year>/month=<month>/day=<day>, onde year, month, e day são as colunas de partição. Conjuntos de dados particionados permitem um acesso mais rápido aos dados se as consultas usarem predicados que filtram os dados comparando colunas de predicados com um valor.

Um endereço de análise SQL pode representar conjuntos de dados particionados do Delta Lake como tabelas SQL e permitir que os analise.

Para mais informações e exemplos sobre consulta a dados externos, consulte Consultar ficheiros de data lake externos usando Fabric Data Warehouse ou SQL analytics endpoint. Para um exemplo e caso de uso para consultar ficheiros de parquet particionados, veja Consultar dados particionados.

Analisar dados na casa do lago, armazém ou casa de eventos

As páginas principais do Lakehouse e do Data Warehouse incluem o endpoint do Eventhouse como parte do menu Analisar dados. O endpoint Eventhouse proporciona uma experiência de consulta baseada em Eventhouse diretamente sobre os dados Lakehouse e Warehouse, sem duplicação de dados ou sincronização manual.

Captura de ecrã de

Quando ativas o endpoint Eventhouse, uma base de dados Eventhouse e KQL são automaticamente criadas como itens filhos do Lakehouse ou Warehouse de origem, com a sincronização de esquemas gerida em segundo plano. O endpoint reflete sempre o esquema atual dos dados de origem, permitindo acesso analítico quase em tempo real.

Esta integração faz do Eventhouse uma extensão natural da fonte de dados, em vez de um sistema separado que precisa de configurar e gerir. Para mais informações sobre o endpoint Eventhouse, consulte Habilitar endpoint Eventhouse para lakehouse e armazém.