Introdução à Arquitetura de Big Data

Quando se trata de gerenciar dados pesados ​​e realizar operações complexas nesses dados massivos, torna-se necessário o uso de ferramentas e técnicas de big data. Quando dizemos usar ferramentas e técnicas de big data, queremos dizer efetivamente que estamos solicitando o uso de vários softwares e procedimentos que se encontram no ecossistema de big data e em sua esfera. Não existe uma solução genérica que seja fornecida para todos os casos de uso e, portanto, ela deve ser criada e fabricada de maneira eficaz, de acordo com os requisitos de negócios de uma empresa específica. Portanto, torna-se necessário fazer uso de diferentes arquiteturas de big data, pois a combinação de várias tecnologias resultará no alcance do caso de uso resultante. Ao estabelecer uma arquitetura fixa, pode-se garantir que uma solução viável seja fornecida para o caso de uso solicitado.

O que é arquitetura de big data?

  • Essa arquitetura é projetada de forma a lidar com o processo de ingestão, o processamento e a análise dos dados são feitos muito grandes ou complexos para lidar com os sistemas tradicionais de gerenciamento de banco de dados.
  • Organizações diferentes têm limites diferentes para suas organizações, algumas têm algumas centenas de gigabytes, enquanto outras têm até alguns terabytes que não são bons o suficiente.
  • Devido a esse evento, se você observar os sistemas de mercadorias e o armazenamento de mercadorias, os valores e o custo de armazenamento reduziram significativamente. Há uma enorme variedade de dados que exige maneiras diferentes de serem atendidas.
  • Alguns deles são dados relacionados a lotes que chegam em um determinado momento e, portanto, os trabalhos precisam ser agendados de maneira semelhante, enquanto outros pertencem à classe de streaming, onde um pipeline de streaming em tempo real deve ser construído para atender a todos os requisitos. requisitos. Todos esses desafios são resolvidos pela arquitetura de big data.

Explicação da arquitetura de Big Data:

Os sistemas de Big Data envolvem mais de um tipo de carga de trabalho e são amplamente classificados da seguinte maneira:

  1. Onde as fontes baseadas em big data estão em repouso, o processamento em lote está envolvido.
  2. Processamento de big data em movimento para processamento em tempo real.
  3. Exploração de ferramentas e tecnologias interativas de big data.
  4. Aprendizado de máquina e análise preditiva.

1. Fontes de dados

As fontes de dados envolvem todas as fontes douradas de onde o pipeline de extração de dados é construído e, portanto, pode ser considerado o ponto de partida do pipeline de big data.

Os exemplos incluem:
(i) Datastores de aplicativos, como os como bancos de dados relacionais

(ii) Os arquivos que são produzidos por vários aplicativos e fazem parte principalmente de sistemas de arquivos estáticos, como arquivos de servidor baseados na Web que geram logs.

(iii) dispositivos de IoT e outras fontes de dados baseadas em tempo real.

2. Armazenamento de Dados

Isso inclui os dados que são gerenciados para as operações criadas em lote e são armazenados nos armazenamentos de arquivos que são distribuídos por natureza e também são capazes de conter grandes volumes de arquivos grandes com backup em formato diferente. É chamado de lago de dados. Isso geralmente forma a parte em que nosso armazenamento Hadoop, como HDFS, Microsoft Azure, AWS, GCP, é fornecido junto com contêineres de blob.

3. Processamento em lote

Todos os dados são segregados em diferentes categorias ou partes, o que faz com que tarefas de longa execução sejam usadas para filtrar e agregar e também preparar dados ou estado processado para análise. Esses trabalhos geralmente usam fontes, as processam e fornecem a saída dos arquivos processados ​​para os novos arquivos. O processamento em lote é feito de várias maneiras, usando trabalhos do Hive ou trabalhos baseados em U-SQL ou usando o Sqoop ou Pig, juntamente com os trabalhos personalizados de redutor de mapa que geralmente são escritos em qualquer um dos Java ou Scala ou qualquer outro linguagem como Python.

4. Ingestão de mensagens com base em tempo real

Isso inclui, em contraste com o processamento em lote, todos os sistemas de streaming em tempo real que atendem aos dados gerados sequencialmente e em um padrão fixo. Geralmente, é um simples data mart ou armazenamento responsável por todas as mensagens recebidas que são descartadas dentro da pasta usada necessariamente para o processamento de dados. No entanto, a maioria das soluções exige a necessidade de um armazenamento de ingestão baseado em mensagens que atue como um buffer de mensagens e também suporte ao processamento baseado em escala, fornecendo uma entrega comparativamente confiável junto com outras semânticas de enfileiramento de mensagens. As opções incluem aquelas como Apache Kafka, Apache Flume, hubs de Eventos do Azure, etc.

5. Processamento de Stream

Há uma pequena diferença entre a ingestão de mensagens em tempo real e o processamento do fluxo. O primeiro leva em consideração os dados ingeridos que são coletados inicialmente e, em seguida, usados ​​como um tipo de ferramenta de assinatura de publicação. O processamento de fluxo, por outro lado, é usado para manipular todos os dados de fluxo que ocorrem em janelas ou fluxos e, em seguida, grava os dados no coletor de saída. Isso inclui o Apache Spark, o Apache Flink, o Storm etc.

6. Armazenamento de dados baseado em análise

Esse é o armazenamento de dados usado para fins analíticos e, portanto, os dados já processados ​​são consultados e analisados ​​usando ferramentas de análise que podem corresponder às soluções de BI. Os dados também podem ser apresentados com a ajuda de uma tecnologia de armazém de dados NoSQL, como o HBase, ou qualquer uso interativo do banco de dados hive, que pode fornecer a abstração de metadados no armazenamento de dados. As ferramentas incluem Hive, Spark SQL, Hbase, etc.

7. Relatórios e Análises

Os insights precisam ser gerados nos dados processados ​​e isso é efetivamente feito pelas ferramentas de relatório e análise que utilizam sua tecnologia e solução incorporadas para gerar gráficos, análises e insights úteis para os negócios. As ferramentas incluem Cognos, Hyperion, etc.

8. Orquestração

As soluções baseadas em big data consistem em operações relacionadas a dados que são repetitivas por natureza e também são encapsuladas nos fluxos de trabalho que podem transformar os dados de origem e também mover dados entre as fontes, além de sumidouros e carregamentos nas lojas, além de serem enviados para unidades analíticas. Exemplos incluem Sqoop, oozie, data factory, etc.

Conclusão

Neste post, lemos sobre a arquitetura de big data necessária para que essas tecnologias sejam implementadas na empresa ou na organização. Espero que você tenha gostado do nosso artigo.

Artigos recomendados

Este foi um guia para a arquitetura de Big Data. Aqui discutimos o que é big data? e também explicamos a arquitetura do big data junto com o diagrama de blocos. Você também pode consultar nossos outros artigos sugeridos para saber mais -

  1. Tecnologias de Big Data
  2. Análise de Big Data
  3. Carreiras em Big Data
  4. Perguntas da entrevista sobre Big Data
  5. Os 8 principais dispositivos da IoT que você deve conhecer
  6. Tipos de junções no Spark SQL (exemplos)

Categoria: