Установка Cloudera Hadoop

 Основные компоненты Cloudera Hadoop

  • Map Reduce (YARN) - модель распределеных вычислений, предназначенная для параллельных вычислений над большими объемами данных. MapReduce работа состоит из двух фаз: map - выполняется параллельно и (по возможности) локально над каждым блоком данных. Вместо того, чтобы доставлять терабайты данных к программе, небольшая, определённая пользователем программа копируется на сервера с данными и делает с ними всё, что не требует перемешивания и перемещения данных (shuffle); reduce - дополняет map агрегирующими операциями.

  • Spark - инструмент, предназначенный для обработки данных. Он позволяет выполнять различные операции над распределенными коллекциями данных, но не обеспечивает их распределенного хранения. Spark работает быстрее, поскольку данные обрабатываются здесь по-другому. Если MapReduce осуществляет обработку в пошаговом режиме, то Spark оперирует всем набором данных как единым целым. MapReduce действует следующим образом: данные считываются из кластера, выполняется требуемая операция, результаты записываются в кластер, обновленные данные считываются из кластера, выполняется следующая операция, ее результаты записываются в кластер и т.д. А Spark выполняет все аналитические операции в памяти практически в реальном времени: данные считываются из кластера, выполняются необходимые операции, затем полученные результаты записываются в кластер, после чего процесс завершен. Производительности MapReduce, как правило, вполне достаточно, если вы оперируете статическими данными и можете подождать завершения обработки. Но если нужно анализировать потоковые данные тогда имеет смысл обратиться к Spark.

  • HDFS - распределенная файловая система, работающая на больших кластерах машин. Обычная ФС, по большому счёту, состоит из таблицы файловых дескрипторов и области данных. В HDFS вместо таблицы используется специальный сервер - сервер имён NameNode, а данные разбросаны по серверам данных DataNode. В остальном отличий не так много: данные разбиты на блоки, обычно по 64Мб или 128Мб, для каждого файла сервер имён хранит его путь, список блоков и их реплик.

  • Pig - язык управления потоком данных и исполнительная среда для анализа больших объемов данных.

  • Hive - распределенное хранилище данных; оно управляет данными, хранимыми в HDFS, и предоставляет язык запросов на базе SQL для работы с этими данными. Hive может быть использован теми, кто знает язык SQL. Hive создает задания MapReduce, которые исполняются на кластере Hadoop.

  • Impala - продукт компании Cloudera и основной конкурент Hive. В отличие от последнего, Impala никогда не использовала классический MapReduce, а изначально исполняла запросы на своём собственном движке (написанном, кстати, на нестандартном для Hadoop-а C++). Кроме того, в последнее время Impala активно использует кеширование часто используемых блоков данных и колоночные форматы хранения, что очень хорошо сказывается на производительности аналитических запросов. Так же, как и для Hive, Cloudera предлагает к своему детищу вполне эффективный ODBC-драйвер.

  • HBase - нереляционная распределенная база данных.

  • ZooKeeper - распределенный координационный сервис; предоставляет примитивы для построения распределенных приложений.

  • Sqoop - инструмент для пересылки данных между структурированными хранилищами и HDFS.

  • Oozie - сервис для записи и планировки заданий Hadoop.

  • ZooKeeper - главный инструмент координации для всех элементов инфраструктуры Hadoop. Чаще всего используется как сервис конфигурации, хотя его возможности гораздо шире. 

Подробнее: Установка Cloudera Hadoop

Страница 2 из 2

unix-way