Использование хранилища метаданных Hive с кластером Apache Spark™
Важный
Azure HDInsight на базе AKS выведен из эксплуатации 31 января 2025 г. Узнайте больше об этом объявлении.
Необходимо перенести рабочие нагрузки в Microsoft Fabric или эквивалентный продукт Azure, чтобы избежать резкого завершения рабочих нагрузок.
Важный
Эта функция сейчас доступна в предварительной версии. Дополнительные условия использования для предварительных версий Microsoft Azure включают дополнительные юридические термины, применимые к функциям Azure, которые находятся в бета-версии, в предварительной версии или в противном случае еще не выпущены в общую доступность. Сведения об этой конкретной предварительной версии см. в Azure HDInsight в предварительной версии AKS. Для вопросов или предложений функций отправьте запрос на AskHDInsight с подробными сведениями и следуйте за дополнительными обновлениями в Azure HDInsight Community.
Важно предоставить общий доступ к данным и хранилищу метаданных в нескольких службах. Один из часто используемых хранилищ метаданных в хранилище метаданных HIVE. HDInsight в AKS позволяет пользователям подключаться к внешнему хранилищу метаданных. Этот шаг позволяет пользователям HDInsight легко подключаться к другим службам в экосистеме.
Azure HDInsight в AKS поддерживает пользовательские хранилища метаданных, которые рекомендуется использовать для продуктивных кластеров. Основные этапы, которые необходимо выполнить
- Создание базы данных SQL Azure
- Создание хранилища ключей для хранения учетных данных
- Настройка хранилища метаданных при создании HDInsight в кластере AKS с помощью Apache Spark™
- Работа с внешним хранилищем метаданных (показывает базы данных и выполняет запрос select limit 1).
При создании кластера служба HDInsight должна подключиться к внешнему хранилищу метаданных и проверить учетные данные.
Создание базы данных SQL Azure
Создайте или создайте существующую базу данных SQL Azure перед настройкой настраиваемого хранилища метаданных Hive для кластера HDInsight.
Заметка
В настоящее время мы поддерживаем только базу данных Azure SQL для метахранилища HIVE. Из-за ограничения Hive символ "-" (дефис) в имени базы данных хранилища метаданных не поддерживается.
Создание хранилища ключей для хранения учетных данных
Создайте Azure Key Vault.
Целью Key Vault является сохранение набора паролей администратора SQL Server во время создания базы данных SQL. HDInsight на платформе AKS напрямую не имеет дело с учетными данными. Поэтому необходимо сохранить важные учетные данные в Azure Key Vault. Узнайте шаги по созданию Azure Key Vault.
После создания Azure Key Vault назначьте следующие роли
Объект Роль Замечания Назначаемое пользователем управляемое удостоверение (то же самое UAMI, используемое в кластере HDInsight) Пользователь секретов Key Vault Узнайте, как назначить роль для UAMI Пользователь (который создает секрет в Azure Key Vault) Администратор ключевого хранилища Узнайте, как назначить роль пользователю. Заметка
Без этой роли пользователь не может создать секрет.
-
Этот шаг позволяет сохранить пароль администратора SQL Server в качестве секрета в Azure Key Vault. Добавьте пароль (тот же пароль, что и в базе данных SQL для администратора) в поле "Значение" при добавлении секрета.
Заметка
Обязательно запишите имя секрета, так как это потребуется во время создания кластера.
Настройка хранилища метаданных при создании кластера HDInsight Spark
Перейдите в HDInsight в пуле кластеров AKS, чтобы создать кластеры.
Включите переключатель, чтобы добавить внешнее метахранилище Hive и заполните следующие сведения.
Остальные сведения должны быть внесены в соответствии с правилами создания кластера для Apache Spark в HDInsight на AKS.
Щелкните Обзор и создать.
Заметка
- Жизненный цикл хранилища метаданных не привязан к жизненному циклу кластеров, поэтому можно создавать и удалять кластеры без потери метаданных. Метаданные, такие как схемы Hive, сохраняются даже после удаления и повторного создания кластера HDInsight.
- Пользовательское хранилище метаданных позволяет подключить несколько кластеров и типов кластеров к этому хранилищу метаданных.
Работа с внешним хранилищем метаданных
Создание таблицы
>> spark.sql("CREATE TABLE sampleTable (number Int, word String)")
Добавление данных в таблицу
>> spark.sql("INSERT INTO sampleTable VALUES (123, \"HDIonAKS\")");\
Прочитайте таблицу
>> spark.sql("select * from sampleTable").show()
Ссылка
- Имена проектов Apache, Apache Spark, Spark и связанные с открытым исходным кодом проекты являются товарными знаками компаний Apache Software Foundation (ASF).