Jak zainstalować i skonfigurować HIVE Metastore z MYSQL

Co to jest Metastore HIVE?

Hive metastore to repozytorium przechowujące metadane (nazwy kolumn, typy danych, komentarze itp.) związane z Apache Hive przy użyciu MySQL or PostgreSQL. Ten magazyn metadanych Hive jest implementowany przy użyciu tabel w relacyjnej bazie danych.

Dlaczego używać MySQL w Hive jako Metastore:

  • Domyślnie Hive zawiera bazę danych derby jako metastore.
  • Baza danych Derby może jednocześnie obsługiwać tylko jednego aktywnego użytkownika
  • Derby nie jest zalecane w środowisku produkcyjnym

Więc rozwiązanie tutaj jest

  • Użyj MYSQL jako meta-magazynu w zapleczu, aby połączyć wielu użytkowników z Hive jednocześnie
  • MYSQL jest najlepszym wyborem dla samodzielnego metamagazynu

Jak zainstalować i skonfigurować Hive Metastore w MySQL Baza danych

Krok 1) Zainstalować MySQL
Na tym etapie wykonamy dwa zadania

  1. Instalacja serwera MySQL
  2. Sprawdzanie serwera MySQL i jego procesów
  1. Korzystanie z polecenie sudo apt-get install mysql-server, możemy pobrać serwer mysql

Zainstalować MySQL jak pokazano na zrzucie ekranu

Zainstaluj i skonfiguruj Hive Metastore w MySQL Baza danych

  1. Po pomyślnym zakończeniu instalacji, MySQL będzie działać, jak pokazano na poniższym zrzucie ekranu

Zainstaluj i skonfiguruj Hive Metastore w MySQL Baza danych

Krok 2) Zainstalować MySQL Java Złącze
Instalacja MySQL Java Złącze. Ma to na celu zależności Java i cel połączenia

Zainstaluj i skonfiguruj Hive Metastore w MySQL Baza danych

Krok 3) Utwórz miękkie łącze dla łącznika
Tworzenie miękkiego linku do łącznika w katalogu lib Hive. To jest dla miękkiego połączenia pomiędzy Java i MySQL.

Zainstaluj i skonfiguruj Hive Metastore w MySQL Baza danych

Krok 4) Konfigurowanie magazynu MySql w Hive

Zainstaluj i skonfiguruj Hive Metastore w MySQL Baza danych

  • Wpisz MySql –u root –p, a następnie hasło
  • Tutaj –u oznacza nazwę użytkownika root, p oznacza hasło
  • Po wpisaniu powyższego polecenia użytkownik musi podać prawidłowe hasło i kliknąć Enter
  • Następnie przejdzie do trybu powłoki MySql

Krok 5) Utwórz nazwę użytkownika i hasło
Tworzenie nazwy użytkownika i hasła dla MySql, udzielanie uprawnień.

Zainstaluj i skonfiguruj Hive Metastore w MySQL Baza danych

Musimy wykonać polecenia, jak pokazano poniżej,

mysql> CREATE USER 'hiveuser'@'%' IDENTIFIED BY 'hivepassword'; 
mysql> GRANT all on *.* to 'hiveuser'@localhost identified by 'hivepassword';
mysql>  flush privileges;

Krok 6) Konfigurowanie pliku Hive-site.xml

  • Po kroku 5 przypisz nazwę użytkownika i hasło do MySQL bazę danych i nadane uprawnienia.
  • Tutaj skonfigurujemy niektóre właściwości w Hive, z którymi można uzyskać połączenie MySQL Baza danych.

Zainstaluj i skonfiguruj Hive Metastore w MySQL Baza danych

Zainstaluj i skonfiguruj Hive Metastore w MySQL Baza danych

Na powyższym zrzucie ekranu widzimy, co następuje. Tutaj definiujemy 4 właściwości, które mogą być konieczne do ustanowienia MYSQL jako magazynu Meta w Ul

Są to:

  1. Ta właściwość służy do celów adresu URL połączenia. Tutaj definiujemy ConnectionURL w tej właściwości. Działa jako połączenie JDBC i reprezentuje także lokalizację magazynu metadanych
  2. Ta właściwość jest dla nazwy sterownika połączenia. Tutaj mysql.jdbc.Driver jest szanowaną wartością, którą musimy podać w tagu wartości
  3. Ta właściwość służy do definiowania nazwy użytkownika połączenia. W tym przypadku zdefiniowaliśmy „hiveguru” jako nazwę użytkownika
  4. Ta właściwość używana do wspominania o haśle połączenia. W tym przypadku zdefiniowaliśmy hasło jako hasło użytkownika.

Po umieszczeniu właściwości w pliku hive –site.xml musimy ręcznie zapisać plik (Ctrl+S) i zamknąć go. Po zamknięciu pliku musimy utworzyć tabelę Hive i sprawdzić szczegóły tabeli w MySQL przechowywanie.

Umieść ten kod w pliku 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) Utwórz tabelę
Utwórz tabelę „guru99” w Hive.

Zainstaluj i skonfiguruj Hive Metastore w MySQL Baza danych

Na powyższym zrzucie ekranu możemy zaobserwować następujące rzeczy

  • Utworzenie tabeli o nazwie „guru99” z dwiema nazwami kolumn
  • Nazwy kolumn wymienione są z typem danych, ponieważ jeden jest liczbą całkowitą, a drugi jest typem ciągu

W następnym kroku sprawdzimy, czy jest on zapisany w MySql, czy nie

Krok 8) Wejdź do trybu powłoki MySql

Zainstaluj i skonfiguruj Hive Metastore w MySQL Baza danych

Na powyższym zrzucie ekranu możemy zaobserwować następujące rzeczy

  • Najpierw musimy użyć bazy danych jako „użyj metastore”
  • Po wybraniu metastore możemy sprawdzić znajdujące się w nim tabele, używając polecenia „pokaż” tabele, jak pokazano na zrzucie ekranu
  • Niezależnie od tabel utworzonych w programie Hive metadane odpowiadają tabelom przechowywanym w ramach TBLS MySQL Baza danych.
  • W Hive tworzona jest „tabela Guur99”, w której przechowywane są odpowiednie metadane MySQL w ramach TBL.

Krok 9) Wprowadź wybierz * z TBLS
Sprawdzanie, czy utworzona tabela jest prezentowana MySQL albo nie

Zainstaluj i skonfiguruj Hive Metastore w MySQL Baza danych

Wpisując wybierz * z TBLS, wyświetli tabele, które utworzyliśmy w trybie powłoki Hive

Na powyższym zrzucie ekranu możemy zaobserwować następujące rzeczy:

  • Nazwa tabeli „guru99”, która została utworzona w Hive, może być wyświetlana w MySQL tryb powłoki
  • Oprócz tego dostarczy również informacji, takich jak czas utworzenia tabeli, czas dostępu i inne właściwości, jak pokazano na zrzucie ekranu powyżej.