Wie installiere ich den Hive-Client "Beeline"?

9

Wie kann ich den Hive-Client installieren, beelineohne das gesamte Hive / Hadoop-Ökosystem auf meinem Laptop installieren zu müssen?

Ich möchte es verwenden, um eine entfernte Hive-Datenbank abzufragen.

Lucaceron
quelle
Darf ich fragen, wo Sie Beeline herunterladen?
AB
@StefanoPalazzo Das Wiki führt Sie nicht wirklich durch die Installation des Clients. Wo kann ich es herunterladen und wie installiere ich es?
Lucaceron
1
Das ist die Frage. Ich möchte es auch wissen. :-)
Stefano Palazzo
@AB es sieht so aus, als müssten Sie den gesamten Bienenstock herunterladen, um Zugriff auf beeline zu erhalten, z. B. Mirrorservice.org/sites/ftp.apache.org/hive/hive-2.1.0/…
Chris Snow

Antworten:

2

Es ist nicht erforderlich, beeline / hive zu installieren. Sie müssen lediglich die entsprechenden Gläser von Ihrem System sammeln, kopieren und in einem einzigen Ordner ablegen.

Angenommen, wir haben ein Quellsystem, in dem Sie eine Linie haben, und ein Zielsystem, in dem Sie eine Linie ausführen möchten.

Sammeln Sie auf dem Quellsystem die entsprechenden Gläser in einem Ordner. Der beste Weg, um die genauen Gläser zu identifizieren, ist die Verwendung der Option jvm:-verbose:class

Das heißt, Sie sollten in der Lage sein, einen javaBefehl auszugeben, der einen typischen Beeline-Befehlsaufruf auf dem Quellsystem repliziert.

Kopieren Sie diese Dateien dann in einen Ordner auf dem Zielsystem. cdin diesen Ordner, um die -classpathReferenz später einfach zu machen .

Ich benutze eine HDP 2.5 Hortonworks Distribution. Für mich funktioniert der folgende Aufruf auf dem Zielsystem: java -Xmx1024m -classpath apache-log4j-extras-1.2.17.jar:avatica-1.8.0.2.5.0.0-1245.jar:calcite-core-1.2.0.2.5.0.0-1245.jar:calcite-linq4j-1.2.0.2.5.0.0-1245.jar:commons-cli-1.2.jar:commons-codec-1.4.jar:commons-collections-3.2.2.jar:commons-configuration-1.6.jar:commons-lang-2.6.jar:commons-logging-1.1.3.jar:curator-client-2.6.0.jar:curator-framework-2.6.0.jar:derby-10.10.2.0.jar:guava-14.0.1.jar:hadoop-annotations-2.7.3.2.5.0.0-1245.jar:hadoop-auth-2.7.3.2.5.0.0-1245.jar:hadoop-common-2.7.3.2.5.0.0-1245.jar:hadoop-mapreduce-client-core-2.7.3.2.5.0.0-1245.jar:hive-beeline-1.2.1000.2.5.0.0-1245.jar:hive-exec-1.2.1000.2.5.0.0-1245.jar:hive-jdbc-1.2.1000.2.5.0.0-1245.jar:hive-jdbc-1.2.1000.2.5.0.0-1245-standalone.jar:jce.jar:jline-2.12.jar:jsse.jar:log4j-1.2.16.jar:rt.jar:slf4j-log4j12-1.7.10.jar:sunec.jar:sunjce_provider.jar:super-csv-2.2.0.jar:xercesImpl-2.9.1.jar -Dhdp.version=2.5.0.0-1245 -Djava.net.preferIPv4Stack=true -Dhdp.version=2.5.0.0-1245 -Dhadoop.log.dir=/home/userid -Dhadoop.log.file=hadoop.log -Dhadoop.home.dir=/home/userid -Dhadoop.id.str=userid -Dhadoop.root.logger=INFO,console -Djava.library.path=:/home/userid -Dhadoop.policy.file=hadoop-policy.xml -Djava.net.preferIPv4Stack=true -Djava.util.logging.config.file=/home/userid/parquet-logging.properties -Dlog4j.configuration=beeline-log4j.properties -Dhadoop.security.logger=INFO,NullAppender org.apache.hadoop.util.RunJar /home/userid/hive-beeline-1.2.1000.2.5.0.0-1245.jar org.apache.hive.beeline.BeeLine -n userid -p pass -u "jdbc:hive2://knox.company.com:8000/;ssl=true;transportMode=http;httpPath=gateway/tdcprd/hive"

Einige der Parameter sind wahrscheinlich nicht erforderlich, aber ich habe sie beibehalten, da dies auf dem Quellsystem der Fall ist. Sie sollten den Java-Aufruf des Quellsystems als Referenzmuster verwenden.

user55570
quelle