Casos de uso do endpoint de análise SQL do Lakehouse

O endpoint de análise SQL é uma interface T-SQL otimizada para leitura sobre dados Delta no Microsoft Fabric. Este artigo explica a carga de trabalho de data warehouse do Fabric com o endpoint de análise SQL do Lakehouse e os cenários de uso do Lakehouse em data warehousing.

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

O endpoint de análise SQL permite que você consulte dados no Lakehouse por meio da linguagem T-SQL e do protocolo TDS.

  • O endpoint de análises SQL expõe tabelas Delta do Lakehouse como tabelas SQL que você pode consultar usando T-SQL.
  • Cada tabela delta de um Lakehouse é tratada como uma única tabela. Os dados devem estar no formato delta.
  • Cada Lakehouse tem um endpoint de análise SQL, e cada workspace pode ter mais de um Lakehouse. O número de endpoints de análise SQL em um workspace corresponde ao número de itens do Lakehouse.

Você não precisa criar um ponto de extremidade de análise SQL no Microsoft Fabric. Um endpoint de análise SQL é criado automaticamente para cada lakehouse, banco de dados ou banco de dados espelhado. Um endpoint de análise SQL atua como um recurso leve de data warehouse para seus itens pai, complementando a arquitetura lakehouse do warehouse. Essa arquitetura permite que o espelhamento do Spark ou do Fabric controle os dados em uma estrutura de pastas no lakehouse que o ponto de extremidade de análise SQL pode visualizar.

Note

Nos bastidores, o endpoint de análise SQL usa o mesmo mecanismo que o Warehouse para oferecer consultas SQL de alto desempenho e baixa latência.

Descoberta automática de metadados

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

Cenários que o Lakehouse habilita para armazenamento de dados

Na Fabric, oferecemos um depósito.

Lakehouse, com seu endpoint de análise SQL, alimentado pelo Data Warehouse, pode simplificar a árvore de decisão tradicional dos padrões de arquitetura de lote, streaming ou lambda. Junto com um data warehouse, o lakehouse permite muitos cenários analíticos aditivos. Essa seção explora como usar um Lakehouse junto com um Warehouse para obter uma melhor estratégia de análise.

Análise com a camada de ouro do Fabric Lakehouse

Uma estratégia conhecida para a organização de dados lake é a arquitetura de medalhão. Essa estratégia organiza arquivos em camadas brutas (bronze), consolidadas (prata) e refinadas (ouro). Você pode usar um endpoint de análise SQL para analisar dados na camada gold da arquitetura medalhão se os arquivos estiverem armazenados no formato Delta Lake, mesmo que estejam armazenados fora do OneLake do Microsoft Fabric.

Use atalhos do OneLake para referenciar as pastas gold em contas externas de armazenamento do Azure Data Lake gerenciadas pelos mecanismos do Synapse Spark ou do Azure Databricks.

Você também pode adicionar data warehouses como soluções orientadas por área temática ou por domínio para temas específicos que possam ter requisitos analíticos sob medida.

Se você optar por manter seus dados em Fabric, eles serão always abertos e acessíveis por meio de APIs, formato Delta e, claro, T-SQL.

Consulta como um serviço em suas tabelas delta do Lakehouse e outros itens do OneLake

Analistas, cientistas de dados e engenheiros de dados podem precisar consultar dados em um data lake. Em Fabric, essa experiência de ponta a ponta é completamente SaaSified.

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

Os dados em um Lakehouse do Microsoft Fabric são fisicamente armazenados no OneLake com a seguinte estrutura de pastas:

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

Um endpoint de análise SQL pode ler dados na pasta /tables dentro do OneLake. A análise é tão simples quanto consultar o endpoint de análises SQL do Lakehouse. Junto com o Warehouse, você também obtém consultas entre diferentes bancos de dados e a capacidade de alternar facilmente entre consultas somente leitura e a criação de lógica de negócios adicional com base nos seus dados do OneLake com o Fabric Data Warehouse.

Engenharia de Dados com Spark e Serving com SQL

Empresas orientadas por dados precisam manter a sincronização de seus sistemas de back-end e análises em tempo quase 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 organizar seus dados. Você pode usar o endpoint de análise SQL do Lakehouse para validar a qualidade dos dados e para os processos T-SQL existentes. Isso pode ser feito em uma arquitetura de medalhão ou em várias camadas do seu Lakehouse, servindo dados em bronze, prata, ouro ou staging, curados e refinados. Você pode personalizar as pastas e tabelas criadas por meio do Spark para atender aos seus requisitos de engenharia de dados e de negócios. Quando estiver pronto, um Warehouse poderá atender a todos os seus aplicativos de business intelligence downstream e outros casos de uso de análise, sem copiar dados, usar visualizações ou refinar dados usando CREATE TABLE AS SELECT (CTAS), procedimentos armazenados e outros comandos DML/DDL.

Integração com a camada de ouro do Open Lakehouse

Um endpoint de análise SQL não se limita à análise de dados somente no Fabric Lakehouse. Ao usar um endpoint de análise SQL, você pode analisar os dados do lake em qualquer lakehouse com o Synapse Spark, o Azure Databricks ou qualquer outro mecanismo de engenharia de dados voltado a lake. Você pode armazenar os dados no Azure Data Lake Storage ou no Amazon S3.

Você sempre pode acessar essa integração bidirecional apertada com o Fabric Lakehouse por meio de qualquer mecanismo usando APIs abertas, o formato Delta e, claro, o T-SQL.

Virtualização de dados de data lakes externos com atalhos

Use o OneLake shortcuts para fazer referência a pastas de ouro em contas de armazenamento de Azure Data Lake externas que os mecanismos do Synapse Spark ou Azure Databricks gerenciam, bem como qualquer tabela delta armazenada no Amazon S3.

Você pode analisar qualquer pasta referenciada em um atalho de um endpoint de análise SQL e criar uma tabela SQL para os dados referenciados. Use a tabela SQL para disponibilizar dados em data lakes gerenciados externamente e permitir análises nesses dados.

Esse atalho atua como um warehouse virtual que você pode usar a partir de um warehouse para atender a necessidades adicionais de análises subsequentes ou consultar diretamente.

Para analisar dados em contas externas de armazenamento de data lake, use as seguintes etapas:

  1. Crie um atalho que faça referência a uma pasta no Azure Data Lake Storage ou na conta do Amazon S3. Depois de inserir detalhes e credenciais de conexão, um atalho é mostrado no Lakehouse.
  2. Alterne para o ponto de extremidade de análise SQL do Lakehouse e localize uma tabela SQL que tenha um nome que corresponda ao nome do atalho. Esta tabela SQL faz referência à pasta no ADLS ou S3.
  3. Consulte a tabela SQL que faz referência a dados no ADLS ou S3. Use a tabela como qualquer outra tabela no endpoint de análise de SQL. Você pode unir tabelas que fazem referência a dados em contas de armazenamento diferentes.

Note

Se a tabela SQL não aparecer imediatamente no endpoint de análise SQL, aguarde 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 em um data lake

O particionamento de dados é uma técnica bem conhecida de otimização de acesso a dados em data lakes. Armazene conjuntos de dados particionados em estruturas de pastas hierárquicas no formato /year=<year>/month=<month>/day=<day>, onde year, monthe day são as colunas de particionamento. Essa estrutura mantém os dados históricos logicamente separados e permite que os mecanismos de computação leiam os dados conforme necessário com filtragem com desempenho, em vez de ler todo o diretório e todas as pastas e arquivos dentro.

Dados particionados permitem acesso mais rápido se as consultas filtram os predicados que comparam colunas de predicado com um valor.

Um endpoint de análise SQL pode ler facilmente esse tipo de dados sem necessidade de configuração. Por exemplo, você pode usar qualquer aplicativo para arquivar dados em um data lake, incluindo SQL Server 2022 ou Instância Gerenciada de SQL do Azure. Depois de particionar os dados e armazená-los em um data lake para fins de arquivamento por meio de tabelas externas, um endpoint de análise SQL pode ler tabelas particionadas do Delta Lake como tabelas SQL e permitir que sua organização analise esses dados. Essa abordagem reduz o custo total de propriedade, reduz a duplicação de dados e ilumina os cenários de Big Data, IA e outros cenários de análise.

Você também pode usar consultas de viagem no tempo para consultar rapidamente versões anteriores de dados. A viagem no tempo é uma funcionalidade de baixo custo e eficiente para consultar os estados anteriores de dados com consultas T-SQL. Para um endpoint de análise SQL de um Lakehouse, a viagem no tempo é limitada pelas configurações de retenção do VACUUM. Para começar, consulte Como consultar usando a viagem no tempo no nível da instrução.

Virtualização de dados do Fabric com atalhos

