在配置Hive环境之前,需要Hadoop环境

安装Hive

点击下载

下载结束后,会有一个.tar文件,使用以下命令解压该文件。

tar -zxvf 要解压的tar包

解压完成后如下

修改Hive配置文件

  • 在hive安装目录下的conf中,将所有后缀为.template的文件复制一遍,新文件名称只需要去掉.template即可,如下
cp hive-default.xml.template hive-default.xml
  • 编辑hive-site.xml文件
vim hive-site.xml

修改内容如下

需要在本地mysql新建一个数据库,命名为hive。

<configuration>

  <property>
<name>hive.metastore.local</name>
<value>true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:MySQL://127.0.0.1:3306/hive?characterEncoding=UTF-8</value>
</property> <property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
  <!--mysql用户名-->
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
  <!--mysql密码-->
  <property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123qwe</value>
</property> <!-- hive用来存储不同阶段的map/reduce的执行计划的目录,同时也存储中间输出结果,默认是/tmp/<user.name>/hive,我们实际一般会按组区分,然后组内自建一个tmp目录存储 -->
<property>
<name>hive.exec.scratchdir</name>
<value>/tmp/hive</value>
</property> <property>
<name>hive.exec.local.scratchdir</name>
<value>/Users/FengZhen/Desktop/Hadoop/hive/tmp</value>
</property> <property>
<name>hive.downloaded.resources.dir</name>
<value>/Users/FengZhen/Desktop/Hadoop/hive/resources</value>
</property> <property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
</property> </configuration>

配置信息如上

其中 hive.metastore.warehouse.dir 是在HDFS上的路径,当Hive在本地文件系统中往表中导入数据的时候,如果建表时不指定location,那么Hive会将该数据文件先拷贝到HDFS的 /user/hive/warehouse 路径下,然后再执行导入操作。每建一个表都会在hive.metastore.warehouse.dir指向的目录下以表名创建一个文件夹,所有属于这个表的数据都存在这个文件夹中。

配置环境变量

vim ~/.bash_profile

在.bash_profile中加入

export HIVE_HOME=/Users/FengZhen/Desktop/Hadoop/hive/apache-hive-1.2.-bin
export PATH=$PATH:$HIVE_HOME/bin

加入完成后使用 source 命令重新执行一下该文件

source ~/.bash_profile

至此,Hive环境配置已经结束,进入安装目录下的bin文件夹内,启动hive

./hive

hive操作语句和mysql差不多

建表(指定列分隔符为逗号)

create table fz(id int,name string,age int,tel string)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS TEXTFILE;

导入数据

load data local inpath '/Users/FengZhen/Desktop/Hadoop/hive/testfile/fz.txt' into table fz;

fz.txt中内容如下

,fz,,
,test,,
,dx,,

查询数据

select * from fz;

hive的环境配置结束。

