Тимур Машнин

Технология хранения и обработки больших данных Hadoop


Скачать книгу

Apache Hadoop и ряда программных продуктов экосистемы Hadoop.

      В этом стеке у нас есть Sqoop, инструмент, предназначенный для эффективной передачи больших данных между Hadoop и структурированными хранилищами данных, такими как реляционные базы данных.

      И есть Flume – распределенный сервис для агрегирования больших объемов лог данных.

      Здесь используется HBase для случайной записи и чтения данных, хранящихся в HDFS.

      Oozie используется в качестве движка координации и рабочего процесса.

      И Pig и Hive обеспечивают языки высокого уровня запросов данных.

      И наконец здесь используется Zookeeper в качестве службы координации в основе этого стека.

      И мы можем скачать и запустить виртуальную машину Cloudera, которая позволяет запускать все эти различные сервисы и узнавать, как они работают, без необходимости установки сервера.

      Но сначала давайте поговорим о различных инструментах, которые мы будем использовать поверх платформы Hadoop.

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

      Настоящий прорыв произошел, когда такие компании, как Yahoo, Google и Facebook пришли к пониманию, что им нужно что-то сделать, чтобы обрабатывать и монетизировать эти огромные объемы данных, которые они собирают.

      В результате были созданы различные инструменты и собраны стеки Big Data.

      И давайте начнем обсуждение этих инструментов с Apache Sqoop.

      Sqoop означает SQL для Hadoop.

      Это простой инструмент командной строки, который позволяет импортировать отдельные таблицы или целые базы данных в систему HDFS.

      И этот инструмент генерирует классы Java, чтобы можно было взаимодействовать с данными, которые мы импортировали.

      С этим инструментом Вы можете работать с данными базы данных SQL в среде Hadoop и использовать Map Reduce для запуска заданий с этими данными.

      Следующий инструмент – это Hbase.

      Hbase является ключевым компонентом стека Hadoop, так как он предназначен для приложений, которым требуется быстрый произвольный доступ к большому набору данных.

      И Hbase основывается на Google Big Table и может обрабатывать большие таблицы данных, объединяющие миллиарды строк и миллионы столбцов.

      Pig – это язык скриптов, это платформа высокого уровня для создания программ MapReduce с использованием Hadoop.

      Этот язык называется Pig Latin, и он предназначен для задач анализа данных как потоков данных.

      Pig самодостаточен, и вы можете выполнят все необходимые манипуляции в Hadoop, просто используя pig.

      Кроме того, в pig, вы можете использовать код на разных языках, таких как JRuby, JPython и Java.

      И наоборот, вы можете выполнять скрипты PIG на других языках.

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

      Программное обеспечение Apache Hive облегчает запросы и управление большими наборами данных, которые находятся в распределенном хранилище файлов.

      Hive предоставляет механизм для проектирования структуры