Введение в Hadoop

Опубликовано: 30 Ноября, 2021

Что такое Hadoop?

Hadoop - это программная среда с открытым исходным кодом для хранения большого количества данных и выполнения вычислений. Его структура основана на программировании на Java с некоторым собственным кодом на C и сценариями оболочки.

История Hadoop

Apache Software Foundation - разработчики Hadoop, соучредителями - Дуг Каттинг и Майк Кафарелла .
Его соучредитель Дуг Каттинг назвал его в честь игрушечного слона своего сына. В октябре 2003 года первым бумажным выпуском стала файловая система Google. В январе 2006 года началась разработка MapReduce для Apache Nutch, который содержал около 6000 строк для него и около 5000 строк для HDFS. В апреле 2006 года был выпущен Hadoop 0.1.0.

Распределенная файловая система Hadoop

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

Преимущества HDFS:
Он недорогой, неизменяемый по своей природе, надежно хранит данные, допускает сбои, масштабируемый, блочно-структурированный, может обрабатывать большие объемы данных одновременно и многое другое.

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

Hadoop также поддерживает широкий спектр программных пакетов, таких как Apache Flumes, Apache Oozie, Apache HBase, Apache Sqoop, Apache Spark, Apache Storm, Apache Pig, Apache Hive, Apache Phoenix, Cloudera Impala.

Некоторые распространенные фреймворки Hadoop

  1. Hive - он использует HiveQl для структурирования данных и для написания сложного MapReduce в HDFS.
  2. Drill - он состоит из определяемых пользователем функций и используется для исследования данных.
  3. Storm - позволяет обрабатывать и передавать данные в реальном времени.
  4. Spark - он содержит библиотеку машинного обучения (MLlib) для обеспечения расширенного машинного обучения и широко используется для обработки данных. Он также поддерживает Java, Python и Scala.
  5. Pig - он имеет Pig Latin, язык, подобный SQL, и выполняет преобразование неструктурированных данных.
  6. Tez - упрощает Hive и Pig и помогает быстрее запускать их коды.

Фреймворк Hadoop состоит из следующих модулей:

  1. Hadoop MapReduce - программная модель MapReduce для обработки и обработки больших данных.
  2. Распределенная файловая система Hadoop - файлы, распределенные кластерами между узлами.
  3. Hadoop YARN - платформа для управления вычислительными ресурсами.
  4. Hadoop Common - содержит пакеты и библиотеки, которые используются для других модулей.

Преимущества и недостатки Hadoop

Преимущества:

  • Возможность хранить большой объем данных.
  • Высокая гибкость.
  • Экономически эффективным.
  • Высокая вычислительная мощность.
  • Задачи самостоятельные.
  • Линейное масштабирование.

Недостатки:

  • Не очень эффективен для небольших данных.
  • Управление жестким кластером.
  • Есть проблемы со стабильностью.
  • Проблемы безопасности.