171 775 просмотров нашего канала на YouTube!

ћерион Ќетворкс

3 минуты чтени€

ѕро хоботистый проект, который изменил многое

»нтернет, на текущее врем€, это непрерывно развивающа€с€ сеть планетарного масштаба. ≈е существование невозможно представить без поисковых программ и социальных сетей. Ѕольшинство пользователей интернета, ежедневно заход€щих в Facebook или ищущих информацию в Yahoo, даже не задумываютс€, как работает эта система то есть, контактируют только с пользовательским интерфейсом программы. » мало кто знает, что продукты такого типа работают на основе распределенных программам. »х работа основана на кластерах наборах узлов, которые используютс€ дл€ поиска нужной клиенту информации. » одним из основных наборов инструментов, который используетс€ при разработке такого рода программ, €вл€етс€ Hadoop.

„то же это такое?  ак говорилось выше, это не отдельна€ программа, а целый набор инструментов, библиотек и приложений, а также инструмент дл€ удобной работы с ними. ƒл€ удобства, назовем весь этот комплекс "фреймворком". ¬сЄ это предназначено дл€ разработки и использовани€ распределенных программ. ¬ этой статье мы разберемс€, из чего состоит основной инструментарий Hadoop и упом€нем о самых распространенных программах из набора.

 омплекс Hadoop

—трого говор€, разработчиком Hadoop €вл€етс€ компани€ Apache Software Foundation. ќднако, в силу того, что данный набор программ €вл€етс€ свободно распростран€емым, р€д сторонних разработчиков (Hortonworks, MapR, Cloudera) создали на основе Apache Hadoopр€д своих сборок, которые завоевали у пользователей большую попул€рность. Ёто произошло потому, что такие сборки гораздо стабильнее ведут себ€ в работе и гораздо удобнее в использовании.

ќсновной базовой частью Hadoop €вл€етс€ распределенна€ файлова€ система HDFS. ќт обычных файловых систем ее отличает то, что хранение и работа с файловыми дескрипторами осуществл€етс€ с отдельного сервера имЄн, а данные наход€тс€ на отдельных серверах данных. Ёто делает систему исключительно надежной, поскольку даже при внештатных ситуаци€х процент безвозвратной потери данных очень мал.  роме того, система позвол€ет узнать, на какой конкретной машине расположен интересующий блок данных.

ѕару слов о движках: –азвитие проекта привело к тому, что классическа€ схема MapReduce, с которой проект начинал свою работу, сейчас замен€етс€ на варианты Spark или Tez, поскольку значительно ускор€ют работу с данными. Spark более универсальна€ модель движка, примен€ема€ повсеместно, Tez в свою очередь более узко специализирован.

  наиболее попул€рным системам управлени€ базами данных в данном решении можно отнести базовый вариант Hive, а также альтернативные варианты, такие как Impala от Cloudera, или Spark SQL. ƒанные продукты имеют свои достоинства и недостатки, но возможность выбора лучшего решени€ делает проект в общем и целом достаточно гибким и удобным дл€ пользовани€.

—вою нишу в данном проекте также имеет отдельна€ NoSQL-база Hbase. Ёто важное решение дл€ всей системы Hadoop, поскольку эффективно поддерживает работу с отдельными запис€ми в режиме реального времени.

ƒл€ импорта данных на текущий момент, пожалуй, единственным эффективным вариантом остаетс€ Kafka от оригинального разработчика Apache. ”никальность данного решени€ в том, что импорт серьезных объемов данных в данном случае заложен в саму архитектуру проекта.  онечно, Kafka обладает р€дом минусов, но работы над обновлением и оптимизацией ведутс€ посто€нно.

ѕомимо этого набора программ, который можно считать базовым, Hadoop обладает р€дом других полезных инструментов. Ёто и алгоритмы машинного обучени€ дл€ оптимизации работы всей системы (MLlib, Mahout), и программа-координатор ZooKeeper, обладающа€ широчайшими возможност€ми по конфигурированию и управлению, программы дл€ планировани€ задач в проектах Azkaban и Oozie, а так же многие другие подключаемые модули различного назначени€ и, соответственно, различной полезности в рамках того или иного проекта.


ѕолезна ли ¬ам эта стать€?


Ёти статьи могут быть вам интересны: