Как узнать версии Hive и Hadoop из командной строки?
как я могу найти, какую версию улья я использую из командной строки. Ниже приведены подробности -
Я использую Putty для подключения к таблице hive и доступа к записям в таблицах. Итак, что я сделал - я открыл Putty и в имени хоста я набрал -leo-ingesting.vip.name.com
и затем я нажимаю Open
. А затем я ввел свое имя пользователя и пароль, а затем несколько команд, чтобы добраться до Hive sql. Ниже приведен список того, что я сделал
$ bash
bash-3.00$ hive
Hive history file=/tmp/rkost/hive_job_log_rkost_201207010451_1212680168.txt
hive> set mapred.job.queue.name=hdmi-technology;
hive> select * from table LIMIT 1;
Итак, есть ли способ из командной строки можно найти версия hive, которую я использую, и версия Hadoop тоже?
24 ответа:
вы не можете получить версию улья из командной строки.
вы можете проверить версию hadoop, как упоминалось Дэйвом.
кроме того, если вы используете распределение cloudera, то посмотрите непосредственно на libs:
ЛС /УСР/Либ/куст/lib/ и проверяем для Hive библиотека
hive-hwi-0.7.1-cdh3u3.jar
вы также можете проверить совместимые версии здесь:
$ hive --version Hive version 0.8.1.3
EDIT: добавлена еще одна ' - ' перед версией. Не работает для более новых версий. Надеюсь, теперь это работает для всех.
известно, что работает в следующих дистрибутивах:
- распределение HortonWorks:
$ hive --version Hive 0.14.0.2.2.0.0-2041
- CDH 5.3
не работает:
- CDH 4.3
- HDinsight (Azure)
$ hadoop version Hadoop 0.20.2-cdh3u4
Не уверен, что вы можете получить версию улья из командной строки, хотя. Может быть, вы могли бы использовать что-то вроде
hive.hwi.war.file
свойство или вытащить его из пути к классам, хотя.
из системы установки Hive shell issue'.солнце.Ява.команда' Улей-кли.версия jar-это версия улья.
hive> set system:sun.java.command; system:sun.java.command=org.apache.hadoop.util.RunJar /opt/cloudera/parcels/CDH-4.2.2-1.cdh4.2.2.p0.10/bin/../lib/hive/lib/hive-cli-0.10.0-cdh4.2.2.jar org.apache.hadoop.hive.cli.CliDriver hive>
мы можем найти версию улья по
- в оболочке linux: "hive -- version"
- на оболочке улья:"! улей-версия;"
выше cmds работает на улье 0.13 и выше.
настройка системы:Солнце.Ява.команда;
дает версию улья из редактора Hue hive он дает имя jar, которое включает версию.
ниже работает на Hadoop 2.7.2
hive --version hadoop version pig --version sqoop version oozie version
мы также можем получить версию, посмотрев на версию файла jar hive-metastore.
например:
$ ls /usr/lib/hive/lib/ | grep metastore hive-metastore-0.13.1.jar
вы можете получить версию улья
hive --version
Если вы хотите узнать версию hive и связанные с ней версии пакетов.
rpm -qa|grep hive
выход будет как ниже.
libarchive2-2.5.5-5.19 hive-0.13.0.2.1.2.2-516 perl-Archive-Zip-1.24-2.7 hive-jdbc-0.13.0.2.1.2.2-516 webhcat-tar-hive-0.13.0.2.1.2.2_516-2 hive-webhcat-0.13.0.2.1.2.2-516 hive-hcatalog-0.13.0.2.1.2.2-516
последний дает лучшее понимание улья и его иждивенцев. Тем не менее rpm должен присутствовать.
если вы используете
beeline
для подключения к улью, затем!dbinfo
даст все основные данные базы данных и в выходных данныхgetDatabaseProductVersion
будет иметь версию базы данных улья.пример вывода:
getDatabaseProductVersion 1.2.1000.2.4.3.0-227
другой способ - сделать вызов REST, если у Вас установлен WebHCat (часть проекта Hive), это
curl -i http://172.22.123.63:50111/templeton/v1/version/hive?user.name=foo
, который вернется с JSON, как
{"модуль":"улей","версия":"1.2.1.2.3.0.0-2458"}
WebHCat docs есть некоторые детали
Да вы можете получить версию вашего улья с помощью "hive command":
hive --service version
вы можете получить список доступных имен служб, используя следующую команду "hive":
hive --service help
вы можете искать файл jar, как только вы входите в улей
jar:file:/opt/mapr/hive/hive-0.12/lib/hive-common-0.12-mapr-1401-140130.jar!/hive-log4j.properties
/usr/bin / hive --версия работала для меня.
[qa@ip-10-241-1-222 ~]$ /usr/bin/hive --version Hive 0.13.1-cdh5.3.1 Subversion file:///data/1/jenkins/workspace/generic-package-rhel64-6-0/topdir/BUILD/hive-0.13.1-cdh5.3.1 -r Unknown Compiled by jenkins on Tue Jan 27 16:38:55 PST 2015 From source with checksum 1bb86e4899928ce29cbcaec8cf43c9b6 [qa@ip-10-241-1-222 ~]$
на HDInsight я попробовал hive -- version, но он не распознал этот параметр или не упомянул его в справке.
D:\Users\admin1>%hive_home%/bin/hive --version Unrecognized option: --version usage: hive -d,--define <key=value> Variable subsitution to apply to hive commands. e.g. -d A=B or --define A=B --database <databasename> Specify the database to use -e <quoted-query-string> SQL from command line -f <filename> SQL from files -H,--help Print help information -h <hostname> connecting to Hive Server on remote host --hiveconf <property=value> Use value for given property --hivevar <key=value> Variable subsitution to apply to hive commands. e.g. --hivevar A=B -i <filename> Initialization SQL file -p <port> connecting to Hive Server on port number -S,--silent Silent mode in interactive shell -v,--verbose Verbose mode (echo executed SQL to the console)
однако, когда вы входите в головной узел и запускаете консоль hive, он выводит некоторую полезную информацию о конфигурации, из которой можно прочитать версию:
D:\Users\admin1>%hive_home%/bin/hive Logging initialized using configuration in file:/C:/apps/dist/hive-0.13.0.2.1.11.0-2316/conf/hive-log4j.properties SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/C:/apps/dist/hadoop-2.4.0.2.1.11.0-2316/share/hadoop/common/lib/slf4j-log4j12-1.7.5.j ar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/C:/apps/dist/hbase-0.98.0.2.1.11.0-2316-hadoop2/lib/slf4j-log4j12-1.6.4.jar!/org/slf4 j/impl/StaticLoggerBinder.class] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory] hive> quit;
из этого я бы сказал, что у меня развернута версия Hive 0.13, которая согласуется с этим списком версий https://hive.apache.org/downloads.html
из вашего SSH-соединения с пограничным узлом вы можете просто ввести
hive --version Hive 1.2.1000.x.x.x.x-xx
Это возвращает версию Hive для вашего дистрибутива Hadoop. Другой подход, если вы входите в
beeline
, вы можете найти версию сразу.beeline Beeline version 1.2.1000.x.x.x.x-xx by Apache Hive
вы можете получить версию из командной строки.
hive> select version(); OK 1.1.0-cdh5.12.0 rUnknown Time taken: 2.815 seconds, Fetched: 1 row(s) hive>
используйте флаг версии из CLI
[hadoop@usernode~]$ hadoop version Hadoop 2.7.3-amzn-1 Subversion git@aws157git.com:/pkg/Aws157BigTop -r d94115f47e58e29d8113a887a1f5c9960c61ab83 Compiled by ec2-user on 2017-01-31T19:18Z Compiled with protoc 2.5.0 From source with checksum 1833aada17b94cfb94ad40ccd02d3df8 This command was run using /usr/lib/hadoop/hadoop-common-2.7.3-amzn-1.jar [hadoop@usernode ~]$ hive --version Hive 1.0.0-amzn-8 Subversion git://ip-10-69-189-31/workspace/workspace/bigtop.release-rpm-4.8.4/build/hive/rpm/BUILD/apache-hive-1.0.0-amzn-8-src -r d94115f47e58e29d8113a887a1f5c9960c61ab83 Compiled by ec2-user on Tue Jan 31 19:51:34 UTC 2017 From source with checksum 298304aab1c4240a868146213f9ce15f
Я смог получить версию установленного Hadoop 3.0.3 с помощью следующей команды
$HADOOP_HOME / bin$ ./версии Hadoop
что дало мне следующий выводHadoop 3.0.3
Репозиторий исходного кодаhttps://yjzhangal@git-wip-us.apache.org/repos/asf/hadoop.git - r 37fd7d752db73d984dc31e0cdfd590d252f5e075
Составлено yzhang на 2018-05-31T17: 12Z
Скомпилирован с протоколом 2.5.0
Из источника с контрольная сумма 736cdcefa911261ad56d2d120bf1fa
Эта команда была выполнена с использованием /usr/local/hadoop/share/hadoop/common / hadoop-common-3.0.3.банку