Produtos de dados analíticos em escala de nuvem no Azure
Produtos de dados são dados servidos como produto e computados, salvos e servidos por serviços de persistência poliglota, que podem ser exigidos por certos casos de uso. O processo de criação e serviço de um produto de dados pode exigir serviços e tecnologias que não estão incluídos nos serviços principais da zona de aterrissagem de dados. Um exemplo disso seria a elaboração de relatórios com requisitos de nicho, como conformidade e relatórios fiscais.
Considerações de design
Uma zona de aterrissagem de dados pode ser servida por vários produtos de dados criados pela ingestão de dados de dentro da mesma zona de aterrissagem de dados ou de várias zonas de aterrissagem de dados. Isso é mostrado no diagrama a seguir.
O exemplo acima mostra:
- Consumo de dados intrazona:
- O produto de dados B consome dados do produto de dados A e outros dados ou produtos de dados existentes no data lake dentro de sua própria zona de pouso.
- Os produtos de dados C e D só consomem dados de dentro de suas respetivas zonas de aterrissagem de dados.
- Consumo de dados entre zonas:
- O produto de dados B também consome dados do produto de dados C e os dados no data lake da zona de aterrissagem 3.
Importante
No caso do consumo de dados entre zonas, uma vez que o produto de dados B é criado através da leitura da zona de aterragem de dados 3, este acesso de leitura requer a aprovação das equipas de operações da zona de aterragem de dados e das operações de integração da zona de aterragem de dados 3.
Importante
O produto de dados B consome dados dos produtos de dados A e C. Antes que isso possa acontecer, o produto de dados B deve registrar seu consumo de produtos de dados por meio de acordos de compartilhamento de dados. Este acordo de partilha de dados deve atualizar a linhagem do produto de dados A para o produto de dados B e do produto de dados C para o produto de dados B.
O grupo de recursos para um produto de dados inclui todos os serviços necessários para criá-lo e mantê-lo. Podemos chamar esse grupo de recursos de aplicativo de dados. Exemplos de serviços que podem fazer parte de um aplicativo de dados incluem Azure Functions, Serviço de Aplicativo do Azure, Aplicativos Lógicos, Azure Analysis Services, Serviços Cognitivos do Azure, Azure Machine Learning, Banco de Dados SQL do Azure, Banco de Dados do Azure para MySQL e Azure Cosmos DB. Para obter mais informações, consulte exemplos de aplicativos de dados.
Os produtos de dados têm dados de fontes de dados READ que tiveram algumas transformações de dados aplicadas. Exemplos podem ser um conjunto de dados recém-selecionado ou um relatório de BI.
Recomendações de design
Crie produtos de dados dentro de sua zona de aterrissagem de dados aderindo aos princípios de design que permitem dimensionar com governança de dados. As seções a seguir fornecem recomendações de design para ajudar a planejar seu ecossistema de aplicativos de dados.
Implantar vários grupos de recursos
Cada aplicativo de dados é um grupo de recursos. Como os aplicativos de dados são serviços de computação, serviços de persistência poliglota ou ambos, eles só podem ser necessários dependendo de certos casos de uso. Como tal, eles são considerados um componente opcional da zona de aterrissagem de dados. Em um caso em que você precisa de aplicativos de dados, crie vários grupos de recursos por aplicativo de dados, como mostra o diagrama a seguir.
Definir guarda-corpos
A Política do Azure orienta a configuração padrão de serviços dentro de uma zona de aterrissagem de dados. Pense na análise operacional como vários grupos de recursos que sua equipe de produtos de dados pode solicitar de um catálogo de serviços padrão. Usando a Política do Azure, você pode configurar o limite de segurança e o conjunto de recursos necessários.
Importante
Para gerar consistência, configure uma Política do Azure para cada aplicativo de dados.
Consumir dados de vários locais
Os aplicativos de dados gerenciam, organizam e dão sentido aos dados de vários ativos de dados e apresentam todos os insights obtidos. Um produto de dados é o resultado de dados de um ou vários aplicativos de dados dentro de zonas de aterrissagem de dados. Permita que seus aplicativos de dados acessem dados de várias e várias fontes quando necessário.
Dimensione conforme necessário
Os serviços que compõem aplicativos de dados são implantações incrementais na zona de aterrissagem de dados. Dimensione seus aplicativos de dados conforme necessário.
Habilitar a descoberta de dados
Registe automaticamente os seus produtos de dados num catálogo de dados como o Azure Purview para permitir a análise de dados.
Identificar os seus produtos de dados
Ao começar a planejar uma zona de aterrissagem de dados, identifique quantos produtos de dados (e os aplicativos de dados que os produzem e mantêm) forem necessários para ajudar a impulsionar a arquitetura do aplicativo do produto de dados. A conformidade com a governança da plataforma implementada deve desempenhar o maior papel em suas decisões.
Concentre-se em como seus aplicativos de dados são produtores de dados e consumidores para outros. Por exemplo, suponha que você identificou um conjunto de produtos de dados (A, B, C e D) que são dados produzidos e consumidos. Você precisa dos produtos de dados A e D como fontes para os dados no Aplicativo de Dados B para o produto de dados B. O produto de dados B é criado a partir dos dados que o Aplicativo de Dados B consome dos produtos de dados A e D. O Aplicativo de Dados B atua como um produtor de dados e também produz dados para o produto de dados C.
Controle seu ambiente de aplicativo de dados com infraestrutura como código
A governança e a infraestrutura como código devem controlar o ambiente de aplicativos de dados em todo o ecossistema de produtos de dados, conforme mostrado no diagrama anterior.
Publicar modelos de dados
Suas equipes de produtos de dados devem publicar seus modelos de dados em um repositório de modelagem.
Definir expectativas para usuários de produtos de dados
Atualize seus contratos de compartilhamento de dados com contratos de nível de serviço e certificações para seus produtos de dados para que você transmita expectativas precisas aos usuários em potencial do produto de dados.
Linhagem de captura
Se o produto de dados B for criado a partir de dados provenientes de produtos de dados A e D, a linhagem deverá ser capturada de A e D para B. Outras linhagens também devem ser capturadas para o produto de dados C, uma vez que ele é criado usando dados do produto de dados B. A linhagem atualizada deve ser capturada em um aplicativo de linhagem de dados antes de cada lançamento do seu produto de dados.
Nota
O uso do Azure Pipelines permite criar portas de aprovação e invocar funções que podem garantir que metadados, linhagem e SLAs sejam registrados no serviço de governança correto.
Definir arquitetura de aplicativo de dados
Você deve criar uma arquitetura detalhada para cada produto de dados que defina totalmente seu relacionamento com outros produtos de dados, suas dependências e seus requisitos de acesso.
Exemplo de cenário de design
Para entender o processo de definição da arquitetura, explore o exemplo a seguir de uma instituição financeira e seu produto de dados de monitoramento de crédito.
O produto de dados de monitoramento de crédito mostrado neste diagrama consome dados de um armazenamento de dados de leitura que foi ingerido pela equipe de operações de integração. Produz produto(s) de dados também consumido(s) por dois outros produtos de dados.
Nota
Uma fonte de dados de leitura ou armazenamento também é conhecida como fonte de registro dourado. Essas fontes de dados foram limpas, mas não tiveram nenhuma transformação aplicada a elas.
A equipe do produto de dados de monitoramento de crédito solicita acesso de leitura para armazenar dados de leitura necessários para a criação do produto de dados. Os seus pedidos são encaminhados para os proprietários dos dados para aprovação. Depois de receber a aprovação, a equipe de produto pode começar a criar seu aplicativo de dados.
Os dados da fonte de dados lidos são transformados no(s) produto(s) de dados de monitoramento de crédito. Todos os novos produtos de dados são armazenados na camada selecionada do data lake. Esses novos produtos de dados e a nova linhagem de dados devem ser registrados como parte do processo de implantação do DevOps. Uma função pode verificar metadados registrados com a estrutura física do ativo de dados. Ele deve registrar a dependência dos ativos de dados da fonte de dados de leitura e produtos de dados.
A equipe de produtos de dados de aprovação de empréstimos depende de alguns dos produtos de dados de monitoramento de crédito. A equipe de aprovação de empréstimos pode solicitar acesso de leitura aos produtos de dados de monitoramento de crédito necessários para seus produtos de dados. Uma vez que eles liberem seu produto de dados de aprovação de empréstimo e sua aplicação de dados, todos os ativos, linhagem e modelos de produtos de dados devem ser registrados nos serviços de governança relevantes.
Aplicações de dados de exemplo
As seções a seguir contêm aplicativos de dados de exemplo para ilustrar melhor os cenários de aplicativos de dados.
Análise de dados e aplicação de dados de ciência de dados
Um aplicativo para análise e ciência de dados pode conter os serviços mostrados no aplicativo product-analytics-rg
de dados de exemplo .
Nota
Você pode usar o aplicativo de dados anterior como um modelo. Este modelo implanta um conjunto de serviços que você pode usar para análise de dados e ciência de dados. Você pode usar este modelo de aplicativo de produto de dados para criar rapidamente ambientes para equipes multifuncionais. Você deve desativar explicitamente todos os serviços que não são necessários.
O modelo Data Product Analytics contém todos os modelos para implantar um produto de dados para análise e ciência de dados dentro de uma zona de aterrissagem de dados de cenário de análise em escala de nuvem.
Os artefatos de implantação e código incluem os seguintes serviços:
- Machine Learning
- Key Vault
- Application Insights
- Armazenamento
- Container Registry
- Serviços Cognitivos (opcional)
- Data Factory (selecione entre Data Factory e Synapse)
- Espaço de trabalho Synapse (selecione entre Data Factory e Synapse)
- Azure Search (opcional)
- Pool SQL (opcional)
- Pool de BigData (opcional)
Aplicação de dados em lote
O modelo Aplicativo de dados em lote contém todos os modelos para implantar um produto de dados para processamento de dados em lote dentro de uma zona de aterrissagem de dados de cenário de análise em escala de nuvem.
Os artefatos de implantação e código incluem os seguintes serviços:
- Key Vault
- Data Factory (selecione entre Data Factory e Synapse)
- Azure Cosmos DB (opcional)
- Espaço de trabalho Synapse (selecione entre Data Factory e Synapse)
- Banco de dados MySQL (opcional)
- Banco de Dados SQL do Azure (opcional)
- Banco de dados PostgreSQL (opcional)
- Banco de dados MariaDB (opcional)
- Pool SQL (opcional)
- SQL Server (opcional)
- SQL Elastic Pool (opcional)
- BigData Pool
Aplicação de Streaming de Dados
O modelo Aplicativo de Streaming de Dados contém todos os modelos para implantar um produto de dados para processamento de dados em tempo real dentro de uma zona de aterrissagem de dados de cenário de análise em escala de nuvem
Os artefatos de implantação e código incluem os seguintes serviços:
- Key Vault
- Hubs de Eventos
- Hub IoT
- Stream Analytics (opcional)
- Azure Cosmos DB (opcional)
- Espaço de trabalho Sinapse
- Banco de Dados SQL do Azure (opcional)
- Pool SQL (opcional)
- SQL Server (opcional)
- SQL Elastic Pool (opcional)
- BigData Pool
- Data Explorer (opcional)
Para localizar os repositórios que contêm os modelos de implantação mencionados anteriormente, consulte os modelos de implantação para análise em escala de nuvem