大数据学习-python通过Pyhive连接hive数据库

本文介绍了如何将HBase与Hive进行整合,通过Hive创建外部表映射HBase数据,并实现数据同步更新。同时,讲解了如何使用Hive连接并利用pandas读取Hive中的数据,包括配置hive-site.xml,启动Hive服务,以及使用Python的pyhive和pandas库进行数据查询和读取。
摘要由CSDN通过智能技术生成

1.hbase和hive结合

(1)hbase建表添加数据

#test是表名,name是列族
#hbase可以一个列族里边多个字段
create 'test','name'

#添加数据
put 'test','1','name:t1','1'
put 'test','1','name:t2','2'

#查询
scan 'test'

#查询 get 表名,row-key,列族
get 'test','1','name:t1'


#删除表
disable 'test'
drop 'test'

#查看表信息
desc 'test'

(2)在hive上创建外部表,映射hbase

CREATE EXTERNAL TABLE  test( key string,t1 int,
t2 int)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\u0001'  
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,name:t1,name:t2"
 )
TBLPROPERTIES ("hbase.table.name" = "test", "hbase.mapred.output.outputtable" = "test");

测试,两个平台数据是否相通。且数据同步更新。

2.hive连接和并用pandas读取数据

(1)配置hive-site.xml文件

<property>
        <name>hive.server2.thrift.bind.host</name>
        <value>192.168.99.250</value>
</property>
<property>
        <name>hive.server2.thrift.port</name>
        <value>10000</value>
</property>

(2)启动hive

hive --service metastore &
hiveserver2 &

(3)读取数据

from pyhive import hive
import pandas as pd
conn = hive.Connection(host = IP地址, port = 10000, username = 'hive')
#host主机ip,port:端口号,username:用户名,database:使用的数据库名称


cursor = conn.cursor()
cursor.execute('show databases')


# 打印结果
for result in cursor.fetchall():
     print(result) 

或者pandas读取
sql = 'select * from default.employees'

df = pd.read_sql(sql,conn)
     

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

樱缘之梦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值