Arquitetura de medalhão moderna para armazém de dados no Microsoft Fabric

Microsoft Fabric
Power BI

Este exemplo de carga de trabalho descreve uma arquitetura de medalhão de armazém de dados moderno (MDW) centrado em SQL. Um data warehouse moderno utiliza repositórios de dados baseados em SQL para organizar dados estruturados para análise e relatórios. Esta arquitetura implementa as camadas bronze, prata e ouro em Fabric Data Warehouse e utiliza Fabric Data Factory para orquestrar a ingestão e transformação de dados.

Fabric Data Warehouse armazena dados relacionais em formato Delta no OneLake e suporta o desenvolvimento T-SQL através de tabelas, vistas, transações e procedimentos armazenados. Os clientes de Power BI e SQL, bem como outras aplicações, consomem dados tratados da camada gold.

Important

Os padrões recomendados de medalhão Fabric usam uma casa de lago para cada camada ou casas de lago para as camadas de bronze e prata e um armazém para a camada de ouro. Esta arquitetura utiliza armazéns para as três camadas porque os dados permanecem estruturados e são transformados através do SQL ao longo de todo o processo. Os lakehouses são mais adequados para processamento baseado em Spark, cargas de trabalho de ciência de dados e grandes volumes de dados não estruturados ou semiestruturados. Para uma implementação lakehouse first que suporta Spark e dados não estruturados, veja Greenfield lakehouse no Microsoft Fabric.

Architecture

Diagrama de uma arquitetura medalhão moderna de armazém de dados no Microsoft Fabric.

Descarregue um ficheiro PowerPoint relativo a esta arquitetura.

No diagrama, o Mirroring trata da replicação operacional de bases de dados, e os pipelines do Fabric Data Factory fazem a ingestão de origens não espelhadas para a camada bronze.

Fluxo de dados

O seguinte fluxo de dados corresponde ao diagrama anterior:

  1. Bases de dados operacionais, aplicações SaaS, ficheiros e outros sistemas fonte produzem dados.

  2. A ingestão traz dados de origem para o Fabric através de dois caminhos. Para bases de dados operacionais suportadas, o Espelhamento no Fabric replica continuamente os dados para um item espelhado da base de dados no OneLake. Uma etapa de armazém CTAS ou INSERT ... SELECT persiste então esses dados no armazém bronze. Para ficheiros, aplicações SaaS e outras origens não espelhadas, utilize pipelines do Fabric Data Factory ou T-SQL do armazém de dados, como COPY INTO, para carregar tabelas Bronze.

  3. A camada bronze armazena dados brutos, minimamente processados, em tabelas de armazém. Metadados de ingestão, como marcas temporais de carregamento e identificadores de origem, permitem a auditoria e o reprocessamento.

  4. A primeira fase de transformação (Bronze to silver) valida e transforma os dados de bronze na camada de prata.

  5. A camada de prata contém dados purificados, desduplicados e conformados. Quando é necessária uma análise histórica, as tabelas silver mantêm as alterações da origem com datas de entrada em vigor e indicadores da linha atual.

  6. Procedimentos armazenados ou trabalhos DBT normalmente implementam o Bronze to silver estágio usando padrões SQL como CREATE TABLE AS SELECT (CTAS), INSERT ... SELECT, e MERGE.

  7. A camada ouro fornece esquemas estelares prontos para consumo, data marts e tabelas pré-agregadas.

  8. A segunda etapa de transformação (Silver to gold) transforma dados de prata em entidades empresariais, dimensões, factos e agregados na camada de ouro.

  9. O Power BI consome dados de ouro através de modelos semânticos. Outros consumidores, como clientes SQL, notebooks e aplicações, podem efetuar consultas ao ponto final SQL do armazém de dados.

