HDFS vs NoSQL (HBASE), como funciona?

Passei por todos os recursos (quase) do google e não consegui nada sobre o Hadoop e o NoSQL.

Vamos imaginar que tenho muitos dados para armazenar. Eu uso Hadoop e é o sistema de arquivos HD nativo, mas eu também quero obter informações em tempo real, então eu preciso de NoSQL. Onde será instalada a minha base de dados ? No próprio datanode ? No namenode ? Ambos ?

Vamos imaginar (mais uma vez) que tenho dados a entrar no meu sistema, o namenode vai cortá-lo em várias peças e replicá-las em diferentes datanode. Com NoSQL, vai funcionar da mesma maneira ? Será que as HDFS participam neste processo ?

os metadatas armazenados no NameNode dão o endereço, então como vai ser questionado ?

Acho que entendo o conceito de Hadoop e HBase, basicamente, mas não entendo quando vou mais longe..

Author: Community, 2015-09-29

4 answers

Capacidades sobrepostas do Hadoop e do NoSQL

Tanto o hadoop como o NoSQL são óptimos para Gerir Conjuntos de dados grandes e em rápido crescimento. Ambos podem lidar com uma variedade de formatos de dados, incluindo arquivos de log, documentos e mídia rica. Também ambos podem alavancar hardware de commodity e suportar escala horizontal. se você tem dados estruturados em que a estrutura difere entre registros, ou se a estrutura provavelmente vai mudar no futuro, então ambos NoSQL e Hadoop são tecnologias apropriadas para o seu uso.

Ambas as tecnologias se destinam a diferentes tipos de cargas de trabalho

O NoSQL destina-se ao acesso em tempo real e inclui ambos os processos de leitura/escrita. Enquanto hadoop é sobre processamento de dados em grande escala.

Ambos podem coexistir num EDW

O NoSQL e o Hadoop podem existir/trabalhar/ser implantados em conjunto numa arquitectura de dados empresarial. Em uma arquitetura típica, NoSQL pode ser usado para dados em tempo real e interativo, e O cluster Hadoop pode ser usado para processamento de dados em larga escala(modo de lote) e análise.

Papel Da Hbase

Agora o HBase é uma base de dados NoSQL baseada em colunas que funciona em cima do Hadoop. Ele combina a escalabilidade do Hadoop executando em HDFS, com acesso de dados em tempo real como uma loja de chave/valor e capacidades analíticas profundas de Map-Reduce.

 1
Author: Aman Mundra, 2015-09-29 12:01:52

HDFS é um sistema de ficheiros distribuídos (DFS). Ele permite que você veja discos de várias máquinas (nós de dados) como um enorme disco único. Para ler e escrever arquivos de HDFS você precisa de uma aplicação cliente que fala sobre rede para o nó nome (para metadados sobre arquivos e diretórios) e para nós de dados (para os dados reais do arquivo).

O HBase é um armazém de valores-chave distribuídos que utiliza HDFS para armazenar os seus dados. Para atingir o melhor desempenho fora do HBase você precisa executar nós HBase em os mesmos servidores que você executa os nós de dados HDFS para evitar chamadas de rede desnecessárias.

 0
Author: kostya, 2015-09-29 10:18:54

HDFS é um sistema de ficheiros. As características que ele fornece já são conhecidas por você. A questão é onde é que as coisas NOSQL entram. É para processamento em tempo real, para formato que não precisa aderir ao DB relacional e outras características que nos ajudarão a processar grandes dados.

Existem várias bases de dados NOSQL. Com base em sua escolha, se você vai com Hbase, então você precisa HDFS. Então aqui vem o nó de nome e nó de dados. Isto porque o Hbase trabalha em cima do HDFS.

Se escolha Cassandra, por exemplo, você não precisa HDFS. claro que suporta Hadoop, mas não é necessário. Mais uma vez Hbase e Cassandra São ponta do iceberg quando se trata de NoSQL DB. você pode obter a lista completa de NoSQL db aqui

 0
Author: Ramzy, 2015-09-29 15:53:44

Em relação às tuas perguntas

1) os dados serão armazenados em datanodes (RegionServer). HBase precisa ser instalado em nós de dados

2) a HBase não é necessária no namenode.

Dê uma olhada em: papel do datanode, regionserver na integração Hbase-hadoop e deve o servidor da região HBase e o nó de dados Hadoop na mesma máquina?As quesitons também.

COMO FUNCIONA O HBASE?

Já que conhece Hadoop & HBase individualmente, Não vou explicá-los em pormenores. Explicarei como o HBase trabalha com o HDFS / Hadoop eco system ( formatado e editado para a legibilidade do artigo Edureka)

O HBase é o Gestor de armazenamento Hadoop que fornece leituras aleatórias de baixa latência e escreve em cima do HDFS. Ele pode lidar com bytes peta de dados.

HBase usa recurso de auto-sharding, o que implica grandes tabelas são distribuídas dinamicamente pelo sistema.

A unidade básica da horizontal a escalabilidade em HBase é chamada de região. As regiões são um subconjunto dos dados do quadro e são essencialmente uma série contígua e ordenada de linhas.

Inicialmente, existe apenas uma região para uma tabela. Quando as regiões se tornam muito grandes depois de adicionar mais linhas, a região é dividida em duas na chave do meio, criando duas metades aproximadamente iguais.

enter image description here

Em HBase os escravos são chamados servidores da região . Cada servidor de região é responsável por servir um o conjunto de regiões, e uma região (ou seja, o intervalo de linhas) podem ser servidos apenas por um servidor de Região.

A HBase arquitetura tem dois serviços principais: HMaster : que é responsável por coordenar o cluster e executar operações administrativas, E o HRegionServer o responsável pela manipulação de um subconjunto dos dados da tabela.

HBase Master coordena o Grupo HBase e é responsável pelas operações administrativas.

Região De A O servidor pode servir uma ou mais regiões. Cada região é atribuída a um servidor de região no arranque. O mestre pode decidir mover uma região de um servidor de região para outro quando há uma necessidade de balanceamento de carga. O Master também lida com falhas de Servidores de Região, atribuindo a região a outro servidor de Região.

O mapeamento de regiões e Servidores de regiões é mantido numa tabela de sistemas chamada META. Ao ler META, você pode identificar qual região é responsável pelo seu chave. Isto significa que para as operações de leitura e escrita, o mestre não está envolvido em tudo e os clientes podem ir diretamente para o servidor de Região responsável para servir os dados solicitados.

Para identificar o servidor da região , o cliente faz uma consulta na tabela META.

O META é uma tabela de sistemas usada para controlar as regiões. Contém o nome do servidor e um identificador de região que inclui um nome de tabela e a chave de linha de início. Ao olhar para a chave de arranque e o next region start-key, clients are able to identify the range of rows contained in a particular region.

Se precisar de baixa latência para acesso aos dados em tempo real (menos de 10 TB) use SPARK. Hadoop é bom para o processamento em lote de dados grandes. SPARK + HBASE é uma boa combinação para as suas necessidades.

Dá uma vista de olhos neste artigocloudera relativo aHBase-Spark Módulo

 0
Author: Ravindra babu, 2017-05-23 12:34:41