A arquitetura fio em Hadoop
FIO, para aqueles que estão chegando nesta festa particular, representa mais um recurso negociador, uma ferramenta que permite que outras estruturas de processamento de dados para rodar em Hadoop. A glória de fios é que ele apresenta Hadoop com uma solução elegante para uma série de desafios de longa data.
FIO se destina a fornecer uma carga de trabalho mais eficiente e flexível agendamento, bem como uma instalação de gestão de recursos, tanto dos que acabará por permitir Hadoop para executar mais do que apenas trabalhos MapReduce.
A figura mostra, em termos gerais como FIO se encaixa no Hadoop e também deixa claro como ele permitiu Hadoop para se tornar uma verdadeira plataforma de uso geral para processamento de dados. A lista a seguir dá as letras para a melodia:
armazenamento distribuído: Nada mudou aqui com a mudança de MapReduce para FIO - HDFS ainda é a camada de armazenamento para Hadoop.
Gestão de recursos: O conceito subjacente fundamental na mudança para o fio do Hadoop 1 é a gestão de recursos dissociação de processamento de dados. Isso permite que os fios para fornecer recursos para qualquer estrutura de processamento de escrita para Hadoop, incluindo MapReduce.
estrutura de processamento: Porque fio é uma instalação de gestão de recursos de propósito geral, ele pode alocar recursos de cluster para qualquer estrutura de processamento de dados escrito para Hadoop. A estrutura de processamento, em seguida, lida com questões de tempo de execução do aplicativo.
Para manter a compatibilidade de todo o código que foi desenvolvido para Hadoop 1, MapReduce serve como o primeiro quadro disponível para uso em fio. No momento da redação deste artigo, o projeto Apache Tez foi um projeto de incubadora no desenvolvimento de uma estrutura alternativa para a execução de aplicações de porco e colméia. Tez provavelmente vai emergir como uma configuração Hadoop padrão.
Application Programming Interface (API): Com o apoio de estruturas de processamento adicionais, o suporte para APIs adicionais virão. No momento da redação deste artigo, Hoya (para a execução de HBase em FIO), Apache Giraph (para processamento gráfico), Open MPI (para passagem de mensagens em sistemas paralelos), Apache Storm (para o processamento de fluxo de dados) estão em desenvolvimento ativo.