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

O endpoint de análise SQL é uma interface T-SQL otimizada para leitura para dados Delta no Microsoft Fabric. Este artigo explica a carga de trabalho de data warehousing do Fabric com o ponto final de análise SQL do Lakehouse, e os cenários de utilização do Lakehouse no armazenamento de dados.

O que é um ponto de análise SQL da Lakehouse?

O endpoint de análise SQL permite-lhe consultar dados no Lakehouse 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 tabela delta de um Lakehouse é representada como uma tabela. Os dados devem estar em formato delta.
  • Cada Lakehouse tem uma finalidade de análise SQL, e cada workspace pode ter mais de um Lakehouse. O número de pontos de extremidade de análise SQL num espaço de trabalho corresponde ao número de itens do Lakehouse.

Não precisas de criar um endpoint de análise SQL no Microsoft 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 o Lakehouse permite para armazenamento de dados

Na Fabric, oferecemos um armazém.

O Lakehouse, com seu endpoint de análise SQL, alimentado pelo Warehouse, pode simplificar a árvore de decisão tradicional de padrões de arquitetura em lote, streaming ou lambda. Juntamente com um armazém, o lakehouse permite muitos cenários de análise aditiva. Esta seção explora como usar um Lakehouse junto com um Data Warehouse para uma estratégia de análise de excelência.

Analítica com a camada gold do seu Fabric Lakehouse

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.

Utilize atalhos do OneLake para referenciar pastas Gold em contas externas de armazenamento do Azure Data Lake geridas pelos motores Synapse Spark ou Azure Databricks.

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.

Consulta como um serviço sobre 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 em um Microsoft Fabric Lakehouse são armazenados fisicamente 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álises SQL do Lakehouse. Além do Warehouse, também obtém consultas entre bases de dados e a capacidade de passar, sem interrupções, de consultas só de leitura para a criação de lógica de negócio adicional com base nos seus dados no OneLake, com o 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 existentes de T-SQL. Isso pode ser feito numa arquitetura de medalhão ou dentro de várias camadas da sua Lakehouse, servindo dados de bronze, prata, ouro ou de preparação, com curadoria e refinados. 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 estiver pronto, um Armazém pode servir todas as suas aplicações de inteligência empresarial downstream e outros casos de uso de análise, sem copiar dados, utilizar visualizações (Views) ou refinar dados com CREATE TABLE AS SELECT (CTAS), procedimentos armazenados e outros comandos DML/DDL.

Integração com a camada de ouro da sua Open Lakehouse

Um endpoint de análise SQL não se limita apenas à análise de dados no Fabric Lakehouse. 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 Fabric Lakehouse através de qualquer motor, usando APIs abertas, o formato Delta e, claro, T-SQL.

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

Utilize os atalhos do OneLake para referenciar pastas Gold em contas de armazenamento externas do Azure Data Lake geridas pelo Synapse Spark ou pelos motores do Azure Databricks, bem como qualquer tabela Delta armazenada no 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 detalhes e as credenciais da ligação, é apresentado um atalho no Lakehouse.
  2. Alterne para o endpoint de análise SQL do Lakehouse e encontre uma tabela SQL que tenha 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 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 analítica SQL permite que os utilizadores deixem os dados no lugar e ainda analisem dados no Warehouse ou Lakehouse, mesmo em outros espaços de trabalho do Microsoft Fabric, através de uma virtualização perfeita. Cada Microsoft Fabric Lakehouse armazena dados no OneLake.

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

Cada Microsoft Fabric Warehouse armazena dados de tabela 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 que você faça referência a pastas em qualquer OneLake onde as tabelas do Warehouse 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 da Lakehouse pode permitir o compartilhamento fácil de dados entre departamentos e usuários, onde um usuário pode trazer seus próprios recursos e data warehouse. 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 Warehouse ou Lakehouse. 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 Lakehouse ou Warehouse que contenha uma tabela ou pasta Delta Lake que você deseja analisar. Quando selecionas uma tabela ou pasta, aparece um atalho na Casa do Lago.
  3. Mude para o ponto de extremidade de análise SQL do Lakehouse e encontre a tabela SQL com um nome que 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.