O que é hadoop?
Hadoop é uma ferramenta de processamento de dados de código aberto que foi desenvolvido pela Apache Software Foundation. Hadoop é atualmente o go-programar para lidar com grandes volumes e variedades de dados porque ele foi projetado para tornar a computação em larga escala mais acessível e flexível. Com a chegada do Hadoop, o processamento de dados em massa foi introduzida para significativamente mais pessoas e mais organizações.
Hadoop pode oferecer-lhe uma grande solução para lidar com, processos e fluxos de massa grupo de estruturados, semi-estruturados e dados não estruturados. Através da criação e implantação de Hadoop, você tem uma maneira relativamente acessível para começar a usar e desenhar idéias de todos os dados da organização, em vez de apenas continuar a confiar apenas no que conjunto de dados transacional de ter sentado sobre em um armazém de dados antigo em algum lugar.
Hadoop é um dos programas mais populares disponíveis para necessidades de computação de grande escala. Hadoop fornece uma camada de mapa-e-redução que é capaz de lidar com os requisitos de processamento de dados da maioria dos projectos de dados grandes.
Às vezes, os dados fica muito grande e rápido, mesmo para Hadoop para lidar. Nestes casos, as organizações estão se voltando para implementações MapReduce alternativos, mais customizadas em seu lugar.
Hadoop usa clusters de hardware commodity para armazenar dados. Hardware em cada grupo está ligado, e este equipamento é constituído por mercadoria servidores - low-cost, low-executando servidores genéricos que oferecem poderosas capacidades de computação quando executado em paralelo em um cluster compartilhado. Esses servidores de commodities também são chamados nós. computação commodity diminui drasticamente os custos envolvidos na manipulação e armazenamento de dados grandes.
Hadoop é constituído pelos dois componentes seguintes:
A estrutura de processamento distribuído: Hadoop usa Hadoop MapReduce como quadro de processamento distribuído. Novamente, uma estrutura de processamento distribuído é uma poderosa estrutura onde as tarefas de processamento são distribuídos em clusters de nós de modo que grandes volumes de dados podem ser processados muito rapidamente através do sistema como um todo.
Um sistema de arquivos distribuídos: Hadoop usa o Hadoop Distributed File System (HDFS) como seu sistema de arquivos distribuídos.
As cargas de trabalho de aplicações que rodam no Hadoop são divididos entre os nós do cluster Hadoop, e então a saída é armazenada no HDFS. O cluster Hadoop pode ser composto de milhares de nós. Para manter os custos de entrada / saída (I / O) de processos de baixa, trabalhos Hadoop MapReduce são realizadas como perto dos dados possível.
Isto significa que os processadores tarefas reduzir estão posicionados tão perto quanto possível com o mapa de dados tarefa de saída que necessita de ser processado. Este projeto facilita o compartilhamento de requisitos computacionais em processamento de dados grande.
Hadoop também suporta organização hierárquica. Alguns de seus nodos são classificados como nós mestre, e outros são categorizados como escravos. O serviço principal, conhecido como JobTracker, é projetado para controlar vários serviços de escravos. serviços de escravos (também chamados TaskTrackers) São distribuídos um para cada nó. O JobTracker controla os TaskTrackers e atribui tarefas Hadoop MapReduce para eles.
Em uma versão mais recente do Hadoop, conhecido como Hadoop 2, um gerenciador de recursos chamado Hadoop FIO foi adicionado. Com relação à MapReduce no Hadoop, fios funciona como um sistema integrado que executa funções de gerenciamento de recursos e agendamento.
Hadoop processa dados em lotes. Conseqüentemente, se você está trabalhando com em tempo real, transmissão de dados, você não será capaz de usar o Hadoop para lidar com seus problemas de dados grandes. Dito isto, é muito útil para resolver muitos outros tipos de problemas de big data.