No Fabric, os workspaces permitem separar dados com base em requisitos complexos de negócios, geográficos ou regulatórios.

Um endpoint de análise SQL permite que você deixe os dados no local e ainda analise os dados no Warehouse ou no Lakehouse, e até em outros ambientes de trabalho do Microsoft Fabric, através de uma virtualização integrada. Todo Lakehouse do Microsoft Fabric armazena dados no OneLake.

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

Cada Warehouse do Microsoft Fabric armazena dados de tabela no OneLake. Se uma tabela for somente acréscimo, os dados da tabela serão expostos como dados do Delta Lake no OneLake. Os atalhos permitem que você faça referência a pastas em qualquer OneLake em que as tabelas do Warehouse sejam expostas.

Compartilhamento e consulta entre espaços de trabalho

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

Um endpoint de análise SQL do Lakehouse pode facilitar o compartilhamento de dados entre departamentos e usuários, permitindo que cada usuário use sua própria capacidade e armazenamento de dados. Os workspaces organizam departamentos, unidades de negócios ou domínios analíticos. Usando atalhos, os usuários podem encontrar os dados do Warehouse ou do Lakehouse. Os usuários podem executar instantaneamente suas próprias análises personalizadas dos mesmos dados compartilhados. Além de ajudar com os chargebacks departamentais e a alocação de uso, essa abordagem é uma versão de cópia zero dos dados.

O ponto de acesso de análise do SQL permite a consulta de qualquer tabela e facilitação no compartilhamento. Você pode adicionar controles usando funções de workspace e funções de segurança para atender a requisitos de negócios adicionais.

Para habilitar a análise de dados entre espaços de trabalho, use as seguintes etapas:

  1. Crie um atalho do OneLake que referencie uma tabela ou uma pasta em um workspace que você possa acessar.
  2. Escolha um Lakehouse ou Warehouse que contenha uma tabela ou pasta Delta Lake que você deseja analisar. Quando você seleciona uma tabela ou pasta, um atalho aparece no Lakehouse.
  3. Alterne para o endpoint de análises SQL do Lakehouse e localize a tabela SQL que tem um nome que corresponde ao nome do shortcut. Esta tabela SQL faz referência à pasta em outro workspace.
  4. Consulte a tabela SQL que faz referência a dados em outro workspace. Você pode 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 workspaces diferentes.

Para obter mais informações sobre segurança no ponto de extremidade de análise de SQL, consulte a segurança do OneLake para pontos de extremidade de análise de SQL.

Note

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

Analisar dados particionados

O particionamento de dados é uma técnica bem conhecida de otimização de acesso a dados em data lakes. Você armazena conjuntos de dados particionados em estruturas de pastas hierárquicas no formato /year=<year>/month=<month>/day=<day>, onde year, monthe day são as colunas de particionamento. Os conjuntos de dados particionados habilitam o acesso mais rápido aos dados se as consultas usarem predicados que filtram dados comparando colunas de predicado com um valor.

Um ponto de extremidade de análise SQL pode representar conjuntos de dados particionados do Delta Lake como tabelas SQL e permitir que você os analise.

Para obter mais informações e exemplos sobre como consultar dados externos, consulte Consultar arquivos externos do data lake usando o Fabric Data Warehouse ou o endpoint de análise SQL. Para obter um exemplo e um caso de uso para consultar arquivos parquet particionados, consulte Consultar dados particionados.

Analisar dados no Lakehouse, Warehouse ou Eventhouse

As páginas principais do Lakehouse e do Warehouse incluem o ponto de extremidade Eventhouse como parte do menu analisar dados com. O endpoint do Eventhouse fornece uma experiência de consulta impulsionada pelo Eventhouse diretamente nos dados do Lakehouse e do Warehouse, sem duplicação de dados ou sincronização manual.

Captura de tela do botão

Quando você habilita o endpoint Eventhouse, um Eventhouse e um banco de dados KQL são criados automaticamente como itens filho do Lakehouse ou Warehouse de origem, com a sincronização de esquema realizada em segundo plano. O ponto de extremidade sempre reflete o esquema atual dos dados de origem, permitindo acesso analítico quase em tempo real.

Essa integração torna o Eventhouse uma extensão natural da fonte de dados, em vez de um sistema separado que você precisa configurar e gerenciar. Para obter mais informações sobre o ponto de extremidade Eventhouse, consulte Habilitar o ponto de extremidade Eventhouse para lakehouse e warehouse.