Hadoop - это среда программирования, которая позволяет параллельно выполнять массивные вычисления на большом кластере машин. Он устойчив к потере нескольких машин, масштабируется для ускорения вычислений за счет добавления машин и отслеживает состояние вычислений.
Hadoop популярен, потому что это мощная среда с открытым исходным кодом, и потому, что многие пользователи, в том числе крупные, такие как Yahoo !, Microsoft и Facebook, используют его для больших проектов обработки данных.
Это мощный инструмент, потому что он использует алгоритм отображения / уменьшения, который разбивает вычисление на последовательность из двух простых операций:
- карта - возьмите список предметов и выполните одну и ту же простую операцию с каждым из них. Например, возьмите текст веб-страницы, токенизируйте его и замените каждый токен строкой: 1
- уменьшить - взять список предметов и накопить его, используя оператор накопления. Например, возьмите список: 1, посчитайте вхождение и выведите список в форме: nt, где nt - количество раз, которое появилось в исходном списке.
Используя правильную декомпозицию (что делает программист) и распределение задач и мониторинг (что делает Hadoop), вы получаете быстрые масштабируемые вычисления; В нашем примере - вычисление подсчета слов. Вы можете упорядочить десятки карт и сокращений и получить реализации сложных алгоритмов.
Это очень высокий уровень просмотра. Теперь прочитайте подробнее о MapReduce и Hadoop .