Как установить и настроить HIVE Metastore с MYSQL
Что такое HIVE Metastore?
Метастор Hive — это репозиторий, в котором хранятся метаданные (имена столбцов, типы данных, комментарии и т. д.), связанные с Apache Hive, с использованием MySQL or PostgreSQL. Это хранилище метаданных Hive реализовано с использованием таблиц в реляционной базе данных.
Зачем использовать MySQL в Hive как Metastore:
- По умолчанию Hive поставляется с базой данных derby в качестве хранилища метаданных.
- База данных Derby может поддерживать одновременно только одного активного пользователя.
- Derby не рекомендуется использовать в производственной среде.
Итак поддержку здесь
- Используйте MYSQL в качестве мета-хранилища на серверной стороне для одновременного подключения нескольких пользователей к Hive.
- MYSQL — лучший выбор для автономного метахранилища
Как установить и настроить Hive Metastore для MySQL База данных
Шаг 1) Установите MySQL серверу
На этом этапе мы собираемся выполнить две задачи
- Установка mysql-сервера
- Проверка mysql-сервера и его процесса
- . sudo apt-get install mysql-server команда, мы можем загрузить сервер MySQL
Установите MySQL как показано на скриншоте
- После успешной установки в конце, MySQL будет работать, как показано на снимке экрана ниже
Шаг 2) Установите MySQL Java соединитель
Установка MySQL Java Разъем. Это для зависимостей Java и целей подключения.
Шаг 3) Создать мягкую ссылку для соединителя
Создание программной ссылки для соединителя в каталоге Hive lib. Это для мягкой связи между Java и MySql.
Шаг 4) Настройка хранилища MySql в Hive
- Введите MySql –u root –p, а затем пароль.
- Здесь –u представляет имя пользователя root, p обозначает пароль
- После ввода приведенной выше команды пользователь должен ввести действительный пароль и затем нажать Enter.
- Затем он войдет в режим оболочки MySql.
Шаг 5) Создать имя пользователя и пароль
Создание имени пользователя и пароля для MySql, предоставление привилегий.
Нам нужно выполнить команды, как показано ниже:
mysql> CREATE USER 'hiveuser'@'%' IDENTIFIED BY 'hivepassword'; mysql> GRANT all on *.* to 'hiveuser'@localhost identified by 'hivepassword'; mysql> flush privileges;
Шаг 6) Настройка hive-site.xml
- После шага 5 назначьте имя пользователя и пароль MySQL базу данных и предоставленные привилегии.
- Здесь мы настроим некоторые свойства Hive, чтобы получить соединение с MySQL .
На скриншоте выше мы видим следующее. Здесь мы определяем 4 свойства, которые могут быть необходимы для установки MYSQL как метахранилища в Hive
Это следующие:
- Это свойство предназначено для URL-адреса подключения. Здесь мы определяем ConnectionURL в этом свойстве. Он действует как соединение JDBC и также представляет местоположение метахранилища.
- Это свойство предназначено для имени драйвера подключения. Здесь mysql.jdbc.Driver — это уважаемое значение, которое мы должны указать в теге значения.
- Это свойство используется для определения имени пользователя соединения. При этом мы определили «hiveguru» как имя пользователя.
- Это свойство используется для указания пароля подключения. При этом мы определили пароль как пароль пользователя.
После того, как свойства помещены в hive –site.xml, мы должны вручную сохранить (Ctrl+S) и закрыть файл. После закрытия этого файла, мы должны создать таблицу Hive и проверить данные таблицы в MySQL место хранения.
Поместите этот код в hive-site.xml.
улей-site.xml
<configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://localhost/metastore?createDatabaseIfNotExist=true</value> <description>metadata is stored in a MySQL server</description> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> <description>MySQL JDBC driver class</description> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>hiveuser</value> <description>user name for connecting to mysql server</description> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>hivepassword</value> <description>password for connecting to mysql server</description> </property> </configuration>
Шаг 7) Создать таблицу
Создайте таблицу «guru99» в Hive.
На скриншоте выше мы можем наблюдать следующее
- Создание таблицы с именем «guru99» с двумя именами столбцов.
- Имена столбцов указаны с указанием их типа данных, поскольку один из них является целочисленным, а другой имеет строковый тип.
На следующем шаге мы проверим, хранится ли он в MySql или нет.
Шаг 8) Войдите в режим оболочки MySql
На скриншоте выше мы можем наблюдать следующее
- Сначала нам нужно использовать базу данных как «использовать метахранилище».
- Как только он выберет метахранилище, мы сможем проверить присутствующие в нем таблицы, используя команду «показать» таблицы, как показано на снимке экрана.
- Какие бы таблицы ни создавались в Hive, метаданные соответствуют тем, что таблицы хранятся в TBLS в MySQL .
- «Таблица Guur99» создается в Hive, поэтому соответствующие метаданные хранятся в MySQL под ТБЛС.
Шаг 9) Введите выберите * из TBLS
Проверка представления созданной таблицы MySQL или нет
При вводе select * from TBLS будут отображаться таблицы, которые мы создали в режиме оболочки Hive.
На скриншоте выше мы можем наблюдать следующие вещи:
- Имя таблицы «guru99», созданной в Hive, можно отобразить в MySQL режим оболочки
- Помимо этого, он также предоставит такую информацию, как время создания таблицы, время доступа и другие свойства, как показано на снимке экрана выше.