Как работает HDInsight

Завершено

HDInsight — это облачная распределенная система обработки данных, которая по умолчанию гарантирует высокую доступность и безопасность. В основе этой системы лежит технология Apache Hadoop. Apache Hadoop состоит из двух основных компонентов — распределенной файловой системы Hadoop, обеспечивающей хранение данных, и модуля управления ресурсами YARN Apache Hadoop, обеспечивающего обработку. Кроме того, простая модель программирования MapReduce позволяет обрабатывать и анализировать данные. Преимущество MapReduce в том, что ее легко настроить, и вы можете контролировать затраты с помощью функции автомасштабирования.

A conceptual view of the HDInsight architecture

Хранилище

При подготовке кластера HDInsight хранилище не создается автоматически. Вместо этого он предоставляется HDFS-совместимой системой, такой как служба хранилища Azure или Azure Data Lake. Отделение хранилища от уровня обработки позволяет безопасно удалять кластеры HDInsight, которые используются для вычислений без потери данных пользователя. При добавлении кластера HDInsight необходимо определить файловую систему по умолчанию. При необходимости можно привязывать файловые системы или отменять их привязку, чтобы увеличить размер хранилища.

Приведенная ниже информация относится к HDInsight 3.6 и более поздним версиям. В процессе создания кластера HDinsight можно выбрать службу хранилища Azure или Azure Data Lake 2-го поколения в качестве файловой системы по умолчанию (есть несколько исключений). Предоставление файловой системы по умолчанию гарантирует, что относительные ссылки на файлы смогут разрешаться при поиске файлов. Для службы хранилища Azure необходимо указать в качестве файловой системы по умолчанию контейнер больших двоичных объектов.

HDInsight storage options

Большинство процедур настройки используют Azure Data Lake Storage 2-го поколения. Этот тип установки использует основные функции файловой системы, совместимые с Hadoop, интеграцией Microsoft Entra и списками управления доступом на основе POSIX (ACL). Вы можете использовать хранилище BLOB-объектов Azure для обеспечения обратной совместимости, однако настоятельно рекомендуется использовать Azure Data Lake Storage 2-го поколения по возможности во всех случаях.

Обрабатывается

При обработке данных вычисления кластера Hadoop в HDInsight разделяются на две логические области. Главные узлы и рабочие узлы. Главный узел отвечает за прием запросов клиентов и управление ими, а затем передает запрос на рабочие узлы для обработки данных. Обычно используется два основных узла. Активный главный узел, который будет управлять подключениями клиентов. Второй пассивный главный узел обеспечивает устойчивость в том случае, если требуется перевести исходную базу данных в автономный режим.

HDInsight node types

Рабочий узел отвечает за обработку данных, назначенных ему главным узлом. Управляемые данные зависят от того, как модель программирования MapReduce определила способ работы с данными и как главный узел назначает работу. Как головной, так и рабочий узел могут подключаться непосредственно к локально подключенной распределенной файловой системе (DFS) или обращаться к данным, хранящимся в большом двоичном объекте Azure или Azure Data Lake.

С точки зрения OSS, функции управления ресурсами кластера HDInsight реализуются посредством YARN. Эта служба управляет ресурсами и планированием заданий в процессе обработки данных. Она находится между HDFS и вычислительной системой кластера HDInsight. Служба взаимодействует с другими технологиями OSS, чтобы обеспечить доступность ресурсов для обработки задания HDInsight. YARN взаимодействует с головным узлом, чтобы распределить задание между рабочими узлами кластера и гарантировать параллельное выполнение заданий обработки данных.

HDFS, YARN и MapReduce — это три основные службы, которые требуются для Hadoop в HDInsight. Чтобы упростить создание решения, обычно используются дополнительные технологии OSS. Например, Hive можно использовать как слой абстракции. Один из них, расположенный поверх MapReduce, позволяет создавать конструкции языка SQL для выполнения специальной обработки и анализа данных. Можно также использовать Apache Ambari для мониторинга кластера HDInsight.