Arquiteturas de referência Lakehouse (disponível para download)
Este artigo aborda a orientação arquitetônica para a casa do lago em termos de fonte de dados, ingestão, transformação, consulta e processamento, serviço, análise e armazenamento.
Cada arquitetura de referência tem um PDF para download em formato 11 x 17 (A3).
Embora o lakehouse no Databricks seja uma plataforma aberta que se integra a um grande ecossistema de ferramentas de parceiros, as arquiteturas de referência concentram-se apenas nos serviços do Azure e no lakehouse do Databricks. Os serviços do fornecedor de serviços de computação em nuvem apresentados são selecionados para ilustrar os conceitos e não são exaustivos.
Download: Arquitetura de referência para o Azure Databricks Lakehouse
A arquitetura de referência do Azure mostra os seguintes serviços específicos do Azure para ingestão, armazenamento, serviço e análise:
- Azure Synapse e SQL Server como sistemas de origem para Lakehouse Federation
- Hub IoT do Azure e Hubs de Eventos do Azure para ingestão de streaming
- Azure Data Factory para ingestão em lote
- Azure Data Lake Storage Gen 2 (ADLS) como o armazenamento de objetos
- Azure SQL DB e Azure Cosmos DB como bancos de dados operacionais
- Azure Purview como o catálogo empresarial para o qual a UC exporta informações de esquema e linhagem
- Power BI como a ferramenta de BI
Organização das arquiteturas de referência
A arquitetura de referência é estruturada nas faixas Origem, Ingestão, Transformação, Consulta/Processamento, Servir, Análisee Armazenamento:
Source
A arquitetura distingue entre dados semi-estruturados e não estruturados (sensores e IoT, mídia, arquivos/logs) e dados estruturados (RDBMS, aplicativos de negócios). As fontes SQL (RDBMS) também podem ser integradas ao lakehouse e ao Unity Catalog sem ETL através da federação lakehouse. Além disso, os dados podem ser carregados de outros provedores de nuvem.
Ingerir
Os dados podem ser ingeridos na casa do lago via lote ou streaming:
- Databricks LakeFlow Connect oferece conectores integrados para ingestão de aplicativos corporativos e bancos de dados. O pipeline de ingestão resultante é governado pelo Unity Catalog e é alimentado por computação sem servidor e Delta Live Tables.
- Os arquivos entregues ao armazenamento em nuvem podem ser carregados diretamente usando o Databricks Auto Loader.
- Para a ingestão em lote de dados de aplicativos corporativos no Delta Lake, o Databricks lakehouse conta com ferramentas de ingestão de parceiros com adaptadores específicos para esses sistemas de registro.
- Os eventos de streaming podem ser ingeridos diretamente de sistemas de streaming de eventos, como o Kafka, usando o Databricks Structured Streaming. As fontes de streaming podem ser sensores, IoT ou alterar processos de captura de dados.
Armazenamento
Os dados são normalmente armazenados no sistema de armazenamento em nuvem, onde os pipelines de ETL usam a arquitetura medallion para armazenar dados de forma selecionada como arquivos/tabelas Delta.
Transformar e Consultar/processar
O lago Databricks usa seus motores Apache Spark e Photon para todas as transformações e consultas.
DLT (Delta Live Tables) é uma estrutura declarativa para simplificar e otimizar pipelines de processamento de dados confiáveis, sustentáveis e testáveis.
Alimentada pelo Apache Spark e Photon, a Databricks Data Intelligence Platform suporta ambos os tipos de cargas de trabalho: consultas SQL via armazéns SQL e cargas de trabalho SQL, Python e Scala via clusters de espaço de trabalho.
Para ciência de dados (ML Modeling e Gen AI), a plataforma Databricks AI and Machine Learning fornece tempos de execução de ML especializados para AutoML e para codificação de trabalhos de ML. Todos os fluxos de trabalho de ciência de dados e MLOps são melhor suportados pelo MLflow.
Servindo
Para casos de uso de DWH e BI, o Databricks lakehouse fornece Databricks SQL, o data warehouse alimentado por armazéns SQL e armazéns SQL sem servidor.
Para aprendizado de máquina, o serviço de modelo é um recurso de serviço de modelo escalável, em tempo real e de nível empresarial hospedado no plano de controle do Databricks. Mosaic AI Gateway é a solução da Databricks para controlar e monitorizar o acesso a modelos de IA generativa suportados e os seus endpoints de serviço de modelo associados.
Bancos de dados operacionais: Sistemas externos, como bancos de dados operacionais, podem ser usados para armazenar e entregar produtos de dados finais para aplicativos de usuários.
Colaboração: Os parceiros de negócios obtêm acesso seguro aos dados de que precisam por meio do Delta Sharing. Com base no Delta Sharing, o Databricks Marketplace é um fórum aberto para a troca de produtos de dados.
Análise
As últimas aplicações de negócios estão nesta raia. Exemplos incluem clientes personalizados, como aplicativos de IA conectados ao Mosaic AI Model Serving para inferência em tempo real ou aplicativos que acessam dados enviados da casa do lago para um banco de dados operacional.
Para casos de uso de BI, os analistas normalmente usam ferramentas de BI para acessar o data warehouse. Os desenvolvedores de SQL também podem usar o Editor SQL Databricks (não mostrado no diagrama) para consultas e painéis.
A plataforma de inteligência de dados também oferece painéis para criar visualizações de dados e compartilhar insights.
Integre
A plataforma Databricks integra-se com provedores de identidade padrão para gestão de utilizadores e autenticação única (SSO) .
Serviços externos de IA como OpenAI, LangChain ou HuggingFace podem ser usados diretamente de dentro da Databricks Intelligence Platform.
Os orquestradores externos podem usar a abrangente API REST ou conectores dedicados para ferramentas de orquestração externas, como o Apache Airflow .
O Unity Catalog é usado para todos os dados & governança de IA na Databricks Intelligence Platform e pode integrar outros bancos de dados em sua governança por meio Lakehouse Federation.
Além disso, o Unity Catalog pode ser integrado em outros catálogos corporativos, por exemplo, Purview. Entre em contato com o fornecedor do catálogo corporativo para obter detalhes.
Recursos comuns para todas as cargas de trabalho
Além disso, o Databricks lakehouse vem com recursos de gerenciamento que suportam todas as cargas de trabalho:
Governança de dados e IA
O sistema central de governança de dados e IA na plataforma de inteligência de dados Databricks é o Unity Catalog. O Unity Catalog fornece um único local para gerenciar políticas de acesso a dados que se aplicam a todos os espaços de trabalho e suportam todos os ativos criados ou usados na lakehouse, como tabelas, volumes, recursos (repositório de recursos) e modelos (registro de modelo). O Unity Catalog também pode ser usado para capturar linhagens de dados de tempo de execução em consultas executadas no Databricks.
O Databricks de monitoramento de lakehouse permite que você monitore a qualidade dos dados de todas as tabelas em sua conta. Ele também pode acompanhar o desempenho de modelos de aprendizado de máquina e pontos de extremidade de serviço de modelo.
Para observabilidade, as tabelas do sistema são um armazenamento analítico hospedado pelo Databricks dos dados operacionais da sua conta. As tabelas do sistema podem ser usadas para observabilidade histórica em toda a sua conta.
Mecanismo de inteligência de dados
A Databricks Data Intelligence Platform permite que toda a sua organização use dados e IA. Ele é alimentado por DatabricksIQ e combina IA generativa com os benefícios de unificação de um lakehouse para entender a semântica única de seus dados.
O Assistente Databricks está disponível em notebooks Databricks, editor SQL e editor de arquivos como um assistente de IA sensível ao contexto para desenvolvedores.
Automação & Orquestração
O Databricks Jobs orquestra pipelines de processamento de dados, aprendizado de máquina e análise na Databricks Data Intelligence Platform. Delta Live Tables permitem que você crie pipelines ETL confiáveis e fáceis de manter com sintaxe declarativa. A plataforma também suporta CI/CD e MLOps
Casos de uso de alto nível para a Plataforma de Inteligência de Dados no Azure
O Databricks LakeFlow Connect oferece conectores integrados para ingestão de aplicativos corporativos e bancos de dados. O pipeline de ingestão resultante é governado pelo Unity Catalog e é alimentado por computação sem servidor e Delta Live Tables. O LakeFlow Connect aproveita leituras e gravações incrementais eficientes para tornar a ingestão de dados mais rápida, escalável e econômica, enquanto seus dados permanecem atualizados para consumo downstream.
Caso de uso: Ingestão com Lakeflow Connect:
Download: Arquitetura de referência de ETL em lote para o Azure Databricks.
Caso de uso: Batch ETL
Download: Arquitetura de referência de ETL em lote para o Azure Databricks
As ferramentas de ingestão usam adaptadores específicos da fonte para ler dados da fonte e, em seguida, armazená-los no armazenamento em nuvem de onde o Auto Loader pode lê-los ou chamar Databricks diretamente (por exemplo, com ferramentas de ingestão de parceiros integradas ao lago Databricks). Para carregar os dados, o ETL Databricks e o mecanismo de processamento - via DLT - executam as consultas. Fluxos de trabalho de tarefa única ou múltipla podem ser orquestrados pelo Databricks Jobs e governados pelo Unity Catalog (controle de acesso, auditoria, linhagem e assim por diante). Se os sistemas operacionais de baixa latência exigirem acesso a tabelas douradas específicas, eles poderão ser exportados para um banco de dados operacional, como um RDBMS ou armazenamento de chave-valor no final do pipeline de ETL.
Caso de uso: Streaming e captura de dados de alteração (CDC)
Download: Arquitetura de streaming estruturada do Spark para o Azure Databricks
O mecanismo ETL do Databricks usa o Spark Structured Streaming para ler filas de eventos como Apache Kafka ou Hub de Eventos do Azure. As etapas a jusante seguem a abordagem do caso de uso do lote acima.
A captura de dados de alteração em tempo real (CDC) normalmente usa uma fila de eventos para armazenar os eventos extraídos. A partir daí, o caso de uso segue o caso de uso de streaming.
Se o CDC for feito em lote onde os registros extraídos são armazenados no armazenamento em nuvem primeiro, o Databricks Autoloader poderá lê-los e o caso de uso segue o Batch ETL.
Caso de uso: Machine learning e IA
Download: Aprendizado de máquina e arquitetura de referência de IA para o Azure Databricks
Para aprendizado de máquina, a Databricks Data Intelligence Platform fornece Mosaic AI, que vem com bibliotecas de aprendizado profundo e de máquina de última geração. Ele fornece recursos como Feature Store e registro de modelo (ambos integrados ao Unity Catalog), recursos low-code com AutoML e integração MLflow no ciclo de vida da ciência de dados.
Todos os ativos relacionados à ciência de dados (tabelas, recursos e modelos) são regidos pelo Unity Catalog e os cientistas de dados podem usar o Databricks Jobs para orquestrar seus trabalhos.
Para implantar modelos de forma escalável e de nível empresarial, use os recursos MLOps para publicar os modelos no serviço de modelos.
Caso de uso: Aplicativos de agente de IA generativa (Gen AI)
Download: Arquitetura de referência da aplicação Gen AI para o Azure Databricks
Para casos de uso de IA generativa, o Mosaic AI vem com bibliotecas de última geração e recursos específicos de IA de geração, desde engenharia imediata até ajuste fino de modelos existentes e pré-treinamento do zero. A arquitetura acima mostra um exemplo de como a pesquisa vetorial pode ser integrada para criar um aplicativo de IA de geração usando RAG (geração aumentada de recuperação).
Para implantar modelos de forma escalável e de nível empresarial, use os recursos MLOps para publicar os modelos no serviço de modelos.
Caso de uso: BI e análise SQL
Download: arquitetura de referência de análise de BI e SQL para Azure Databricks
Para casos de uso de BI, os analistas de negócios podem usar painéis, o editor SQL Databricks ou ferramentas de BI específicas, como Tableau ou Power BI. Em todos os casos, o mecanismo é Databricks SQL (serverless ou non-serverless) e a descoberta, exploração e controle de acesso de dados são fornecidos pelo Unity Catalog.
Caso de uso: Lakehouse federation
Download: Arquitetura de referência de federação Lakehouse para Azure Databricks
A federação Lakehouse permite que bancos de dados SQL externos (como MySQL, Postgres, SQL Server ou Azure Synapse) sejam integrados ao Databricks.
Todas as cargas de trabalho (IA, DWH e BI) podem se beneficiar disso sem a necessidade de ETL dos dados para o armazenamento de objetos primeiro. O catálogo de origem externa é mapeado no catálogo Unity e o controle de acesso refinado pode ser aplicado ao acesso por meio da plataforma Databricks.
Caso de uso: compartilhamento de dados corporativos
O compartilhamento de dados de nível empresarial é fornecido pelo Delta Sharing. Ele fornece acesso direto aos dados no repositório de objetos protegido pelo Unity Catalog, e o Databricks Marketplace é um fórum aberto para a troca de produtos de dados.