使用PyHive操作Hive

使用PyHive操作Hive

1.环境:Cloudera

cloudera是一个hadoop的发行版,可以省去hadoop, hive等繁琐的安装,部署。

下载地址:https://www.cloudera.com/downloads.html

使用PyHive操作Hive_第1张图片

 

2.Python环境: Anaconda    版本:Python 3.7

Anaconda是一个非常好用的Python环境,特别是安装包的方便,可以不用pip,几乎能想到的包都有。

因为使用的是linux版本的,在官网下载后是一个.sh文件

通过

$ sh Anacouda3-5.3.1-Linux-x86_64.sh

执行安装

3.通过pyhive连接hive需要的Python包:

3.1 pyhive

3.2 thrift

3.3 sasl

共需要三个包

安装完Anaconda后,在终端分别输入

$conda pyhive

$conda thrift

$conda sasl

下载这些包

4.连接Hive

使用jupyter notebook

from pyhive import hive
import pandas as pd
cnn=hive.Connection(host='localhost', port='10000', username='hive')
cursor=cnn.cursor()
cursor.execute("show databases")
data=pd.DataFrame(cursor.fetchall())
print(data.head())

使用PyHive操作Hive_第2张图片

 

这里为了显示方便,导入了pandas库,利用Dataframe去显示返回的数据,因为将数据导入到了pandas里面,所以也可以直接利用查询语句选出数据,导入到pandas进行分析。

注意!如果连接不成功可以在终端输入

$ sudo service hive-server2 start

打开hiveService2借口, pyhive是通过这个接口与hive通讯的

 

你可能感兴趣的:(使用PyHive操作Hive)