Jak nainstalovat a nakonfigurovat HIVE Metastore s MYSQL
Co je HIVE Metastore?
Hive metastore je úložiště, které ukládá metadata (názvy sloupců, datové typy, komentáře atd.) související s Apache Hive pomocí MySQL or PostgreSQL. Toto metaúložiště Hive je implementováno pomocí tabulek v relační databázi.
Proč používat MySQL v Hive as Metastore:
- Ve výchozím nastavení přichází Hive s databází derby jako metastore.
- Databáze Derby může současně podporovat pouze jednoho aktivního uživatele
- Derby se nedoporučuje v produkčním prostředí
Takže řešení tady je
- Použijte MYSQL jako úložiště Meta na backendu pro připojení více uživatelů k Hive najednou
- MYSQL je nejlepší volbou pro samostatné metaúložiště
Jak nainstalovat a nakonfigurovat Hive Metastore MySQL Databáze
Krok 1) instalovat MySQL Server
V tomto kroku provedeme dva úkoly
- Instalace mysql-serveru
- Kontrola mysql-serveru a jeho procesu
- Použití příkaz sudo apt-get install mysql-server, můžeme si stáhnout mysql server
instalovat MySQL jak je znázorněno na snímku obrazovky
- Po úspěšné instalaci na konci, MySQL poběží tak, jak je znázorněno na snímku obrazovky níže
Krok 2) instalovat MySQL Java konektor
Instalace MySQL Java Konektor. Toto je pro závislosti na Javě a účely připojení
Krok 3) Vytvořte měkký odkaz pro konektor
Vytvoření měkkého odkazu pro konektor v adresáři Hive lib. Toto je pro měkké propojení Java a MySql.
Krok 4) Konfigurace úložiště MySql v Hive
- Zadejte MySql –u root –p následované heslem
- Zde –u představuje uživatelské jméno root , p označuje heslo
- Po zadání výše uvedeného příkazu musí uživatel zadat platné heslo a poté kliknout na enter
- Poté vstoupí do režimu shellu MySql
Krok 5) Vytvořte uživatelské jméno a heslo
Vytvoření uživatelského jména a hesla pro MySql, udělení oprávnění.
Musíme provést příkazy, jak je uvedeno níže,
mysql> CREATE USER 'hiveuser'@'%' IDENTIFIED BY 'hivepassword'; mysql> GRANT all on *.* to 'hiveuser'@localhost identified by 'hivepassword'; mysql> flush privileges;
Krok 6) Konfigurace hive-site.xml
- Po kroku 5 přiřaďte uživatelské jméno a heslo MySQL databáze a udělená oprávnění.
- Zde nakonfigurujeme některé vlastnosti v Hive, se kterými získáme spojení MySQL databáze.
Z výše uvedeného snímku obrazovky vidíme následující. Zde definujeme 4 vlastnosti, které by mohly být nezbytné pro vytvoření MYSQL jako úložiště Meta Úl
Jedná se o následující:
- Tato vlastnost je pro účely adresy URL připojení. Zde definujeme ConnectionURL v této vlastnosti. Funguje jako připojení JDBC a jeho reprezentující umístění metastore
- Tato vlastnost je pro název ovladače připojení. Zde je mysql.jdbc.Driver respektovanou hodnotou, kterou musíme zmínit ve značce value
- Tato vlastnost se používá pro definování uživatelského jména připojení. V tomto jsme definovali „hiveguru“ jako uživatelské jméno
- Tato vlastnost se používá pro uvedení hesla připojení. V tomto jsme definovali heslo jako uživatelské heslo.
Jakmile jsou vlastnosti umístěny do hive –site.xml, musíme soubor ručně uložit (Ctrl+S) a zavřít. Po zavření tohoto souboru musíme vytvořit tabulku Hive a zkontrolovat podrobnosti tabulky MySQL úložný prostor.
Umístěte tento kód do souboru 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>
Krok 7) Vytvořte tabulku
Vytvořte tabulku „guru99“ v Hive.
Z výše uvedeného snímku obrazovky můžeme pozorovat následující
- Vytvoření názvu tabulky “guru99″ se dvěma názvy sloupců
- Názvy sloupců uvedené s jejich datovým typem jako jeden je celočíselný a druhý je řetězcového typu
V dalším kroku zkontrolujeme, zda je uložen v MySql nebo ne
Krok 8) Vstupte do režimu shellu MySql
Z výše uvedeného snímku obrazovky můžeme pozorovat následující
- Nejprve musíme použít databázi jako „použít metastore“
- Jakmile si vybere meta store, můžeme zkontrolovat tabulky přítomné v tomto pomocí příkazu „show“ tables, jak je znázorněno na snímku obrazovky
- Bez ohledu na tabulky, které jsou vytvořeny v Hive, metadata odpovídají tomu, že tabulky jsou uloženy pod TBLS v MySQL databáze.
- „Tabulka Guur99“ je vytvořena v Hive, takže jsou uložena odpovídající metadata MySQL pod TBLS.
Krok 9) Zadejte výběr * z TBLS
Kontrola, zda se vytvořená tabulka prezentuje MySQL nebo ne
Zadáním select * z TBLS se zobrazí tabulky, které jsme vytvořili v režimu Hive shell
Z výše uvedeného snímku obrazovky můžeme pozorovat následující věci:
- Název tabulky „guru99“, která byla vytvořena, je Úl, ve kterém lze zobrazit MySQL shellový režim
- Kromě toho také poskytne informace, jako je čas vytvoření tabulky, čas přístupu a další vlastnosti, jak je znázorněno na snímku obrazovky výše.