Cum se instalează și se configurează HIVE Metastore cu MYSQL
Ce este HIVE Metastore?
Hive metastore este un depozit care stochează metadate (nume de coloane, tipuri de date, comentarii etc.) legate de Apache Hive folosind MySQL or PostgreSQL. Acest metastore Hive este implementat folosind tabele dintr-o bază de date relațională.
De ce să folosiți MySQL în Hive ca Metastore:
- În mod implicit, Hive vine cu baza de date derby ca metamagazin.
- Baza de date Derby poate accepta doar un singur utilizator activ la un moment dat
- Derby nu este recomandat în mediul de producție
Asa ca soluţie aici este
- Utilizați MYSQL ca meta stocare la backend pentru a conecta mai mulți utilizatori simultan la Hive
- MYSQL este cea mai bună alegere pentru metamagazinul independent
Cum se instalează și se configurează Hive Metastore la MySQL Baza de date
Pas 1) Instala MySQL server de
În acest pas, vom efectua două sarcini
- Instalarea mysql-server
- Verificarea mysql-server și a procesului acestuia
- Utilizarea comanda sudo apt-get install mysql-server, putem descărca serverul mysql
Instala MySQL așa cum se arată în captura de ecran
- După instalarea cu succes la sfârșit, MySQL va rula așa cum se arată în captura de ecran de mai jos
Pas 2) Instala MySQL Java Conector
Instalarea MySQL Java Conector. Acest lucru este pentru dependențe java și scopul conexiunii
Pas 3) Creați o legătură soft pentru conector
Crearea unei legături soft pentru conector în directorul Hive lib. Aceasta este pentru legătura soft între Java și MySql.
Pas 4) Configurarea stocării MySql în Hive
- Tastați MySql –u root –p urmat de parolă
- Aici –u reprezintă numele de utilizator root, p reprezintă parola
- După ce a introdus comanda de mai sus, utilizatorul trebuie să introducă o parolă validă și apoi să facă clic pe Enter
- Apoi va intra în modul shell MySql
Pas 5) Creați nume de utilizator și parolă
Crearea numelui de utilizator și a parolei pentru MySql, acordarea de privilegii.
Trebuie să executăm comenzile așa cum se arată mai jos,
mysql> CREATE USER 'hiveuser'@'%' IDENTIFIED BY 'hivepassword'; mysql> GRANT all on *.* to 'hiveuser'@localhost identified by 'hivepassword'; mysql> flush privileges;
Pas 6) Configurarea hive-site.xml
- După Pasul 5, atribuiți numele de utilizator și parola lui MySQL baza de date și privilegii acordate.
- Aici vom configura câteva proprietăți în Hive pentru a obține o conexiune MySQL Bază de date.
Din captura de ecran de mai sus, observăm următoarele. Aici definim 4 proprietăți care ar putea fi necesare pentru a stabili MYSQL ca magazin Meta în Stup
Acestea sunt după cum urmează:
- Această proprietate este pentru scopul adresei URL de conectare. Aici definim ConnectionURL în această proprietate. Acesta acționează ca conexiune JDBC și, de asemenea, locația sa reprezentativă metastore
- Această proprietate este pentru numele driverului de conexiune. Aici mysql.jdbc.Driver este valoarea respectată pe care trebuie să o menționăm în eticheta de valoare
- Această proprietate este folosită pentru definirea numelui de utilizator de conexiune. În aceasta, am definit „hiveguru” ca nume de utilizator
- Această proprietate este folosită pentru a menționa Parola de conectare. În aceasta, am definit parola ca parolă de utilizator.
Odată ce proprietățile sunt plasate în hive –site.xml, trebuie să salvăm manual (Ctrl+S) și să închidem fișierul. După închiderea acestui fișier, trebuie să creăm tabelul Hive și să verificăm detaliile tabelului MySQL depozitare.
Plasați acest cod în hive-site.xml
hive-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>
Pasul 7) Creați tabel
Creați tabelul „guru99” în Hive.
Din captura de ecran de mai sus, putem observa următoarele
- Crearea numelui tabelului „guru99″ cu două nume de coloane
- Numele coloanelor menționate cu tipul său de date, unul este întreg, iar altul este de tip șir
În pasul următor, vom verifica dacă este stocat în MySql sau nu
Pas 8) Intrați în modul shell MySql
Din captura de ecran de mai sus, putem observa următoarele
- Mai întâi trebuie să folosim baza de date ca „utilizați metastore”
- Odată ce alege meta store, putem verifica tabelele prezente în acesta utilizând comanda „show” tables, așa cum se arată în captură de ecran
- Indiferent de tabelele care sunt create în Hive, metadatele corespund că tabelele sunt stocate în TBLS în MySQL Bază de date.
- „Tabelul Guur99” este creat în Hive, astfel încât metadatele corespunzătoare sunt stocate în MySQL sub TBLS.
Pas 9) Introdu selectează * din TBLS
Verificarea dacă tabelul creat este prezent MySQL sau nu
Introducând select * din TBLS, va afișa tabelele pe care le-am creat în modul shell Hive
Din captura de ecran de mai sus putem observa următoarele lucruri:
- Numele tabelului „guru99” creat este Hive în care poate fi afișat MySQL modul shell
- Pe lângă aceasta, va oferi, de asemenea, informații precum timpul de creare a tabelului, timpul accesat și alte proprietăți, așa cum se arată în captura de ecran de mai sus.