Arquitetura Lambda com Azure

por | 3/07/2019 | Analytics, Arquitetura | 0 Comentários

Tempo de leitura: 5 minutos
Arquitetura Lambda com Azure

Atualização e revisão em 04/07/2022

Seguindo os princípios essenciais e atendendo as exigências básicas para funcionar corretamente, a Arquitetura Lambda precisa de atenção ao implementá-la em um ambiente Azure.

Por isso seguir o passo a passo é essencial para que a ferramenta funcione corretamente e tenha toda a potência necessária para transformar a gestão dos dados na empresa.

Princípios da Arquitetura Lambda

A Arquitetura Lambda leva os seguintes princípios em sua concepção:

  • Genérica;
  • Escalável;
  • Tolerante a falhas humanas;
  • Hardware;
  • Robusta em sistemas de processamento de dados em baixa latência.

E a partir desses princípios conseguimos atender os 3 “V” do BIG DATA que são Velocidade, Variedade e Volume.

No decorrer desse artigo vamos abordar um pouco sobre as camadas da arquitetura Lambda e como é a interação sobre elas no processamento de dados, e como isso seria implementado na nuvem da Microsoft Azure de uma forma básica que, inicialmente, poderá ser escalonada conforme a Volumetria dos dados e Variedade que forem acrescentadas, sem perder a Velocidade em uma arquitetura baseada em SaaS – Software as a Service (Software como Serviço).

Cenários diversificados de Arquitetura Lambda:

Nathan Marz foi o primeiro a utilizar o termo Lambda Architecture no Twitter para resolver esse problema de garantir dados em near real-time em uma infraestrutura de BI e BIG DATA e para isso temos o seguinte cenário base da Arquitetura Lambda:

Figura 1- Fonte : http://lambda-architecture.net/img/la-overview_small.png

  1. Todos os dados são enviados para duas camadas de processamento, Batch e processamento Speed.
  2. A camada de Batch tem a função de gerenciar o master dataset e pré-processar para a visão de Batch
  3. O Serving Layer indexa as batch views para realizarmos query sobre essas views.
  4. A camada de Speed traz dados em baixa latência para serem mesclados com as Batches Views e criar as real time views, trazendo sempre uma visão atual dos dados.
  5. A camada de query pode trazer resultados realizando o merging das camadas de serving e speed trazendo visões de baixa latência.

Em um ambiente Azure a Arquitetura Lambda segue os mesmos princípios de escalabilidade, genérica e tolerante a falhas como podemos observar:

Figura 2 – Fonte: Imagem DataEx

  1. Na camada de Batch utilizamos o serviço Data Factory para realização dos ETLs proventos de diversas fontes de dados armazenando em um Data Lake semi-estruturado que posteriormente pode ser analisado e processado pelo Azure Databricks que é um serviço SaaS para Spark onde podemos criar clusters para executar pipelines e salvar de forma estruturada na camada de Serving.
  2. No Serving layer temos o SQL Data Warehouse que é MPP onde podemos criar clusters para servir tanto a camada de merge quanto o próprio databricks fazendo comparação de dados já processados anteriormente e gerando novos insigths.
  3. A camada de speed utilizamos crawlers publicados em Conteiners e em Azure Functions onde ficamos lendo das fontes de dados e os logs de movimentações em real-time e empurramos esses dados em filas no Azure Event Hub que são processadas constantemente pelo Stream Analytics e armazenadas tanto diretamente na camada de query em um dataset do Power BI quanto na camada de serving no SQL Data Warehouse e no Data Lake para tratativa pelo Databricks.
  4. A camada de Merge serve para trazer segurança e velocidade no acesso a dados em Batch, tudo controlado pelo Active Directory do Azure e utilizando features do Analysis Services Tabular para aumentar essa velocidade e segurança como o Row Level Security e roles de acesso a modelos de dados.
  5. Na camada de query utilizamos o Power BI para consumir e visualizar esses dados, e disponibilizar um self-service adequado para a área de negócios.

Assim temos uma arquitetura baseada em SaaS escalável e robusta que conseguirá atender a todas as demandas de dados das demais áreas da empresa sem depender da área de BI realmente desenvolver os relatórios e sim provisionar os dados de forma confiável.

A arquitetura Lambda hoje é uma das mais usadas no mercado pela fácil interação e baixa latência de processamento que todos os negócios exigem para tomar decisões baseadas em dados.

Fico por aqui pessoal, se tiverem dúvidas ou quiserem se aprofundar mais podem entrar em contato no meu email bruno.galvincio@dataex.com.br

Abraço!

Bruno

REFERÊNCIAS:

HAUSENBLAS, Michel. Lambda Architecture. lambda-architecture, Los Angeles .2017. Disponível em: http://lambda-architecture.net/. Acesso em: 06, Abril de 2019.

Deseja começar a transformação do seu negócio através da implementação do Microsoft Azure?

Conte com a expertise de um time especialista no assunto para dar start na jornada tecnológica que sua empresa precisa. A DataEX está pronta para auxiliá-lo na implementação de um sistema robusto e essencial para melhorar a análise dos dados disponíveis em seu sistema.

Preencha o formulário abaixo e entraremos em contato.

Ebook Data Driven Team - Cultura de Dados

E-book Data Driven Team

Conheça o processo que valoriza e incentiva o uso de dados nas tomadas de decisão cruciais do seu negócio.

Declaração de privacidade
Ebook Data Driven Team - Cultura de Dados

E-book Data Driven Team

Conheça o processo que valoriza e incentiva o uso de dados nas tomadas de decisão cruciais do seu negócio.

0 comentários

Enviar um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Veja mais artigos relacionados

Engenharia de Dados impulsiona a personalização no Marketing?

Nos últimos anos, a personalização se tornou uma tendência dominante no mundo do marketing. À...

Estratégias de Integração de Dados para uma Visão 360 do Cliente

A gestão eficaz dos dados do cliente é fundamental para as empresas que buscam compreender,...

Arquitetura de dados escalável e eficiente: Como fazer?

Construir uma arquitetura de dados escalável e eficiente é fundamental para empresas que desejam...

ETL e sua importância para o trabalho com dados

O ETL se trata de um processo que extrai, transforma e carrega dados de diferentes fontes para um...

Storytelling de Dados na estratégia de negócios

Dados, engenharia de dados e ciência de dados, são palavras tão utilizadas ultimamente que fica...

Machine Learning: Um guia atualizado!

O Machine Learning é utilizado em vários aplicativos , mas como ele pode ajudar no crescimento de...