Главная > Теория и практика > Hadoop - как Facebook работает с данными?

Hadoop - как Facebook работает с данными?

Все мы слышали о Facebook.com и все можем только представляеть себе те объемы данных, с которыми вынуждены работать бекенды этой системы.

При их объемах они упираются в ограничения стандартных решений - будь то цена либо производительность. Как же они решают задачу управления данными и их хранения?

Для начала некоторые цифры:

  1. 400 ТБ данных находятся под управлением Hadoop. Уровень сжатия данных - 6:1, т.о. фактический объем данных 2.5 ПетаБайт
  2. 15 ТБ новых данных ежедневно

В 2007 году Facebook (имея тогда сумарный размер данных в 15 ТБ) переехал на открытое решение: Hadoop

Hadoop

Hadoop - это платформа и среда от Apache для разработки и исполнения приложений, работающих с огромными объемами данных. Подробнее читайте на официальном сайте.

Facebook, в дополнение к платформе, использует еще одну разработку - Hive. Это их собственное дополнение к Hadoop для манипулирвоания данными.

Специфика и показатели на Facebook.com:

  • Hadoop кластер состоит из 610 узлов (вскоре будет 1000)
  • Тысячи одновременных запросов
  • Различная аналитика выполняется в Hadoop
  • Запросы рекламного таргетинга выполняются каждый час
  • Операции дата-майнинга выполняются в Hadoop
  • Социальный анализ выполняется в Hadoop

Почему Facebook выбрал Hadoop?

  • Цена, которую не нужно платить. Данное решение бесплатно
  • Управление ресурсами. Система Hadoop специально расчитатана на работу с большим количеством данных и масштабирование. На основне этой системы проще построить кластер, который будет обрабатывать 1000 одновременных запросов, чем на основе других СУБД
  • Гибкость в структуре данных. В Hadoop проще поддерживать часто меняющиеся структуры данных, чем в РСУБД
  • Возможность быстрого и дешевого горизонтального масштабирования
  • Возможность работы на дешевом железе

Hive

Facebook нуждается в достаточно сложных операциях с данными. Хотя Hadoop и предоставляетс обширный функционал, тем не менее ребята из лидирующей соц. сети разработали дополнение, которое облегчает работу с данными. Это решение является открытым (т.е. доступно всем), хотя еще немного сырым. Главной идеей Hive является создание прослойки по обработке SQL синтаксиса, компилированию его и преобразованию в родные инструкции Hadoop (MapReduce конфигурации).

http://www.dbms2.com/2009/05/11/facebook-hadoop-and-hive/

Google Bookmarks Digg I.ua Ru-marks Ruspace Zakladok.net Reddit delicious Technorati Yahoo My Web News2.ru БобрДобр.ru Memori.ru rucity.com

Статьи по теме

  1. Andy Hammer
    12 Июнь 2009 в 14:09 | #1

    Т.е. hadoop это замена релационной БД, но я читал что у фейсбука большая ферма mysql серверов, или hadoop как то внутри себя использует эти сервера?

    • 12 Июнь 2009 в 14:13 | #2

      Hadoop не заменяет функциональности MySQL, это платформа, и написать на ней РСУБД крайне тяжело. Именно поэтому facebook использует MySQL для задач одного рода и Hadoop для задач другого рода. Суть в том, что Hadoop адаптирована под работу с огромными объемами данных на уровне платформы.

  1. Пока что нет уведомлений.