Components

  • Fabric Data Warehouse fornece as tabelas de computação e relacionais T-SQL para as camadas bronze, prata e ouro.
  • O OneLake armazena dados de armazém em formato Delta e armazena dados replicados por espelhamento Fabric.
  • O espelhamento no Fabric replica continuamente bases de dados operacionais suportadas no OneLake.
  • A Fabric Data Factory ingere dados e orquestra procedimentos armazenados, pipelines e outras atividades de transformação.
  • O Power BI fornece modelos semânticos, relatórios e dashboards sobre dados gold curados.

Orientação de design

A orientação seguinte descreve como implementar as camadas de bronze, prata e ouro e organizar os espaços de trabalho de apoio. Adapte estas recomendações às fontes de dados e requisitos de governação da sua carga de trabalho e às competências da sua equipa.

Camada bronze: Ingestão de dados brutos

A camada bronze ingere dados brutos e captura todos os dados de origem na sua forma original sem aplicar qualquer lógica de negócio. Serve como sistema de registo, permitindo rastreabilidade total e reprocessamento. As tabelas nesta camada espelham de perto os esquemas de origem e evitam intencionalmente filtragem, deduplicação ou enriquecimento. Colunas opcionais de metadados, como marcas temporais de ingestão ou nomes de ficheiros de origem, ajudam frequentemente nas auditorias.

Para bases de dados operacionais suportadas, utilize Mirroring in Fabric para replicar continuamente as tabelas de origem para o OneLake. Para origens de ficheiros, SaaS ou não suportadas, utilize pipelines do Fabric Data Factory, COPY INTO para ingestão em massa, ou OPENROWSET com CTAS ou INSERT ... SELECT para persistir dados de ficheiros externos na camada bronze do armazém de dados.

Nesta fase, a ingestão mantém a transformação no mínimo, pelo que a camada bronze continua a ser o sistema de registo reexecutável. Quando necessário para fontes não espelhadas, um procedimento armazenado com carga bronze (ou modelo DBT equivalente) pode padronizar registos recebidos e adicionar metadados de carga.

As melhores práticas para a camada bronze enfatizam a preservação de todos os dados brutos, incluindo registos inválidos, a utilização de ingestão em lote para evitar problemas de ficheiros pequenos, o alinhamento estreitamente dos esquemas com os sistemas de origem e a automatização dos fluxos de trabalho de ingestão através do uso de pipelines Fabric para garantir consistência e fiabilidade em larga escala.

Camada prateada: Limpeza e conformidade de dados

A camada prata centra-se na limpeza e harmonização dos dados, refinando os dados da camada bronze mediante a aplicação de regras de qualidade dos dados, normalização, eliminação de duplicados e integração de múltiplas fontes. Em última análise, produz uma única fonte de verdade para dados limpos e fiáveis.

Normalmente implementas transformações nesta fase usando T-SQL, usando padrões como CREATE TABLE AS SELECT (CTAS), INSERT … SELECT, e MERGE instruções para suportar processamento em lote e incremental. Embora Fabric Data Warehouse não suporte vistas materializadas, podes usar vistas materializadas de lago, implementadas através do Spark, para gerar tabelas Delta. O endpoint de análise SQL expõe estas tabelas Delta como tabelas que o armazém de dados pode ler.

As melhores práticas para a camada prata incluem desenhar transformações para serem idempotentes, aplicar consistentemente regras de qualidade de dados e usar MERGE para atualizações incrementais. Quando a carga de trabalho exigir historização, mantenha as versões das linhas com datas efetivas de início e fim e um indicador de linha atual. As dimensões Gold podem usar este histórico para implementar o comportamento de dimensão de alteração lenta (SCD) do tipo 1 ou do tipo 2.

Camada dourada: Dados curados para análise de dados

A camada de ouro fornece dados selecionados e preparados, prontos para utilização empresarial, otimizados para análises, relatórios e consumo em ferramentas de BI, como o Power BI. Esta camada foi concebida com base em padrões de modelação analítica, recorrendo frequentemente a esquemas em estrela com tabelas de factos e de dimensões, data marts específicos de cada domínio e tabelas de resumo pré-agregadas para suportar consultas eficientes e uma análise intuitiva.

