1

Hadoop, com foco no HDFS.

#Big Data #Hadoop
L
Lucas Borelli

CONTEXTUALIZAÇÃO - Os Desafios do Big Data.


O armazenamento e processamento de dados sempre foi um desafio. Claro que em cada período, mudava-se o foco destas questões, mas tais temas sempre estiveram no dia-a-dia das empresas e da indústria de TI.


Portanto, para sanar esse gap, empresas como Google, Yahoo, Cloudera... começaram a investir e pesquisar soluções que atendessem essas questões. E, nesse contexto surgiu o Hadoop.


Hadoop - Framework open-source para computação distribuída – a ideia básica é utilizar clusters de computadores para processar grandes conjuntos de dados.


Podemos destacar dois pontos na arquitetura Hadoop:

MapReduce e HDFS.


O HDFS – Hadoop Distributed File System, é o sistema de armazenamento do Hadoop e solucionará o problema de armazanamento de grandes volumes de dados.


O MapReduce solucionará o problema de processamento massivo de dados, tornando-o mais rápido.


HDFS


HDFS foi projetado em Java e possui a arquitetura mestre (NameNode)-escravo (DataNode) – um nó mestre e outro(s) nó(s) escravo(s).


E, de forma básica e simplista, a ideia do HDFS é dividir e distribuir os dados em hardwares compartilhados.


Apenas para facilitar: Um Rack é um conjuto de DataNodes (nós/computadores). Por exemplo, um rack pode ser um conjunto de 30 DataNodes.



Os DataNodes são os responsáveis por gravar e ler os dados e o NameNode comandará toda a execução e organização de todos os DataNodes.


HDFS E A TOLERÂNCIA A FALHAS


O HDFS “quebra” os arquivos em pedaços e armazena tais partes em uma sequência de blocos. Os blocos serão replicados – tal processo poderá ser ajustado conforme a necessidade da aplicação. A replicação garante a integridade e robustez do HDFS.


O NameNode (nó mestre) comanda e garante a correta replicação de blocos. Ou seja, ele definirá qual será a Rack e o DataNode responsável por alocar a réplica do dado.

A política de alocação do HDFS pode ser, por exemplo:

Colocar uma réplica em um nó na rack atual, uma outra cópia em um nó de uma outra rack e uma terceira cópia em um nó diferente de uma terceira rack. Todo esse ‘balenceamento’ e alocação das réplicas, é de responsabilidade do NameNode, que periodicamente, checa a integridade dos DataNodes.


O fator de replicação padrão é 3, ou seja, no total, teremos 3 cópias de um bloco de dados.


Portanto, podemos destacar as soluções que o HDFS trouxe são:

Escalabilidade, devido a possibilidade de adicionar mais nós ou até mesmo uma nova rack...gerando, portanto, alta capacidade de armazenamento, e;

Confiabilidade, devido a alta taxa de replicação dos dados.



Bom...é isso pessoal!


Abraços!!! =]



Fonte primária e imagem:

https://hadoop.apache.org/docs/r1.2.1/hdfs_design.html#NameNode+and+DataNodes

0
4

Comentários (4)

1
L

Lucas Borelli

26/08/2021 09:20

Pra cima!!!

2
CARLOS SILVA

CARLOS SILVA

26/08/2021 05:47

Um ótimo artigo, Lucas!


Esses assuntos são incríveis, e nos motiva a estudar cada vez mais.

Estou estudando e apanhando para dominar o Apach Spark.


Um abraço,

1
L

Lucas Borelli

25/08/2021 22:58

Show Alfeu, obrigado pela sugestão e comentário!



1
Alfeu Junior

Alfeu Junior

25/08/2021 22:48

Boa, Lucas!! O spark e ferramentas também é uma boa de se explorar. Além de oferecer escalabilidade, tolerancia a falha, tem também mais velocidade. Suas ferramentas proporcionam mais recursos graficos(Graphx), consulta sql com SparQL, Machine learning lib (MLlib) e claro, o streaming. Hadoop + Spark podem se complementar.

Entusiasta pelo universo dos dados!

Brasil