Прямо з уст коня :
Hadoop - це основа для запуску програм на великих кластерах, побудованих з товарного обладнання. Рамка Hadoop прозоро забезпечує додаткам і надійність, і рух даних. Hadoop реалізує обчислювальну парадигму під назвою Map / Reduce, де додаток розділено на безліч невеликих фрагментів роботи, кожен з яких може бути виконаний або повторно виконаний на будь-якому вузлі кластера. Крім того, вона забезпечує розподілену файлову систему (HDFS), яка зберігає дані про обчислювальні вузли, забезпечуючи дуже високу сукупну пропускну здатність у кластері. І Map / Reduce, і розподілена файлова система розроблені таким чином, що збої вузлів автоматично обробляються рамкою.
Map / Reduce - парадигма програмування, популярна Google, де завдання розбивається на невеликі порції та розподіляється на велику кількість вузлів для обробки (карта), а результати потім підсумовуються до остаточної відповіді (зменшити ). Google та Yahoo використовують це для своїх пошукових технологій, серед іншого.
Hadoop - це загальна основа для реалізації подібної схеми обробки. Що стосується того, чому він б'є попку, здебільшого тому, що він надає акуратні функції, такі як відмовостійкість і дозволяє зблизити майже будь-яке обладнання для обробки. Він також масштабує надзвичайно добре, якщо ваша проблема відповідає парадигмі.
Ви можете прочитати все про це на веб-сайті .
Що стосується деяких прикладів, то Павло наводив декілька, але ось ще декілька, які ви можете зробити, не такі вже орієнтовані на веб:
- Надання 3D-фільму. Крок "map" розподіляє геометрію для кожного кадру на інший вузол, вузли надають його, а виведені кадри рекомбінують на кроці "зменшення".
- Обчислення енергії в системі в молекулярній моделі. Кожен кадр системної траєкторії розподіляється на вузол на кроці "map". Вузли обчислюють енергію для кожного кадру,
а потім результати підсумовуються на кроці "зменшення".
По суті, модель дуже добре справляється з проблемою, яка може бути розбита на аналогічні дискретні обчислення, які є абсолютно незалежними і можуть бути рекомбіновані для отримання кінцевого результату.