Konfigurace HIVE Metastore s MYSQL

Anonim

Proč používat MySQL v Hive jako Metastore:

  • Standardně je Hive dodáván s databází derby jako metastore.
  • Databáze Derby může podporovat pouze jednoho aktivního uživatele najednou
  • Derby se v produkčním prostředí nedoporučuje

Takže řešení zde je

  • Použijte MYSQL jako Meta úložiště na backendu pro připojení více uživatelů k Hive najednou
  • MYSQL je nejlepší volbou pro samostatný metastore

Kroky k instalaci a konfiguraci databáze MySQL v Hive na Hadoop

Krok 1) V tomto kroku provedeme dva úkoly

  1. Instalace mysql-serveru
  2. Kontrola mysql-serveru a jeho procesu
  1. Pomocí příkazu sudo apt-get install mysql-server si můžeme stáhnout mysql server

Nainstalujte MySQL podle obrázku

  1. Po úspěšné instalaci na konci MySQL poběží, jak je znázorněno na následujícím snímku obrazovky

Krok 2) Instalace MySQL Java Connector. To je pro java závislosti a účel připojení

Krok 3) Vytvoření měkkého odkazu pro konektor v adresáři Hive lib . To je pro měkké propojení mezi 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 uživatele 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 prostředí MySql

Krok 5) Vytvoření uživatelského jména a hesla pro MySql, udělení oprávnění.

Musíme provést příkazy, jak je znázorněno 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 souboru hive-site.xml

  • Po kroku 5 přiřaďte uživatelské jméno a heslo k databázi MySQL a daná oprávnění.
  • Zde nakonfigurujeme některé vlastnosti v Hive, abychom získali připojení k databázi MySQL .

Z výše uvedeného snímku obrazovky sledujeme následující. Zde definujeme 4 vlastnosti, které by mohly být nezbytné k založení MYSQL jako Meta úložiště v Hive

Jedná se o následující:

  1. Tato vlastnost je pro účely adresy URL připojení. Zde definujeme ConnectionURL v této vlastnosti. Funguje jako připojení JDBC a také představuje umístění metastore
  2. Tato vlastnost je pro název ovladače připojení. Zde je mysql.jdbc.Driver respektovaná hodnota, kterou musíme ve značce hodnoty zmínit
  3. Tato vlastnost slouží k definování uživatelského jména připojení. V tomto jsme definovali „hiveguru“ jako uživatelské jméno
  4. Tato vlastnost slouží ke zmínce hesla připojení. V tomto jsme definovali heslo jako uživatelské heslo.

Jakmile jsou vlastnosti umístěné v hive -site.xml, musíme ručně uložit (Ctrl + S) a zavřít soubor. Po uzavření tohoto souboru musíme vytvořit tabulku Hive a zkontrolovat podrobnosti tabulky v úložišti MySQL.

Umístěte tento kód do souboru hive-site.xml

hive-site.xml


javax.jdo.option.ConnectionURLjdbc:mysql://localhost/metastore?createDatabaseIfNotExist=truemetadata is stored in a MySQL server
javax.jdo.option.ConnectionDriverNamecom.mysql.jdbc.DriverMySQL JDBC driver class
javax.jdo.option.ConnectionUserNamehiveuseruser name for connecting to mysql server
javax.jdo.option.ConnectionPasswordhivepasswordpassword for connecting to mysql server

Krok 7) Vytvořte tabulku „guru99“ v Úlu.

Z výše uvedeného snímku obrazovky můžeme sledovat následující

  • Vytvoření názvu tabulky "guru99" se dvěma názvy sloupců
  • Názvy sloupců uvedené s datovým typem jako jeden je celé číslo a další je řetězcového typu

V dalším kroku zkontrolujeme, zda je uložen v MySql nebo ne

Krok 8) Vstup do režimu prostředí MySql

Z výše uvedeného snímku obrazovky můžeme sledovat následující

  • Nejprve musíme použít databázi jako „použít metastore“
  • Jakmile si vybere meta store, můžeme zkontrolovat tabulky, které jsou v něm, 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í těmto tabulkám, které jsou uloženy pod TBLS v databázi MySQL.
  • „Tabulka Guur99“ je vytvořena v Hive, takže odpovídající metadata jsou uložena v MySQL pod TBLS.

Krok 9) Kontrola, zda vytvořená tabulka obsahuje MySQL nebo ne

Zadáním select * z TBLS se zobrazí tabulky, které jsme vytvořili v režimu prostředí Hive

Z výše uvedeného snímku obrazovky můžeme sledovat následující věci:

  • Název tabulky „guru99“, který byl vytvořen, je Hive, lze zobrazit v režimu prostředí MySQL
  • Kromě toho bude také poskytovat informace, jako je čas vytvoření tabulky, čas přístupu a další vlastnosti, jak je znázorněno na snímku obrazovky výše.