Як встановити HIVE на Ubuntu (Посібник із завантаження та налаштування)
⚡ Розумний підсумок
Apache Hive встановлюється на Ubuntu як тонкий шар сховища даних над уже запущеним кластером Hadoop, тому налаштування здебільшого зводиться до розпакування одного архіву та вказівки трьох змінних середовища на потрібні каталоги.
Перед встановленням Apache Hive нам потрібен спеціалізований Hadoop установку, роботу з усіма демонами Hadoop.
Для встановлення Hadoop перевірте це за посиланням.
Щойно всі демони Hadoop запрацюють належним чином, просто розпочніть встановлення частини Hive. Покрокова інструкція нижче складається з чотирьох етапів:
Процес встановлення Apache Hive
- Необхідні умови та сумісність версій
- Встановлення Hive
- Ініціалізація схеми метасховища
- Команди оболонки Hive
Необхідні умови для встановлення Apache Hive на Ubuntu
Hive не є окремою базою даних. Це рівень запитів, який перетворює HiveQL на завдання, що виконуються на існуючому кластері, тому майже кожна невдала інсталяція tracповертається до відсутньої передумови, а не до самого Hive. Перед завантаженням будь-чого перевірте наступне:
- Підтримуваний JDK. Hive 4.1.x працює на JDK 17, тоді як Hive 4.2.x підвищує мінімальний рівень до JDK 21. Перевірте версію за допомогою java-версія і переконайтеся, що JAVA_HOME експортовано.
- Працюючий кластер Hadoop. Як NameNode, так і DataNode повинні бути активними. Запустіть японська мова і переконайтеся, що NameNode, DataNode, ResourceManager та NodeManager відображаються у списку.
- Доступ для запису в HDFS. Обліковий запис, який запускає Hive, потребує дозволу на створення каталогів у HDFS.
- Відповідні версії. Hive 4.2.0 побудовано на базі Hadoop 3.4.1 та Tez 0.10.5. Життєвий цикл лінійки Hive 3.x завершився у жовтні 2024 року, тому нова інсталяція має бути спрямована на лінійку 4.x.
- Безкоштовні ресурси. Одновузлова навчальна система комфортно підходить приблизно з 4 ГБ оперативної пам'яті та 20 ГБ вільного місця на диску.
Якщо ці пункти поставлені, послідовність завантаження та розпакування, наведена нижче, пройде без несподіванок.
Як встановити Hive на Ubuntu
Нижче наведено крок за кроком процес встановлення Hive Ubuntu:
Крок 1) Завантажте та встановіть Hive на Ubuntu
Щоб завантажити стабільну версію Hive, зверніться до Apache URL як зазначено нижче.
https://www.apache.org/dyn/closer.cgi/hive/ — йти до URL і виберіть посилання для завантаження дзеркала Apache. Сторінка завантажень Apache Hive перелічує, які випуски відповідають певній версії Hadoop.
Відкриється сторінка дзеркала зі списком доступних каталогів випусків Hive, як показано нижче.
Виберіть останню версію налаштування Hive. (У моєму випадку це hive – 3.1.2.) У папці релізу поруч перелічені бінарні та вихідні архіви.
Натисніть на файл bin, і завантаження розпочнеться.
Крок 2) Прикладtract файл tar
Перейдіть до місця завантаження tar-файлу, а потім extract файл tar за допомогою наступної команди для встановлення Hive на Ubuntu на вашу систему.
tar -xvf apache-hive-3.1.2-bin.tar.gz
Термінал відтворює кожен файл під час розпакування в новий каталог Hive.
Крок 3) Розмістіть різні властивості конфігурації в Apache Hive
На цьому кроці ми зробимо дві речі:
- Розміщення домашнього шляху Hive у файлі bashrc
- Розміщення домашнього шляху Hadoop у hive-config.sh
1) Згадайте шлях до Hive у ~/.bashrc
Відкрийте файл для редагування за допомогою команди, показаної нижче.
- Відкрийте файл bashrc, як показано на скріншоті вище
- Згадайте домашній шлях Hive, тобто шлях HIVE_HOME, у файлі bashrc та експортуйте його, як показано нижче.
Code для розміщення в bashrc:
export HIVE_HOME="/home/guru99hive/apache-hive-1.2.0-bin" export PATH=$PATH:$HIVE_HOME/bin
Перезавантажте файл за допомогою джерело ~ / .bashrc тож новий шлях набуде чинності в поточному сеансі терміналу.
2) Експорт шляху Hadoop у hive-config.sh
Для зв'язку з екосистемою Hadoop ми визначаємо домашній шлях Hadoop у конфігураційному файлі Hive. Відкрийте hive-config.sh, як показано нижче.
Згадайте шлях HADOOP_HOME у файлі hive-config.sh, як показано нижче.
Крок 4) Створіть каталоги Hive у Hadoop
Для зв'язку з Hadoop нам потрібно створити каталоги в Hadoop, як показано нижче. Hive записує дані керованих таблиць у каталог сховища даних, а вивід проміжних даних – у каталог tmp.
Надання root-дозволів для створення папок Hive в Hadoop. Якщо не виникає жодних повідомлень про помилку, це означає, що Hadoop успішно надав дозволи для папок Hive.
Крок 5) Увійдіть в оболонку Hive
Потрапте в оболонку вулика, ввівши '. /вулик' команду, як показано нижче.
Як ініціалізувати схему метасховища Hive
Hive зберігає кожне ім'я таблиці, ім'я стовпця та тип даних у реляційному сховищі, яке називається метасховищем. Після нової інсталяції це сховище порожнє, і починаючи з Hive 3.x і далі оболонка відмовляється запускатися, доки не з'являться таблиці схеми. Утиліта schematool, яка постачається в каталозі Hive bin, створює їх.
Для навчання з одним користувачем достатньо бази даних Derby, що входить до комплекту:
$HIVE_HOME/bin/schematool -dbType derby -initSchema
Команда виводить створену нею версію схеми та закінчується на schemaTool завершеноDerby записує свої файли в той каталог, з якого було виконано команду, тому завжди запускайте Hive з того ж каталогу після цього.
Дербі приймає лише один активний сеанс одночасно, що робить його непридатним для спільного кластера. Вкажіть кущ у MySQL замість цього, додавши властивості підключення до hive-site.xml та повторно запустивши інструмент з іншим типом бази даних:
$HIVE_HOME/bin/schematool -dbType mysql -initSchema
Повний список властивостей та розміщення водіїв описано в посібнику про те, як налаштувати сховище метасховища Hive за допомогою MySQLВарто запам'ятати ще два прапори:
- -інфо повідомляє версію схеми, записану на даний момент у сховищі метапосилань, без жодних змін.
- -схема_оновлення переносить існуюче сховище метафайлів до версії схеми щойно встановленого випуску Hive.
Після налаштування схеми оболонка готова прийняти свій перший оператор HiveQL.
Команди оболонки Hive
Тут ми створимо зразок таблиці за допомогою команди оболонки Hive «create» з іменами стовпців.
Приклад коду для створення бази даних у Hive. На скріншоті нижче показано оператор create та вивід describe один за одним.
З наведеного вище скріншоту ми можемо спостерігати наступне:
1) Створення зразка таблиці з іменами стовпців у Hive
- Тут назва таблиці «продукт» із трьома назвами стовпців продукт, назва та ціна
- Назви трьох стовпців позначені відповідним типом даних
- Усі поля завершуються комою ', '
2) Відображення інформації про таблицю Hive
- За допомогою команди «describe» ми можемо побачити інформацію про таблицю, присутню в Hive.
- Тут відображаються назви стовпців з відповідними типами даних, присутніми у схемі таблиці.
- В кінці буде відображено час, витрачений на виконання цієї команди, та кількість отриманих рядків.
Приклад коду для створення бази даних у Вулик (для самоперевірки)
1) Створити таблицю product(product int, pname string, price float)
Row format delimited Fields terminated by ',';
2) описати продукт;
Щойно таблиця відповідає на запит description, оболонка, сховище метасховища та HDFS з'єднуються між собою. Звідси той самий сеанс приймає ширший створювати, змінювати та видаляти таблицю заяви та упорядкувати за, групувати за та кластеризувати за запити.
Поширені помилки встановлення Hive на Ubuntu і як їх виправити
Більшість збоїв першого запуску виникають через середовище навколо Hive, а не через сам Hive. У таблиці нижче зіставлено повідомлення, які з'являються найчастіше, з їхньою причиною та командою, яка їх очищує.
| Повідомлення на екрані | Ймовірна причина | виправляти |
|---|---|---|
| hive: команда не знайдена | HIVE_HOME/bin не знаходиться на шляху PATH | Перевірте рядки експорту в bashrc, а потім запустіть джерело ~ / .bashrc |
| Інформацію про версію не знайдено в метасховищі | Схема метасховища ніколи не була ініціалізована | Запустіть schematool з параметром -initSchema для вибраного типу бази даних |
| Виклик до localhost:9000 не вдався через виняток з'єднання | HDFS не працює | Запустіть демони Hadoop та переконайтеся, що NameNode та DataNode з'являються в японська мова |
| Вузол імені знаходиться в безпечному режимі | NameNode все ще перебуває в безпечному режимі запуску | Вийдіть з безпечного режиму за допомогою hdfs dfsadmin - вийти з безпечного режиму |
| Доступ заборонено: access=WRITE on /user/hive/warehouse | Каталогу сховища бракує групового дозволу на запис | Повторно подайте заявку hdfs dfs -chmod g+w у каталогах warehouse та tmp |
| NoSuchMethodError для Preconditions.checkArgument | Hive та Hadoop постачають різні версії Guava Jar. | Видаліть старий JAR-файл Guava з каталогу Hive lib та скопіюйте на його місце файл Hadoop. |
Швидкий спосіб відокремити проблему Hive від проблеми Hadoop – це запустити японська мова по-перше. Якщо демони відсутні, проблема в кластері; якщо вони присутні, а оболонка все одно не працює, проблема в конфігурації Hive або схемі метасховища. Після того, як оболонка стабільна, Оператори HiveQL та вбудовані функції посилання – це природний наступний пункт.








