Hive安装与简单使用并集成SparkSQL

## Hive环境搭建
1. hive下载:http://archive-primary.cloudera.com/cdh5/cdh/5/hive-1.1.0-cdh5.7.0.tar.gz
wget http://archive-primary.cloudera.com/cdh5/cdh/5/hive-1.1.0-cdh5.7.0.tar.gz

2. 解压
tar -zxvf hive-1.1.0-cdh5.7.0.tar.gz -C ../apps/

3. 系统环境变量(vim ~/.bash_profile)
```
export HIVE_HOME=/root/apps/hive-1.1.0-cdh5.7.0
export PATH=$HIVE_HOME/bin:$PATH
source ~/.bash_profile
```

4. 配置

```
4.1 $HIVE_HOME/conf/hive-env.sh 中导出Hadoop_Home
4.2 拷贝mysql 驱动架包到$HIVE_HOME/lib
```

4.3 vim hive-site.xml

```
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://spark003:3306/hive?createDatabaseIfNotExist=true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456</value>
</property>
</configuration>
```

5. 启动Hive: $HIVE_HOME/bin/hive

## Hive的基本使用
创建表

> create table test_table(name string);

加载本地数据到hive表【local方式】

> load data local inpath ‘/home/hadoop/data/hello.txt‘ into table test_table;

查询,统计,词频的个数:
select * from test_table;

> select word, count(1) from test_table lateral view explode(split(name),‘\t‘) wc as word group by word;

### 小案例
create table emp(
empno int,
ename string,
job string,
mgr int,
sal double,
comm double,
deptno int
)row format delimited fields terminated by ‘\t‘;

create table dept(
deptno int,
dname string,
location string
)row format delimited fields terminated by ‘\t‘;

load data local inpath ‘/home/hadoop/data/emp.txt‘ into table emp;
load data local inpath ‘/home/hadoop/data/dept.txt‘ into table dept;

统计分析:
求每个部门的人数:
select deptno,count(1) from emp group by deptno;

## Spark SQL 与Hive集成(spark-shell)

1. 将hive的配置文件hive-site.xml拷贝到spark conf目录,同时添加metastore的url配置。

```
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>hive.metastore.uris</name>
<value>thrift://spark001:9083</value>
</property>
</configuration>
```
2. mysql jar包到 spark 的 lib 目录下

```
[[email protected] lib]# pwd
/root/apps/spark-2.2.0-bin-2.6.0-cdh5.7.0/lib
[[email protected] lib]# ll
total 972
-rw-r--r--. 1 root root 992805 Oct 23 23:59 mysql-connector-java-5.1.41.jar

```

3. 修改spark-env.sh 文件中的配置

操作: vim spark-env.sh,添加如下内容:

```
export JAVA_HOME=/root/apps/jdk1.8.0_144
export SPARK_HOME=/root/apps/spark-2.2.0-bin-2.6.0-cdh5.7.0
export SCALA_HOME=/root/apps/scala-2.11.8
#新添加下面的这一条
export HADOOP_CONF_DIR=/root/apps/spark-2.2.0-bin-2.6.0-cdh5.7.0/etc/hadoop
```
4. 启动服务
启动hadoop start-all.sh
启动saprk start-all.sh
启动mysql元数据库 service mysqld restart
启动hive metastore服务 hive --service metastore
启动hive命令行 hive
启动spark-shell命令行 spark-shell

5. 简单测试
创建本地文件 test.csv,内容如下:
0001,spark
0002,hive
0003,hbase
0004,hadoop
> 执行hive命令:

hive> show databases;
hive> create database databases1;
hive> create table if not exists test(userid string,username string)ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘ ‘ STORED AS textfile;
hive> load data local inpath "/root/test.csv" into table test;
hive>select * from test;

> 执行Spark-shell命令:

spark.sql("select * from databases1.test").show

原文地址:https://www.cnblogs.com/liuge36/p/9881764.html

时间: 2024-10-10 17:54:24

Hive安装与简单使用并集成SparkSQL的相关文章

HIve体系结构,hive的安装和mysql的安装,以及hive的一些简单使用

