Video: hive introduction | hive architecture | hql introduction | hive clients | hive advantages 2024
De eerste Hive-client is de Hive-opdrachtregelinterface (CLI). Om de fijnere punten van de Hive CLI-client onder de knie te krijgen, kan het helpen om de (enigszins druk ogende) Hive-architectuur te herzien.
In de tweede figuur is de architectuur gestroomlijnd om zich alleen te richten op de componenten die vereist zijn bij het uitvoeren van de CLI.
Dit zijn de componenten van Hive die nodig zijn bij het uitvoeren van de CLI op een Hadoop-cluster. Hier voert u Hive uit in de lokale modus, die voor uw gegevens lokale opslag gebruikt in plaats van de HDFS.
Om de Hive CLI uit te voeren, voert u de component hive uit en geeft u de CLI op als de service die u wilt uitvoeren. In de volgende lijst ziet u de vereiste opdracht en enkele van onze eerste HiveQL-instructies. (Een stappenannotatie met behulp van het A-B-C-model is opgenomen in de lijst om uw aandacht te vestigen op de toetsopdrachten.)
(A) $ $ HIVE_HOME / bin component - service cli (B) component> stel component in. cli. afdrukken. actueel. db = true; (C) component (standaard)> CREATE DATABASE onze eerste databasis; OK Genomen: 3.756 seconden (D) component (standaard)> GEBRUIK onze eerste database; OK Gemaakte tijd: 0. 039 seconden (E) component (ourfirstdatabase)> CREATE TABLE our_first_table (> Voornaam STRING,> LastName STRING,> EmployeeId INT); OK Genomen: 0. 043 seconden kast (onze eerste databasis)> stop; (F) $ ls / home / biadmin / Hive / warehouse / onzefirstdatabase. db our_first_table
De eerste opdracht (zie stap A) start de Hive CLI met behulp van de $ HIVE_HOME-omgevingsvariabele. De cli-opdrachtregeloptie -service stuurt het systeem Hive om de opdrachtregelinterface te starten, hoewel u andere servers had kunnen kiezen.
Vervolgens, in stap B, vertelt u de Hive CLI om uw huidige werkdatabase af te drukken, zodat u weet waar u zich in de naamruimte bevindt. (Deze verklaring is logisch nadat we hebben uitgelegd hoe je de volgende opdracht kunt gebruiken, dus houd deze vast.)
In stap C gebruik je de gegevensdefinitietaal (DDL) van HiveQL om je eerste database te maken. (Houd er rekening mee dat databases in Hive eenvoudigweg naamruimten zijn waar bepaalde tabellen zich bevinden, omdat een set tabellen kan worden beschouwd als een database of schema, u zou de term SCHEMA in plaats van DATABASE hebben kunnen gebruiken om hetzelfde resultaat te bereiken.).
Meer specifiek, u gebruikt DDL om het systeem te laten weten dat het een database moet maken met de naam ourfirstdatabase en om deze database de standaard te maken voor daaropvolgende HiveQL DDL-opdrachten met de USE-opdracht in stap D. In stap E maakt u uw eerste database tabel en geef het de (heel toepasselijke) naam our_first_table.
(Tot nu toe was je misschien van mening dat het veel op SQL lijkt, met misschien een paar kleine verschillen in syntaxis, afhankelijk van welke RDBMS je gewend bent - en je zou gelijk hebben gehad.) Het laatste commando, in Stap F voert een directorylijst uit van de door u gekozen Hive-magazijndirectory, zodat u kunt zien dat our_first_table in feite op schijf is opgeslagen.
Jij zet de korf. Metastore. magazijn. dir variabele om naar de lokale map / home / biadmin / Hive / warehouse in je Linux virtuele machine te verwijzen in plaats van de HDFS te gebruiken zoals je zou doen op een goede Hadoop-cluster.
Nadat u een tabel hebt gemaakt, is het interessant om de metagegevens van de tabel te bekijken. In productieomgevingen hebt u mogelijk tientallen tabellen of meer, dus het is handig om de tabelstructuur van tijd tot tijd te kunnen bekijken. U c een gebruikt hiervoor een HiveQL-opdracht met behulp van de Hive CLI, maar de Hive Web Interface (HWI) -server biedt een handige interface voor dit type bewerking.
Het gebruik van de HWI-server in plaats van de CLI kan ook veiliger zijn. Bij gebruik van de CLI in productieomgevingen moet zorgvuldig worden overwogen, omdat de machine waarop de CLI wordt uitgevoerd toegang moet hebben tot het volledige Hadoop-cluster.
Daarom voeren systeembeheerders typisch tools in zoals de beveiligde shell (ssh) om gecontroleerde en veilige toegang te bieden tot de machine waarop de CLI wordt uitgevoerd en om netwerkcodering te bieden. Wanneer de HWI-server wordt gebruikt, heeft een gebruiker alleen toegang tot Hive-gegevens die door de HWI-server zijn toegestaan via zijn of haar webbrowser.