Уточнение некоторых мифов о Hadoop

Picture1

— Я Hadoop – могучий компьютерный слоненок! (У маленького сына создателя HDFS Дауга Каттинга (Doug Cutting) игрушку-слоненка звали Хадуп).

— Мы – HDFS, клетки в зоопарке, где живут все звери.

— Я – Zookeeper («смотритель зоопарка»), я смотрю, как звери играют.

— Я – Hbase, я не зверь, а большая и умная база данных.

— Я – Pig («поросенок»), я разрешаю вам играть  в Hbase

— Я – Hive (никак не переводится). Я даю вам заглянуть в пещеру с HBase/

— А мы ребята-программята. Мы пришли посмотреть Зоопарк Hadoop.

Рисунок взят отсюда: http://www.hadoopsphere.com/

Apache Hadoop -открытый программный проект, инициированный некоммерческой организацией Apache Software Foundation (ASF). Семейство Hadoop состоит из распределенной файловой системы HDFS (Hadoop Distributed File System), MapReduce, программ Pig, Hive, HBase и других.

Эти программы — открытые, их можно свободно получить на сайте ASF, а также других поставщиков.Число программ, которые интегрированы в семейство Hadoop, растет день ото дня. Hadoop чаще всего применяется в системах бизнес-интеллекта BI (Business Intelligence), вследствие его способности работать с большими объемами неструктурированных данных  (Big Data) и поддерживать аналитические программы в реальном времени. Ожидается, что в скором времени Hadoop станет дополнением (но не заменой), к общепринятым программным продуктам и методам бизнес-интеллекта BI, баз данных предприятий (EDW), интеграции данных DI и другим программам и методам аналитики.

Хотя Hadoop и другие программы используются уже более 5 лет, многие специалисты по BI- находятся в плену некоторых искаженных концепций относительно Hadoop, Mapreduce и сопутствующих технологий. Эти искажения надо развеять, чтобы осознать всю пользу технологий анализа «больших данных» на базе Hadoop.

Вот 10 самых распространенных постулатов о Hadoop, понимание сути которых нужно уточнить:

Факт 1. Hadoop состоит из нескольких программных модулей.  

Hadoop на самом деле – самостоятельный программный продукт, который входит в семейство программ  с открытым кодом Apache Software Foundation (ASF) (некоторые программы семейства Hadoop также входят в дистрибутивы поставщиков ПО для BI).

Библиотека Apache Hadoop включает (по степени важности для BI): распределенную файловую систему Hadoop Distributed File System (HDFS), MapReduce, Pig, Hive, HBase, HCatalog, Ambari, Mahout, Flume, и др. Их можно комбинировать в разных вариациях, но HDFS и MapReduce (возможно с Pig, Hive и HBase) составляют наиболее употребительную архитектуру для  BI, ЕDW, DI, и аналитики.

Факт 2. Hadoop – продукт с открытым кодом, который поставляется в дистрибутивах от вендоров ПО.

Библиотеки ПО Apache Hadoop доступны на сайте ASF www.apache.org. Некоторые вендоры, в составе своих программных продуктов также предлагают дистрибутивы Hadoop, которые включают дополнительные средства администрирования, обслуживания и технической поддержки этих программных продуктов. А многие вендоры вообще предлагают свои собственные реализации MapReduce, работающие без использования Hadoop.

Факт 3.  Hadoop – экосистема, а не отдельный продукт.  

В дополнение к перечисленным выше продуктам Apache, расширенная экосистема Hadoop включает постоянно растущий список программ от различных вендоров (например, системы управления базами данных, инструменты аналитики, отчетности, и интеграции данных DI) которые интегрированы или расширяют технологии Hadoop.

Факт 4.  HDFS – это файловая система, а не система управления базами данных (DBMS) 

Hadoop – это в первую очередь распределенная файловая система, и поэтому в ней нет того функционала, который обычно бывает в DBMS, такого как индексация, случайные выборки данных, поддержка стандартного SQL и пр. Но зато HDFS, хорошо умеет делать много того, чего у  DBMS не очень хорошо получается, например, администрирование и обработка больших массивов неструктурированных данных. Для получения минимального функционала DBMS, поверх HDFS можно положить HBase, и структуру запросов, например Hive, или Impala на базе SQL.

Факт 5.  Hive напоминает SQL, но не является стандартным SQL 

Многие программисты так привязаны к SQL, потому что хорошо его знают и для него есть много разных инструментов. Те, кто знает SQL, могут быстро освоить и Hive, но при этом остаются некоторые проблемы совместимости с SQL-инструментами. Со временем, вполне вероятно, что продукты Hadoop будут поддерживать стандартный SQL, а инструменты вендоров ПО на базе SQL будут поддерживать Hadoop, поэтому данная проблема со временем рассосется.

Факт 6.  Hadoop и MapReduce связаны, но не требуют наличия друг друга.

Работа MapReduce обычно имеет некоторые вариации при работе с различными системами хранения, включая HDFS, и другие файловые системы, а также некоторые реляционные базы данных DBMS. Иногда HDFS разворачивается с Hive или HBase, но не MapReduce.

Факт 7.  MapReduce обеспечивает управление аналитическими программами, но сам по себе не является программой для аналитики. 

MapReduce – программа широкого применения, которая берет на себя все сложности сетевого взаимодействия, параллельного программирования и исправления ошибок, для большого числа создаваемых программистами приложений – не только аналитических.

Факт 8.  Hadoop предназначен прежде всего для большого разнообразия различных данных, а не протсто их большого объема.  

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

Факт 9.  Hadoop может также работать с ЕDW, и других альтернатив практически нет.

Большинство организаций создавали свои базы данных EDW для структурированных, реляционных данных, что затрудняет работу BI-систем, которым требуются как раз неструктурированные, разнородные данные из разных источников. Hadoop является своего рода навеской над традиционными EDW для того, чтобы работать с неструктурированными данными. В результате, ресурсы традиционных EDW высвобождаются для работы с теми типами данных, для которых они предназначены.

Факт 10.  Hadoop может выполнять много видов аналитики, а не только веб-аналитику.

Hadoop чаще всего используется Интернет-компаниями для анализа веб-логов и других веб-данных и событий, но и другие применения также имеют место быть. Например, это могут быть сигналы датчиков М2М (сенсоры, RFID, мониторинг электросетей и пр.). Старые аналитические приложения, которым были нужны большие массивы данных – сегментация абонентской базы, распознавание фрода, анализ рисков – могут усовершенствоваться при помощи дополнительных инструментов анализа больших данных в Hadoop, придавая «новое звучание» различным традиционным аналитическим программам: CRM, ERP, приложениям по работе с партнерами и пр.

 

 

Об авторе Алексей Шалагинов

Независимый эксперт
Галерея | Запись опубликована в рубрике Uncategorized. Добавьте в закладки постоянную ссылку.

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход /  Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

w

Connecting to %s