Normalmente, derivam tabelas de ouro exclusivamente a partir de dados de prata e expõem-nas aos utilizadores finais e às ferramentas de relatórios.

Use chaves substitutas estáveis para dimensões para que os factos não dependam de chaves mutáveis do sistema de origem. O Fabric Data Warehouse suporta BIGINT IDENTITYcolunas para geração de chaves substitutas. Os valores de identidade são únicos, mas não são garantidos que sejam sequenciais ou ordenados, e podem ocorrer lacunas. Se essas limitações não forem adequadas para a carga de trabalho, gere e persiste chaves substitutas na lógica de transformação e mantenha um mapeamento duradouro para cada chave natural. Não regeneres as chaves substitutas durante uma atualização completa.

As melhores práticas para a camada ouro incluem modelar dados para alinhar de perto com casos analíticos e de uso empresarial, pré-agregação de dados sempre que possível para melhorar o desempenho, aplicação de controlos de segurança como segurança ao nível de linha (RLS), segurança ao nível de colunas (CLS) e mascaramento de dados, bem como documentação detalhada da linhagem e transformação dos dados.

Estratégia de espaço de trabalho

Uma estratégia de espaço de trabalho define como as camadas de bronze, prata e ouro são logicamente e fisicamente separadas para equilibrar governação, segurança e simplicidade operacional. Pode implementar camadas usando espaços de trabalho separados por camada, o que recomendamos quando são necessárias fronteiras de segurança fortes, propriedade clara ou separação rigorosa de responsabilidades. Por exemplo, deve isolar a ingestão de dados brutos dos dados de negócio tratados.

Alternativamente, pode implementar camadas dentro de um único espaço de trabalho usando armazéns separados para dados de bronze, prata e ouro. Esta abordagem pode reduzir a sobrecarga de gestão e simplificar o desenvolvimento e os testes entre camadas, preservando a separação ao nível do data warehouse entre as camadas do medalhão.

A escolha entre estas abordagens depende tipicamente de fatores como a escala organizacional, requisitos de segurança, estrutura da equipa e maturidade da governação. Muitas empresas adotam um modelo híbrido à medida que a implementação do Fabric evolui. Recomendamos a utilização de espaços de trabalho separados quando forem necessários limites de isolamento, governação e posse.

Documentação de orientação para a implementação

Fabric Data Warehouse proporciona consistência transacional e processamento fiável de dados nas camadas bronze, prata e ouro. Use escritas orientadas por lote para minimizar problemas de ficheiros pequenos e melhorar a eficiência do armazenamento e das consultas. Utilize instruções MERGE para lidar com dados de chegada tardia ou dados alterados em cenários de processamento incremental.

Mantenha as transações de curta duração para reduzir a contenda e otimizar a concorrência, especialmente em ambientes de alta consumência. Monitorize ativamente o desempenho e a saúde operacional através das informações de consulta do Fabric e das vistas de gestão dinâmica (DMVs). A separação arquitetónica das cargas de leitura e escrita no Fabric permite ainda mais que trabalhos de ingestão e transformação corram em simultâneo sem bloquear consultas analíticas, garantindo um desempenho previsível para análises e relatórios a jusante.

Utilize procedimentos armazenados em T-SQL e pipelines do Fabric Data Factory para transformação nativa de SQL e orquestração. Equipas que prefiram modelos e testes SQL modulares podem usar o adaptador DBT mantido por Microsoft para Fabric Data Warehouse. Execute testes de unicidade, integridade referencial e valor aceite como portas de implementação ou pipeline antes de publicar dados para camadas posteriores.

Alternatives

Essa arquitetura inclui vários componentes que você pode substituir por outros serviços ou abordagens do Azure, dependendo dos requisitos funcionais e não funcionais da sua carga de trabalho. Considere as seguintes alternativas e as suas desvantagens.

Para cenários que enfatizam engenharia de dados em grande escala, análises avançadas, aprendizagem automática ou dados não estruturados, uma arquitetura lakehouse first no Microsoft Fabric pode ser uma melhor opção. Nesta abordagem, um lakehouse do Fabric funciona como o repositório de dados principal no OneLake, e as transformações são implementadas principalmente com recurso a ferramentas baseadas em Spark, como notebooks ou o Dataflow Gen2. Este padrão disponibiliza recursos de computação distribuída, notebooks e ferramentas de aprendizagem automática que não constituem o foco desta arquitetura de data warehouse centrada em SQL.

Para organizações com forte foco em ciência de dados, IA ou processamento distribuído complexo, o Azure Databricks é outra alternativa. O Azure Databricks é normalmente selecionado quando as cargas de trabalho requerem integração profunda com frameworks de aprendizagem automática open-source, controlo detalhado sobre a execução do Spark ou portabilidade multicloud.

Para análise quase em tempo real ou orientada por eventos, Fabric Real-Time Intelligence, Hubs de Eventos do Azure ou Azure Stream Analytics podem ser mais apropriados do que uma arquitetura medallion orientada para lotes centrada no Fabric Data Warehouse.

Detalhes do cenário

Fabric Data Warehouse encaixa bem nesta arquitetura medallion quando o objetivo principal é fornecer dados governados e prontos para análise em larga escala, utilizando padrões SQL familiares.

Cenário 1: Semântica relacional e desempenho SQL para conjuntos de dados curados e prontos para análise

Fabric Data Warehouse é bem adequado porque fornece tabelas relacionais e vistas, transações ACID e operações T-SQL sobre dados Delta. Este conjunto de funcionalidades suporta cargas de trabalho onde os dados já estão limpos e conformados e devem ser consultados consistentemente através de SQL.

Exemplo: Uma companhia aérea constrói conjuntos de dados de ouro selecionados para operações de voo e análise de receitas. Os analistas dependem do desempenho estável das consultas SQL para avaliar tendências de desempenho atempado, rentabilidade das rotas e utilização da equipa. A utilização de tabelas e vistas do armazém de dados assegura consistência transacional e um comportamento fiável nas consultas, o que é mais difícil de garantir com acesso ad hoc a ficheiros.

Cenário 2: Governação centralizada com uma experiência centrada em SQL

Fabric Data Warehouse permite a governação centralizada através de permissões de espaço de trabalho, segurança ao nível de objeto e linhagem incorporada, expondo os dados através de uma interface SQL familiar para equipas de engenharia analítica. Esta abordagem reduz o atrito operacional, simplifica o controlo de acesso e acelera a adoção entre equipas sem introduzir novos paradigmas de acesso.

Exemplo: Uma empresa global impõe uma separação rigorosa de funções: as equipas de plataforma gerem a ingestão e transformações, e as equipas de análise consomem apenas dados curados. Ao expor apenas tabelas da camada ouro através de um armazém e gerir o acesso centralmente, a organização evita o acesso descontrolado a dados brutos ou intermédios, mantendo um fluxo de trabalho baseado em SQL familiar.

Cenário 3: Consumo otimizado para BI em relatórios e painéis

O armazém de dados está otimizado para elevada concorrência e cargas de trabalho com predominância de leitura, tornando-se uma opção sólida quando um grande número de utilizadores de negócio consome painéis e relatórios baseados em modelos semânticos consistentes. Esta otimização é especialmente importante quando são necessários desempenho, estabilidade e comportamento previsível das consultas durante o pico de utilização.

Exemplo: As equipas de finanças e operações acedem aos painéis do Power BI durante o horário de funcionamento para monitorizar KPIs como receitas, eficiência operacional e conformidade com SLA. O Fabric Data Warehouse isola SELECT e cargas de trabalho não SELECT em pools de computação separados, reduzindo a concorrência direta entre consultas de painel e a ingestão no armazém de dados.

Cenário 4: Suporte de modelação dimensional para uma camada de ouro reutilizável

Fabric Data Warehouse alinha-se naturalmente com padrões de modelação dimensional, incluindo tabelas de factos e dimensões, que normalmente se usam na camada ouro para expor conjuntos de dados reutilizáveis e amigáveis para o negócio. Estes modelos simplificam a análise, reduzem a duplicação de lógica e promovem definições consistentes de métricas entre as equipas.

Exemplo: Uma organização de retalho cria tabelas de dimensões partilhadas para clientes, produtos e lojas, juntamente com tabelas de factos para vendas e inventário. Estes conjuntos de dados gold são reutilizados em múltiplos relatórios e unidades de negócio do Power BI, garantindo que KPIs como vendas líquidas ou rotatividade de inventário sejam definidos uma vez e aplicados de forma consistente.

Considerations

Estas considerações implementam os pilares do Azure Well-Architected Framework, que é um conjunto de princípios orientadores que pode usar para melhorar a qualidade de uma carga de trabalho.

Fiabilidade

A confiabilidade ajuda a garantir que seu aplicativo possa cumprir os compromissos que você assume com seus clientes. Para mais informações, consulte a lista de verificação de revisão de design para Fiabilidade.

Consulte Fiabilidade no Microsoft Fabric para conhecer o modelo de resiliência documentado, incluindo o comportamento em caso de indisponibilidade de uma zona e considerações regionais. Valide as expectativas de recuperação com base nesta orientação para a sua região e requisitos de carga de trabalho.

Para cenários de recuperação de desastres entre regiões, desenhe e documente uma estratégia de recuperação que esteja alinhada com os requisitos organizacionais e o modelo de responsabilidade partilhada.

  • Fabric Data Warehouse suporta PRIMARY KEY, FOREIGN KEY, e UNIQUErestrições de tabela apenas como NOT ENFORCED. O armazém não valida a unicidade nem a integridade referencial. A lógica de ingestão e transformação deve detetar registos duplicados ou órfãos e impedir que cheguem às camadas a jusante.

Segurança

A segurança fornece garantias contra ataques deliberados e o uso indevido de seus valiosos dados e sistemas. Para mais informações, consulte a lista de verificação de revisão de design para Segurança.

A Microsoft Fabric oferece capacidades para gerir, controlar e auditar definições de segurança com base nos requisitos organizacionais. Considere as seguintes práticas de segurança:

  • Utilize o single log-on (SSO) do Microsoft Entra ID para autenticar utilizadores e garantir uma gestão consistente de identidades entre dispositivos e localizações.

  • Aplique permissões baseadas em espaços de trabalho para controlar quem pode criar, modificar ou consumir artefactos do Fabric.

  • Use os controlos de segurança de rede Fabric de entrada e saída ao aceder a dados ou serviços dentro ou fora da sua rede. Estes controlos incluem Acesso Condicional, ligações privadas, acesso a espaços de trabalho confiáveis e endpoints privados geridos.

  • Utilize registos de auditoria Fabric para acompanhar a atividade do utilizador, alterações de configuração e acesso a dados em toda a plataforma.

Para obter mais informações, consulte Segurança no Tecido.

Otimização de Custos

A Otimização de Custos concentra-se em formas de reduzir despesas desnecessárias e melhorar a eficiência operacional. Para mais informações, consulte a lista de verificação de revisão de design para Otimização de Custos.

A Microsoft Fabric fornece reservas de capacidade para um número definido de unidades de capacidade (CUs). Reservas de um ano podem ajudar a reduzir custos para cargas de trabalho previsíveis e constantes.

