модель MapReduce. Hadoop является проектом фонда Apache Software
Foundation, и набором утилит, библиотек, программным каркасом для
разработки и выполнения распределенных программ, работающих на
кластерах из сотен и тысяч узлов.
Hadoop начинался с проекта Nutch [18]. Группа разработчиков по-
пыталась построить систему веб-поиска с открытым кодом, однако
проблемы с обработкой данных стали возникать даже на относительно
небольшом множестве компьютеров. После того как компания Google
опубликовала статьи о Google File System (GFS) и MapReduce, на-
правление работы прояснилось. Системы Google разрабатывались для
решения именно тех проблем, которые возникали с Nutch. И тогда два
разработчика начали в свободное время работать над воссозданием
этих систем как составной части Nutch.
В результате удалось заставить Nutch работать на 20 машинах, но
вскоре стало ясно, что в огромных масштабах Web речь идет о выпол-
нении на тысячах компьютеров, и что еще важнее — объем работы был
слишком большим для двух программистов с неполным рабочим днем.
Примерно в это же время компания Yahoo! заинтересовалась проектом
и быстро собрала группу для продолжения разработки. Группа разра-
ботчиков выделила часть Nutch, относящуюся к распределенным вы-
числениям, в отдельный подпроект, который получил название Hadoop
(рис. 6). При поддержке Yahoo! проект Hadoop вскоре превратился в
технологию, способную работать в масштабах Web [18].
Поскольку Big Data подразумевает быстрое поступление большого
объема данных, традиционные системы хранения на основе СУБД не
успевают сохранить этот поток. Нужна простая и быстрая система,
которая позволит с минимальными накладными расходами сохранять
поток поступающих слабоструктурированных данных. В Hadoop для
этого используется отказоустойчивая распределенная файловая систе-
ма HDFS (Hadoop Distributed File System). Она разбивает поступаю-
щие данные на блоки и каждый блок попадает на отведенные ему
место в пуле серверов, причем обычно хранится не менее трех копий
блоков, что обеспечивает высокую надежность хранения. Если HDFS
обнаруживает исчезновение блока, то она автоматически восстана-
вливает резервную копию, снова доводя их число до трех. Преимуще-
ство HDFS по сравнению с традиционной технологией RAID состоит
в том, что не требуется специальной аппаратуры, а достаточно просто-
го набора серверов, что особенно привлекательно при использовании
облачных инфраструктур. Однако за все приходится платить: HDFS
менее эффективно использует дисковое пространство, но в условиях
постоянного снижения цен на диски это не является серьезным огра-
ничением [19–21].
Разработчику приложения для Hadoop MapReduce необходимо ре-
ализовать базовый обработчик, который на каждом вычислительном
56 ISSN 0236-3933. Вестник МГТУ им. Н.Э. Баумана. Сер. “Приборостроение”. 2015. № 6