Mac下配置Hive环境的更多相关文章

  1. Mac下配置Maven环境变量

    Mac下配置Maven环境变量 1.先到Apache官网下载maven压缩包.下载地址:http://maven.apache.org/download.cgi 2.Maven是用Java开发的,所以 ...

  2. mac下配置开发环境

    常用命令 显示隐藏文件 1 defaults write com.apple.finder AppleShowAllFiles -boolean true ; killall Finder 关闭隐藏文 ...

  3. Mac 下配置 adb 环境

    使用 adb 命令可以很直接的观察你的应用 第一步 打开终端,敲入命令:sudo vi .bash_profile(如果有密码就为本机登录密码, 如果没有这个文件就会创建一个新的). 第二步 在文件中 ...

  4. Mac下配置git环境和客户端SourceTree+Git常用命令大全(Mac 10.12)

    前言: 如果不想折腾,直接下载GitHub桌面端,高度集成git,不需要学习git的任何命令. https://desktop.github.com/ 一.配置git环境 1.上官网https://g ...

  5. Mac下配置Hadoop环境

    下载Hadoop(我下载的是2.8.0版本) 点击此处下载 下载后,使用 tar -zxvf tar包名 解压tar包,解压完成后有这样一个文件出现 修改Hadoop的配置文件 需要修改的配置文件在H ...

  6. mac下配置android环境变量

    下面我将一下mac环境下的配置步骤: 1.在本地目录(home directory)中创建文件.bash_profile2.在文件中写入以下内容:export PATH=${PATH}:/Users/ ...

  7. JavaWeb学习笔记(一)Mac 下配置Tomcat环境

     最近,想鼓捣与服务器端的交互,只能自己搭建环境了. 上个周一鼓捣了一点,周五再鼓捣,发现忘得已经差不多了.好记性不如烂笔头,还是记录下来比较好. 首先,去Tomcat的官网,下载Mac版的Tomca ...

  8. 在Mac下配置Maven环境

    下载Maven安装文件,(http://maven.apache.org/download.html)如:apache-maven-3.5.0-bin.zip,然后解压到本地目录. 打开 .bash_ ...

  9. 在mac下配置Andriod环境 包括eclipse和andriod studio

    1 前提 已经配置好了java的环境,课上要使用andriod开发. 2 步骤 2.1 eclipse 2.1.1先安装adt,adt是一个在eclipse中开发andriod的插件.由于墙,我是从其 ...

随机推荐

  1. java EE ME SE有什么关系

    1. Java SE(Java Platform,Standard Edition).Java SE 以前称为 J2SE.它允许开发和部署在桌面.服务器.嵌入式环境和实时环境中使用的 Java 应用程 ...

  2. 【BZOJ4285】使者 cdq分治+扫描线+树状数组

    [BZOJ4285]使者 Description 公元 8192 年,人类进入星际大航海时代.在不懈的努力之下,人类占领了宇宙中的 n 个行星,并在这些行星之间修建了 n - 1 条星际航道,使得任意 ...

  3. 【BZOJ5082】弗拉格 矩阵乘法

    [BZOJ5082]弗拉格 Description “如果明天进了面试,我就去爆妹子的照”——有妹子的丁相允作为一个oier,自然不能立太多flag,让我们来看一道和flag有关的题目吧 给你n个fl ...

  4. Unity3D笔记七 GUILayout

    一.说到GUILayout就要提到GUI,二者的区别是什么 GUILayout是游戏界面的布局.GUI(界面)和GUILayout(界面布局)功能上面是相似的从命名中就可以看到这两个东西非常相像,但是 ...

  5. Xshell配置ssh免密码登录-密钥公钥(Public key)

    1 简介 ssh登录提供两种认证方式:口令(密码)认证方式和密钥认证方式.其中口令(密码)认证方式是我们最常用的一种,这里介绍密钥认证方式登录到linux/unix的方法. 使用密钥登录分为3步: 1 ...

  6. AE导出mov

    最近安装了AE发现没法导出MOV格式的: 感觉应该是没有安装支持MOV的播放器之类的原因造成的:果断去下载一个quicktime 安装好之后重启发现真的有 mov 格式了

  7. jquery 实现点击按钮后出现倒计时效果(用于实现发送手机验证码、邮箱验证码)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. linux内核cdev_init系列函数(字符设备的注册)

    内核中每个字符设备都对应一个 cdev 结构的变量,下面是它的定义: linux-2.6.22/include/linux/cdev.h struct cdev {    struct kobject ...

  9. spring boot web服务

    [root@d java]# tree -I target .├── pom.xml└── src ├── main │   ├── java │   │   └── com │   │   └── ...

  10. php array_merge和运算符+

    其实很多时候我都很疑惑为什么同维度的数组不能直接使用运算+直接进行相加,然后结果就是两个数组合并的在一起的新结果,这个就有点跟array_merge合并函数类似了,接下来就来看下这两种合并的方式到底有 ...