Bagaimana cara mengetahui versi Hive dan Hadoop dari command prompt?

89

Bagaimana cara menemukan versi Hive yang saya gunakan dari command prompt. Berikut detailnya-

Saya menggunakan Putty untuk menyambung ke tabel sarang dan mengakses catatan di tabel. Jadi yang saya lakukan adalah- Saya membuka Putty dan di nama host saya mengetik- leo-ingesting.vip.name.comdan kemudian saya klik Open. Dan kemudian saya memasukkan nama pengguna dan kata sandi saya dan kemudian beberapa perintah untuk masuk ke Hive sql. Di bawah ini adalah daftar apa yang saya lakukan

$ 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;

Jadi, apakah ada cara dari command prompt saya dapat menemukan versi sarang mana yang saya gunakan dan versi Hadoop juga?

gudang senjata
sumber
1
Bolehkah saya meminta agar setiap CLI di dunia mulai mendukung -v, --v, -version, dan --version sebagai alias untuk satu sama lain sehingga kita semua dapat melanjutkan hidup kita.
jarmod
Anda tidak bisa: gnu getopt akan mempertimbangkan -version as -v -e -r -s -i -o -n, misalnya. Selain itu, CLI yang tepat menggunakan -v sebagai alias untuk --verbose.
Konstantin Svintsov

Jawaban:

34

Anda tidak bisa mendapatkan versi sarang dari baris perintah.

Anda dapat melakukan checkout versi hadoop seperti yang disebutkan oleh Dave.

Juga jika Anda menggunakan distribusi cloudera, lihat langsung di libs:

ls / usr / lib / hive / lib / dan periksa perpustakaan sarang

hive-hwi-0.7.1-cdh3u3.jar

Anda juga dapat memeriksa versi yang kompatibel di sini:

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

pyfunc
sumber
2
Apakah Anda yakin jalannya /usr/lib/hive/lib/?
arsenal
@RaihanJamal: Ya jika Anda menggunakan distribusi cloudera. :)
pyfunc
1
ya, Anda bisa mendapatkannya dari baris perintah: sarang -e "set hive.hwi.war.file;" | grep hwi | cut -d'- '-f3
David
1
Saya mendapatkan "hive.hwi.war.file tidak terdefinisi"
rajibdotnet
9
sarang --versi menunjukkan versinya. [root@mysupercomputer ~]# hive --version Hive 1.2.1 Subversion git://localhost.localdomain/home/sush/dev/hive.git -r 243e7c1ac39cb7ac8b65c5bc6988f5cc3162f558 Compiled by sush on Fri Jun 19 02:03:48 PDT 2015 From source with checksum ab480aca41b24a9c3751b8c023338231
Sridhar
148
$ hive --version
Hive version 0.8.1.3

EDIT: menambahkan '-' lain sebelum versi. Tidak berfungsi untuk versi yang lebih baru. Semoga berhasil untuk semua sekarang.

Diketahui bekerja di distribusi berikut:

  • Distribusi HortonWorks: $ hive --version Hive 0.14.0.2.2.0.0-2041
  • CDH 5.3

Tidak bekerja:

  • CDH 4.3
  • HDinsight (Azure)
dfrankow.dll
sumber
2
Saya tidak tahu mengapa seseorang tidak menyukai ini, tetapi itu berhasil untuk saya. Mungkin ini khusus untuk Amazon Elastic MapReduce (EMR), atau versi Hive.
dfrankow
1
Saya memiliki cloudera 5.11. Bekerja dengan baik untuk saya
jony70
CDH 5.15, bekerja untuk saya. Peringatan VM Server 64-Bit Java HotSpot (TM): ... Hive 1.1.0-cdh5.15.2 Saya tidak tahu mengapa jawaban ini ada di posisi kedua, bukan posisi pertama
statis atau
37
$ hadoop version
Hadoop 0.20.2-cdh3u4

Tidak yakin Anda bisa mendapatkan versi Hive dari baris perintah. Mungkin Anda bisa menggunakan sesuatu seperti hive.hwi.war.fileproperti atau menariknya dari classpath.

Dave Newton
sumber
Terima kasih Dave, Berhasil. Saya mengajukan pertanyaan ini karena saya mencoba mengakses metadata Hive menggunakan SQL Client. Tapi entah kenapa saya tidak bisa melakukannya. Saya memposting pertanyaan di sini. Bisakah Anda melihat ini http://stackoverflow.com/questions/11278040/access-hive-tables-in-sqlclient-but-not-from-the-putty. Bantuan apa pun akan dihargai.
arsenal
@RaihanJam Saya tidak tahu; Saya belum pernah mencoba menggunakan hal seperti itu dengan Hive.
Dave Newton
14

Ini pasti berhasil:

hive --version
Manas Jani
sumber
14

Anda BISA mendapatkan versi dari baris perintah.

hive> select version();
OK
1.1.0-cdh5.12.0 rUnknown
Time taken: 2.815 seconds, Fetched: 1 row(s)
hive>
Konstantin Svintsov
sumber
13
hive -e "set hive.hwi.war.file;" | cut -d'-' -f3
David
sumber
10

Di bawah ini berfungsi di Hadoop 2.7.2

hive --version

hadoop version

pig --version

sqoop version

oozie version
viru
sumber
9

Gunakan tanda versi dari CLI

[hadoop@usernode~]$ hadoop version
Hadoop 2.7.3-amzn-1
Subversion [email protected]:/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-20-69-181-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
Savio D'Souza
sumber
9