Para maximizar a utilização da capacidade do Fabric, considere as seguintes práticas:

  • Comece com capacidades de teste ou SKUs F pay-as-you-go para perceber o comportamento da carga de trabalho. Realize uma prova de conceito de âmbito definido com cargas de trabalho representativas de ingestão, transformação e elaboração de relatórios. Monitorize o consumo de CU e extrapole os resultados para estimar as necessidades de produção. Pode aumentar a capacidade do Fabric à medida que a procura aumenta.

  • Analisar o uso histórico para identificar períodos de pico e períodos de menor utilização. Agende cargas de trabalho não críticas ou em segundo plano durante períodos de menor procura para reduzir a pressão sustentada sobre as CUs.

  • Reduza o consumo desnecessário de computação otimizando consultas SQL, Expressões de Análise de Dados (DAX) e trabalhos em segundo plano.

  • O Fabric suporta expansão súbita e uniformização para absorver picos de curto prazo nas necessidades de computação e distribuir ao longo do tempo o consumo das cargas de trabalho em segundo plano. Estas funcionalidades ajudam a dimensionar as capacidades para o uso médio em vez da procura máxima. Para obter mais informações, consulte Avaliar e otimizar a capacidade do Fabric.

  • Coordenar transformações e operações de atualização de longa duração para evitar cargas de trabalho de alto nível de computação sobrepostas na mesma capacidade. Para mais informações, consulte Gestão de Carga de Trabalho em Fabric Data Warehouse.

Tenha em mente as seguintes considerações de preços:

  • O volume de armazenamento do OneLake, o período de retenção e os padrões de acesso aos dados afetam diretamente o custo total. Estimar o crescimento esperado dos dados por camada do modelo medallion e alinhar a retenção com os requisitos empresariais e de conformidade.

  • A fixação de preços da Microsoft Fabric baseia-se numa capacidade atribuída de F, medida em CUs. As licenças Power BI por utilizador são separadas e não fornecem capacidade Fabric.

Use a estimativa pré-configurada na calculadora de preços Azure para obter um custo inicial para esta arquitetura. Ajusta os valores para corresponder à tua carga de trabalho esperada.

Excelência Operacional

A Excelência Operacional abrange os processos operacionais que implementam, monitorizam e mantêm uma carga de trabalho em produção. Para mais informações, consulte a lista de verificação da revisão de design para Excelência Operacional.

O Microsoft Fabric oferece visibilidade operacional integrada em cargas de trabalho de engenharia de dados, armazenamento e análise. Use a aplicação Fabric Capacity Metrics para monitorizar o consumo de capacidade, identificar artefactos intensivos em recursos e compreender como cargas de trabalho interativas e em segundo plano contribuem para a utilização global. Estes insights ajudam as equipas a tomar decisões operacionais informadas sobre escalabilidade, agendamento e otimização.

Configure alertas proativos para que os administradores de capacidade possam identificar cedo condições de elevada utilização ou limitação e responder antes que ocorra impacto no utilizador.

Eficiência de desempenho

Eficiência de Desempenho refere-se à capacidade de uma carga de trabalho escalar e satisfazer a procura dos utilizadores de forma eficiente. Para mais informações, consulte a lista de verificação de revisão de design para Eficiência de Desempenho.

A Microsoft Fabric inclui vários mecanismos para ajudar a gerir o desempenho e a utilização da capacidade:

  • O bursting e o suavizamento permitem que picos de curto prazo na procura computacional se completem mais rapidamente, ao mesmo tempo que distribuem o uso ao longo do tempo. As operações interativas são normalmente suavizadas em janelas de alguns minutos, e as operações em segundo plano são suavizadas em janelas temporais mais longas.

  • A limitação é aplicada quando uma capacidade sofre uma utilização sustentada de computação que está acima dos limites do SKU atribuído. A limitação atrasa ou rejeita novas operações para proteger a estabilidade da plataforma.

  • A aplicação Fabric Capacity Metrics fornece visibilidade detalhada do consumo de capacidade e distingue entre operações interativas (como consultas de relatório) e operações em segundo plano (como ingestão ou atualização de modelo). Esta distinção permite otimizações de desempenho direcionadas para diferentes tipos de carga de trabalho.

Contributors

A Microsoft mantém este artigo. Os seguintes colaboradores escreveram este artigo.

Para ver perfis não públicos do LinkedIn, faça login no LinkedIn.

Próximos passos