Hive体系结构: 是建立在hadoop之上的数据仓库基础架构. 和数据库相似,只不过数据库侧重于一些事务性的一些操作,比如修改,删除,查询,在数据库这块发生的比较多.数据仓库主要侧重于查询.对于相同的数据量在数据库中查询就比较慢一些,在数据仓库中查询的效率就比较快. 数据仓库是面向于查询的,并且处理的数据量要远远高于数据库处理的数据量. 传统的数据仓库产品,依然有数据存储的瓶颈,那么在这个瓶颈下查询的速度慢了,那么就不适用了,我们的hadoop是处理海量数据的,所以我们可以在上面建立数据仓库.

Hive安装与部署集成mysql

前提条件: 1.一台配置好hadoop环境的虚拟机.hadoop环境搭建教程:稍后补充 2.存在hadoop账户.不存在的可以新建hadoop账户安装配置hadoop. 安装教程: 一.Mysql安装 1.安装mysql命令:Yum install mysql-server -y (-y参数作用为所有需要输入yes的地方默认yes) 2.打开mysql服务:Service mysqld start 3.设置mysql服务开机自启动(也可以不设置,开机手动启动):chkconfig –add my

基于MySQL元数据的Hive的安装和简单测试

引言: Hive是一种强大的数据仓库查询语言,类似SQL,本文将介绍如何搭建Hive的开发测试环境. 1. 什么是Hive? hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行. 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析. 2.  按照Hive的准备条件 2.1  Hadoop集

hive的安装与简单使用

hive安装 hive镜像: http://mirror.bit.edu.cn/apache/hive/ https://mirrors.tuna.tsinghua.edu.cn/apache/hive/ 1.解压.添加环境变量 把apache-hive-2.3.6-bin.tar.gz上传到linux的/opt/目录下,并解压. [[email protected] opt]# tar -zxvf ./ apache-hive-2.3.6-bin.tar.gz    #解压文件到当前/opt目

大数据(MapReduce的编程细节及其Hive的安装,简单操作)

大数据课程第五天 MapReduce编程细节分析 MapReduce中,Reduce可以没有 (纯数据的清洗,不用Reduce)  job.setNumReduceTasks(0); 设置多个Reduce // 默认在MapReduce中 Reduce的数量是1 job.setNumReduceTasks(3);?//为什么Reduce的数量可以设置为多个内存角度  并行角度 ?//如果Reduce数量多个话,那么生成结果也是多个独立的文件,放置在同一个目录下 Partition 分区 分区的作

hive安装配置+与hbase整合

一.hive介绍hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行. 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析. 二.安装hive安装前提是hadoop集群已经安装好,并且采用cdh的yum源,hadoop.hdfs.hbase等已经就绪. yum -y install hive

第1节 hive安装:2、3、4、5、

第1节 hive安装: 2.数据仓库的基本概念: 3.hive的基本介绍: 4.hive的基本架构以及与hadoop的关系以及RDBMS的对比等 5.hive的安装之(使用mysql作为元数据信息存储) 课程内容:hive1.数据仓库的基本概念 了解2.hive基本概念 hive的安装部署 搞定3.hive的基本操作 建库建表操作 掌握 搞定 hive的基本语法 掌握 搞定 4.hive的shell参数 了解5.hive的函数 内置函数 了解 自定义函数 自定义udf函数 搞定 6.hive的数

hive安装部署

QQ交流群:335671559 环境准备 Linux系统 hadoop安装完成,正常运行,hadoop版本为1.x或者2.x都可以 hive安装包 1.Hive安装 Hive的安装配置还是比较简单得. 首先,到Apache下载Hive,本次安装使用的Hive版本为hive-0.13.0. 其次,下载完成后,将hive解压到想要安装的目录下. tar -zxf  hive-0.13.0.tar.gz  -C  [安装路径] 解压缩完成后,配置Hive环境变量,在终端执行修改PATH.或者直接修改/

Hive安装与使用

Hive是用类似sql语句的形式去操作存储在HDFS上文件的一个客户端,功能上是一个数据仓库,需要配合一个关系型数据库使用,hive自带了一个关系型数据库derby,但是官方不推荐使用,这里我们使用Mysql.关系型数据库的作用是将HDFS上的数据结构化,将结构和数据映射对应起来. mysql用于存储映射关系,HDFS用来存储数据 一.安装mysql 略 二.Hive安装 1) 解压Hive tar -zxvf apache-hive-1.0.1-bin.tar.gz 2) 生成hive-sit