Dari masalah shell sarang 'set system.sun.java.command' Versi hive-cli.jar adalah versi sarang.

<code>
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**-cdh**4.2.2**.jar org.apache.hadoop.hive.cli.CliDriver
hive> 
</code>

Contoh di atas menunjukkan Hive versi 0.10.0 untuk CDH versi 4.2.2

Jai Prakash
sumber
Jai bisakah kau tahu apa fungsinya !!
YouAreAwesome
system.sun.java.command akan disetel oleh sarang dan tidak melakukan apa pun. Ini salah satu cara untuk mengetahui versi sarang.
Jai Prakash
8
hive --version

hadoop version
MysticForce
sumber
7

Kami dapat menemukan versi sarang dengan

  • di shell linux: "hive --version"
  • pada cangkang sarang: "! hive --version;"

cmds di atas bekerja pada sarang 0,13 ke atas.

Setel sistem: sun.java.command;
memberikan versi sarang dari editor hue hive itu memberi nama jar yang menyertakan versinya.

Abhishek
sumber
5

Perintah di bawah ini berfungsi, saya mencoba ini dan mendapatkan versi saat ini sebagai

/usr/bin/hive --version
Navneet Kumar
sumber
Hai Shikhar, versi Hadoop mana yang Anda coba, ini berfungsi untuk saya di cloudera CDH 5
Navneet Kumar
4

Jika Anda menggunakan beelineuntuk menyambung ke sarang, maka !dbinfoakan memberikan semua detail database yang mendasari dan dalam outputgetDatabaseProductVersion akan memiliki versi database sarang.

Output sampel: getDatabaseProductVersion 1.2.1000.2.4.3.0-227

venkata
sumber
3

Jika Anda menggunakan distro hortonworks maka menggunakan CLI Anda bisa mendapatkan versi dengan perintah:

hive --version

Contoh keluaran

Sumeet Singh
sumber
3

untuk mengidentifikasi versi sarang pada penggunaan instans EC2

hive --version
Arun Mohan
sumber
2

Kita juga bisa mendapatkan versinya dengan melihat versi file jar hive-metastore.

Sebagai contoh:

$ ls /usr/lib/hive/lib/ | grep metastore
hive-metastore-0.13.1.jar
Pratik Khadloya
sumber
2

Anda bisa mendapatkan versi Hive

hive --version

jika Anda ingin mengetahui versi sarang dan versi paket terkait.

rpm -qa|grep hive

Outputnya akan seperti di bawah ini.

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

Yang terakhir memberikan pemahaman yang lebih baik tentang sarang dan tanggungannya. Namun demikian, rpm perlu ada.

Balaswamy Vaddeman
sumber
2

Gunakan perintah di bawah ini untuk mendapatkan versi sarang

sarang - versi layanan

Karthik Sridhar
sumber
2

Dari koneksi SSH Anda ke node tepi, Anda cukup mengetik

hive --version

Hive 1.2.1000.x.x.x.x-xx

Tindakan ini mengembalikan versi Hive untuk distribusi Hadoop Anda. Pendekatan lain adalah jika Anda masuk ke dalam beeline, Anda dapat menemukan versinya langsung.

beeline
Beeline version 1.2.1000.x.x.x.x-xx by Apache Hive
Piyush Patel
sumber
1

cara lain adalah dengan membuat panggilan REST, jika Anda telah menginstal WebHCat (bagian dari proyek Hive)

curl -i http://172.22.123.63:50111/templeton/v1/version/hive?user.name=foo

yang akan kembali dengan JSON like

{"modul": "sarang", "versi": "1.2.1.2.3.0.0-2458"}

Dokumen WebHCat memiliki beberapa detail

Eugene
sumber
1

Ya, Anda bisa mendapatkan versi sarang Anda dengan menggunakan "perintah sarang":

hive --service version

Anda bisa mendapatkan daftar nama layanan yang tersedia dengan menggunakan "perintah sarang" berikut:

hive --service help
Seema Pal
sumber
0

Anda dapat mencari file jar segera setelah Anda login ke sarang

jar:file:/opt/mapr/hive/hive-0.12/lib/hive-common-0.12-mapr-1401-140130.jar!/hive-log4j.properties
Shanu
sumber
0

/ usr / bin / hive --version berhasil untuk saya.

[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 ~]$

sumber
0

Di HDInsight saya mencoba sarang --version, tetapi tidak mengenali opsi atau menyebutkannya dalam bantuan.

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)

Namun ketika Anda masuk ke simpul kepala dan memulai konsol sarang, itu mencetak beberapa informasi konfigurasi yang berguna dari mana versi dapat dibaca:

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;

Dari sini saya akan mengatakan saya memiliki Hive versi 0.13 yang diterapkan, yang konsisten dengan daftar versi ini https://hive.apache.org/downloads.html

Mike Wise
sumber
0

Saya bisa mendapatkan versi Hadoop 3.0.3 yang diinstal dengan perintah berikut
$ HADOOP_HOME / bin $ ./hadoop version
yang memberi saya output berikut

Hadoop 3.0.3
Repositori kode sumber https: //[email protected]/repos/asf/hadoop.git -r 37fd7d752db73d984dc31e0cdfd590d252f5e075
Dikompilasi oleh yzhang pada 2018-05-31T17: 12Z
Dikompilasi dengan protoc
Dari sumber dengan checksum 736cdcefa911261ad56d2d120bf1fa
Perintah ini dijalankan menggunakan /usr/local/hadoop/share/hadoop/common/hadoop-common-3.0.3.jar

vishwachandra
sumber