Miksi käyttää MySQL: ää pesässä Metastore-muodossa:
- Oletusarvoisesti Hive toimittaa derby-tietokannan metastoreena.
- Derby-tietokanta tukee vain yhtä aktiivista käyttäjää kerrallaan
- Derbyä ei suositella tuotantoympäristössä
Joten ratkaisu on
- Yhdistä useita käyttäjiä Hiveen kerrallaan käyttämällä MYSQL: ää metatallennuksena taustalla
- MYSQL on paras valinta itsenäiseen metastoreihin
Vaiheet MySQL-tietokannan asentamiseen ja määrittämiseen Hive Hadoopissa
Vaihe 1) Tässä vaiheessa aiomme suorittaa kaksi tehtävää
- Mysql-palvelimen asennus
- Tarkistetaan mysql-palvelin ja sen prosessi
- Käyttämällä sudo apt-get install mysql-server -komentoa voimme ladata mysql-palvelimen
Asenna MySQL kuvakaappauksen mukaisesti
- Onnistuneen asennuksen jälkeen MySQL toimii kuten alla olevassa kuvakaappauksessa näkyy
Vaihe 2) Asenna MySQL Java Connector. Tämä on tarkoitettu Java-riippuvuuksiin ja yhteyden tarkoitukseen
Vaihe 3) Luodaan pehmeä linkki liittimelle Hive lib -hakemistoon . Tämä on tarkoitettu pehmeään yhteyteen Java- ja MySql-tiedostojen välillä.
Vaihe 4) MySql-tallennustilan määrittäminen Hivessa
- Kirjoita MySql -u root -p ja salasana
- Tässä -u edustaa juuren käyttäjänimeä, p tarkoittaa salasanaa
- Kun olet syöttänyt yllä olevan komennon, käyttäjän on annettava kelvollinen salasana ja napsautettava sitten Enter
- Sitten se siirtyy MySql-kuoritilaan
Vaihe 5) Luodaan käyttäjätunnus ja salasana MySql: lle, myönnetään käyttöoikeudet.
Meidän on suoritettava komennot alla esitetyllä tavalla,
mysql> CREATE USER 'hiveuser'@'%' IDENTIFIED BY 'hivepassword';mysql> GRANT all on *.* to 'hiveuser'@localhost identified by 'hivepassword';mysql> flush privileges;
Vaihe 6) Määritä hive-site.xml
- Määritä vaiheen 5 jälkeen käyttäjätunnus ja salasana MySQL-tietokantaan sekä annetut oikeudet.
- Tässä määritämme joitain Hiven ominaisuuksia, jotta saisimme yhteyden MySQL-tietokantaan .
Edellä olevasta kuvakaappauksesta havaitaan seuraava. Tässä määrittelemme 4 ominaisuutta, jotka saattavat olla tarpeen MYSQL: n luomiseksi Metan myymäläksi Hivessa
Nämä ovat seuraavat:
- Tämä ominaisuus on tarkoitettu yhteyden URL-osoitteeseen. Tässä määritämme ConnectionURL: n tässä ominaisuudessa. Se toimii JDBC-yhteytenä ja edustaa myös metastore-sijaintia
- Tämä ominaisuus on yhteysohjaimen nimi. Tässä mysql.jdbc.Driver on arvostettu arvo, joka meidän on mainittava arvotunnisteessa
- Tätä ominaisuutta käytetään määrittämään yhteyden käyttäjänimi. Tässä määriteltiin "hiveguru" käyttäjänimeksi
- Tätä ominaisuutta käytettiin yhteyden salasanan mainitsemiseksi. Tässä määritimme salasanan käyttäjän salasanaksi.
Kun hive -site.xml-tiedostoon asetetut ominaisuudet on tallennettava manuaalisesti (Ctrl + S) ja suljettava tiedosto. Tämän tiedoston sulkemisen jälkeen meidän on luotava Hive-taulukko ja tarkistettava taulukon tiedot MySQL-tallennustilassa.
Lisää tämä koodi osoitteeseen hive-site.xml
hive-site.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
Vaihe 7) Luo taulukko "guru99" Hiveen.
Yllä olevasta kuvakaappauksesta voimme havaita seuraavaa
- Taulukon nimen "guru99" luominen kahdella sarakkeen nimellä
- Sarakkeiden nimet, joiden tietotyyppi on yksi, on kokonaisluku, ja toinen on merkkijonotyyppi
Seuraavassa vaiheessa aiomme tarkistaa, onko se tallennettu MySql-tiedostoon vai ei
Vaihe 8) Siirtyminen MySql-kuoritilaan
Yllä olevasta kuvakaappauksesta voimme havaita seuraavaa
- Ensin meidän on käytettävä tietokantaa "use metastore"
- Kun se valitsee metakaupan, voimme tarkistaa tässä olevat taulukot käyttämällä "näytä" taulukot -komentoa, kuten kuvakaappauksessa esitetään
- Hiveen luoduista taulukoista riippumatta metatiedot vastaavat niitä taulukoita, jotka on tallennettu TBLS: ään MySQL-tietokantaan.
- "Guur99-taulukko" luodaan Hiveen, joten vastaavat metatiedot tallennetaan MySQL: ään TBLS: n alla.
Vaihe 9) Tarkistetaan, onko luotu taulukko MySQL: ää vai ei
Syöttämällä select * TBLS: stä se näyttää taulukot, jotka olemme luoneet Hive-kuoretilassa
Yllä olevasta kuvakaappauksesta voimme havaita seuraavia asioita:
- Taulukon nimi "guru99", joka on luotu Hive, voidaan näyttää MySQL-kuoretilassa
- Tämän lisäksi se tarjoaa myös tietoja, kuten taulukon luomisaika, käytetty aika ja muut ominaisuudet, kuten yllä olevassa kuvakaappauksessa esitetään.