Miks kasutada kärus MySQL-i kui Metastore'i:
- Vaikimisi on Hive'il derbi andmebaas metastore.
- Derby andmebaas toetab korraga ainult ühte aktiivset kasutajat
- Derby pole tootmiskeskkonnas soovitatav
Nii et lahendus on siin
- Mitme kasutaja korraga Hive'iga ühendamiseks kasutage taustaprogrammi MYSQL-i meta salvestusruumina
- MYSQL on parim valik eraldiseisva metastaasutuse jaoks
MySQL-i andmebaasi installimine ja konfigureerimine Hive'is Hive'is
1. samm. Selles etapis täidame kaks ülesannet
- Mysql-serveri installimine
- Mysql-serveri ja selle protsessi kontrollimine
- Kasutades käsku sudo apt-get install mysql-server, saame alla laadida mysql-serveri
Installige MySQL nagu ekraanipildil näidatud
- Pärast edukat installimist töötab MySQL nagu allpool ekraanipildil näidatud
Samm 2) MySQL Java Connectori installimine. See on mõeldud Java sõltuvuste ja ühenduse eesmärgil
Samm 3) Hive libi kataloogi pistiku jaoks pehme lingi loomine . See on mõeldud Java ja MySql vahelise pehme sideme jaoks.
Samm 4) MySQL-i salvestusruumi konfigureerimine Hive'is
- Sisestage MySql -u root -p, millele järgneb parool
- Siin tähistab -u root kasutajanime, p tähistab parooli
- Pärast ülaltoodud käsu sisestamist peab kasutaja sisestama kehtiva parooli ja seejärel klõpsama sisestusklahvi
- Seejärel lülitub see MySql-i shellirežiimi
Samm 5) MySql-i kasutajanime ja parooli loomine, privileegide andmine.
Peame käske täitma nagu allpool näidatud,
mysql> CREATE USER 'hiveuser'@'%' IDENTIFIED BY 'hivepassword';mysql> GRANT all on *.* to 'hiveuser'@localhost identified by 'hivepassword';mysql> flush privileges;
6. samm. Hive-site.xml konfigureerimine
- Pärast 5. sammu määrake MySQL-i andmebaasi kasutajanimi ja parool ning anti neile õigused.
- Siin konfigureerime Hive'is mõned atribuudid, et saada ühendus MySQL-i andmebaasiga .
Ülaltoodud ekraanipildilt jälgime järgmist. Siin määratleme 4 omadust, mis võivad olla vajalikud MYSQLi loomiseks tarukeskkonnas Meta-poodi
Need on järgmised:
- See atribuut on mõeldud ühenduse URL-i jaoks. Siin määratleme selles atribuudis ConnectionURL. See toimib JDBC-ühendusena ja esindab ka metastore asukohta
- See omadus on seotud ühenduse draiveri nimega. Siin on mysql.jdbc.Driver austatud väärtus, mida peame väärtusesildis mainima
- Seda omadust kasutatakse ühenduse kasutajanime määratlemiseks. Selles määratlesime kasutajanimena "hiveguru"
- Seda omadust kasutati ühenduse parooli mainimiseks. Selles määratlesime parooli kasutaja paroolina.
Kui tarusse -site.xml paigutatud atribuudid peame käsitsi salvestama (Ctrl + S) ja faili sulgema. Pärast selle faili sulgemist peame looma Hive'i tabeli ja kontrollima MySQL-i salvestusruumi tabeli üksikasju.
Asetage see kood hive-site.xml
taru-sait.xml
javax.jdo.option.ConnectionURL jdbc:mysql://localhost/metastore?createDatabaseIfNotExist=true metadata is stored in a MySQL server javax.jdo.option.ConnectionDriverName com.mysql.jdbc.Driver MySQL JDBC driver class javax.jdo.option.ConnectionUserName hiveuser user name for connecting to mysql server javax.jdo.option.ConnectionPassword hivepassword password for connecting to mysql server
Samm 7 ) Looge tarus tabel "guru99".
Ülaltoodud ekraanipildilt võime jälgida järgmist
- Kahe veerunimega tabeli nime "guru99" loomine
- Veergude nimed, mille andmetüüp on üks, on täisarv ja teine on stringitüüp
Järgmises etapis kontrollime, kas see on MySql-is salvestatud või mitte
8. samm. MySql-i režiimi sisenemine
Ülaltoodud ekraanipildilt võime jälgida järgmist
- Kõigepealt peame andmebaasi kasutama kui "metastore'i kasutamist"
- Kui ta valib metapoe, saame selles olevaid tabeleid kontrollida, kasutades käsku "näita tabeleid", nagu ekraanipildil näidatud
- Ükskõik, millised Hive'is loodud tabelid on, vastavad metaandmed nendele tabelitele, mis on salvestatud MySQL-i andmebaasi TBLS-i alla.
- "Guur99 tabel" on loodud Hive'is, nii et vastavad metaandmed salvestatakse MySQL-is TBLS-i alla.
9. samm. Kontrollige, kas loodud tabel esitab MySQL-i või mitte
Sisestades TBLS-ist select *, kuvatakse tabelid, mille lõime Hive'i shellirežiimis
Ülaltoodud ekraanipildilt võime jälgida järgmisi asju:
- Loo nime "guru99", mis on loodud taru, saab kuvada MySQL-i shellirežiimis
- Lisaks pakub see ka sellist teavet nagu tabeli loomise aeg, juurdepääsuaeg ja muud omadused, nagu on näidatud ülaltoodud ekraanipildil.