大数据技术之Hive入门

这篇博客介绍了Hive的安装配置过程,包括稳定版本的安装、源代码构建以及不同Hadoop版本的编译。接着讲解了运行Hive的各种方式,如Hive CLI、HiveServer2和Beeline。还涵盖了Hive的DDL、DML操作以及SQL查询示例,适合大数据技术初学者入门。
摘要由CSDN通过智能技术生成

安装和配置

您可以通过下载压缩包来安装Hive的稳定版本,也可以下载源代码并从中构建Hive。

运行HiveServer2和Beeline

前提要求

  • Java 1.7
    注意:Hive版本1.2及更高版本需要Java 1.7或更高版本。Hive 0.14至1.1版本也可与Java 1.6一起使用。强烈建议用户开始使用Java 1.8(请参阅HIVE-8607)。
  • Hadoop 2.x(首选),1.x(Hive 2.0.0及更高版本不支持)。
    最高为0.13的Hive版本还支持Hadoop 0.20.x,0.23.x。
  • Hive通常用于生产Linux和Windows环境。 Mac是常用的开发环境。本文档中的说明适用于Linux和Mac。在Windows上的使用步骤略有不同。

安装稳定版本的Hive

首先从一个Apache下载镜像中下载Hive的最新稳定版本(请参阅Hive版本)。

接下来,您需要对压缩包进行解压。这将导致创建一个名为hive-x.y.z的子目录(其中x.y.z是发行版号):

  $ tar -xzvf hive-x.y.z.tar.gz

将环境变量HIVE_HOME设置为Hive的安装目录:

  $ cd hive-x.y.z
  $ export HIVE_HOME={
   {
   pwd}}

最后,将$HIVE_HOME/bin添加到您的PATH中:

  $ export PATH=$HIVE_HOME/bin:$PATH

使用源代码构建Hive

最新的Hive代码放在Hive的Git仓库中的这个地址上面:使用如下命令从Hive的Git仓库中克隆

git clone https://git-wip-us.apache.org/repos/asf/hive.git (the master branch)

所有发行版本均位于名为“ branch-0.#”或“ branch-1.#”或即将推出的“ branch-2.#”的分支中,除了发行版0.8.1是在“branch-0.8-r2”这个分支中。具有其他名称的任何分支都是进行中工作的功能分支。有关详细信息,请参见了解Hive分支

从0.13开始,Hive使用Apache Maven构建。


在master分支上编译Hive

要从master分支构建当前的Hive代码:

  $ git clone https://git-wip-us.apache.org/repos/asf/hive.git
  $ cd hive
  $ mvn clean package -Pdist
  $ cd packaging/target/apache-hive-{
   version}-SNAPSHOT-bin/apache-hive-{
   version}-SNAPSHOT-bin
  $ ls
  LICENSE
  NOTICE
  README.txt
  RELEASE_NOTES.txt
  bin/ (all the shell scripts)
  lib/ (required jar files)
  conf/ (configuration files)
  examples/ (sample input and query files)
  hcatalog / (hcatalog installation)
  scripts / (upgrade scripts for hive-metastore)

这里,上面的{version}指的是当前的Hive版本。

如果使用Maven(mvn)构建Hive源代码,我们将把目录“/packaging/target/apache-hive-{version}-SNAPSHOT-bin/apache-hive-{version}-SNAPSHOT-bin”称为用于页面的其余部分。


在branch-1分支上编译Hive

在branch-1分支中,Hive同时支持Hadoop 1.x和2.x。您将需要通过Maven配置文件指定针对哪个版本的Hadoop。要针对Hadoop 1.x进行构建,请使用hadoop-1进行配置;对于Hadoop 2.x使用hadoop-2进行配置。例如,要针对Hadoop 1.x构建,上述mvn命令如下:

  $ mvn clean package -Phadoop-1,dist

在Hadoop 0.20上编译Hive到0.13之前

在Hive 0.13之前,Hive是使用Apache Ant构建的。要在Hadoop 0.20上构建旧版本的Hive:

  $ svn co http://svn.apache.org/repos/asf/hive/branches/branch-{
   version} hive
  $ cd hive
  $ ant clean package
  $ cd build/dist
  # ls
  LICENSE
  NOTICE
  README.txt
  RELEASE_NOTES.txt
  bin/ (all the shell scripts)
  lib/ (required jar files)
  conf/ (configuration files)
  examples/ (sample input and query files)
  hcatalog / (hcatalog installation)
  scripts / (upgrade scripts for hive-metastore)

如果使用Ant进行编译的话,我们将目录“build/dist”称为。


在Hadoop 0.23上编译Hive到0.13之前

要针对Hadoop 0.23、2.0.0或其他版本在Ant中构建Hive,请使用适当的标志进行构建;以下是一些示例:

  $ ant clean package -Dhadoop.version=0.23.3 -Dhadoop-0.23.version=0.23.3 -Dhadoop.mr.rev=23
  $ ant clean package -Dhadoop.version=2.0.0-alpha -Dhadoop-0.23.version=2.0.0-alpha -Dhadoop.mr.rev=23

运行Hive

运行Hive需要使用到Hadoop,因此:

  • 您必须在环境变量中配置了Hadoop
  • 在Path中配置了export HADOOP_HOME=

此外,必须先使用以下HDFS命令创建/tmp/user/hive/warehouse(aka hive.metastore.warehouse.dir)并将它们设置为chmod g + w,然后才能在Hive中创建表。

  $ $HADOOP_HOME/bin/hadoop fs -mkdir       /tmp
  $ $HADOOP_HOME/bin/hadoop fs -mkdir       /user/hive/warehouse
  $ $HADOOP_HOME/bin/hadoop fs -chmod g+w   /tmp
  $ $HADOOP_HOME/bin/hadoop fs -chmod g+w   /user/hive/warehouse

尽管没有必要,但是您可能会发现设置HIVE_HOME会很有用:

  $ export HIVE_HOME=<hive-install-dir>

运行Hive CLI

要从Shell脚本中使用Hive命令行界面(CLI):

 $ $HIVE_HOME/bin/hive

运行HiveServer2和Beeline

从Hive 2.1开始,我们需要运行以下schematool命令作为初始化步骤。例如,我们可以使用“ derby”作为数据库类型。

  $ $HIVE_HOME/bin/schematool -dbType <db type> -initSchema

HiveServer2(在Hive 0.11中引入)具有自己的CLI,称为Beeline。HiveCLI现在不赞成使用Beeline,因为它缺少HiveServer2的多用户,安全

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值