Как узнать версии 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 68

24 ответа:

вы не можете получить версию улья из командной строки.

вы можете проверить версию hadoop, как упоминалось Дэйвом.

кроме того, если вы используете распределение cloudera, то посмотрите непосредственно на libs:

ЛС /УСР/Либ/куст/lib/ и проверяем для Hive библиотека

hive-hwi-0.7.1-cdh3u3.jar

вы также можете проверить совместимые версии здесь:

http://www.cloudera.com/content/cloudera/en/documentation/cdh5/v5-1-x/CDH-Version-and-Packaging-Information/CDH-Version-and-Packaging-Information.html

$ 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 -e "set hive.hwi.war.file;" | cut -d'-' -f3

это, безусловно, должно работать:

hive --version

из системы установки 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, которое включает версию.

hive --version

hadoop version

ниже работает на Hadoop 2.7.2

hive --version

hadoop version

pig --version

sqoop version

oozie version

ниже работает команда, я попробовал это и получил текущую версию как

/usr/bin/hive --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

Если вы используете дистрибутив hortonworks, то с помощью CLI вы можете получить версию с помощью команды:

hive --version

Example output

вы можете искать файл 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.банку