首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Python连接Hive操作数据库

Python连接Hive操作数据库

作者头像
加米谷大数据
发布于 2018-07-25 09:47:36
发布于 2018-07-25 09:47:36
4.8K0
举报
文章被收录于专栏:加米谷大数据加米谷大数据

前言

客户端连接Hive需要使用HiveServer2。HiveServer2是HiveServer的重写版本,HiveServer不支持多个客户端的并发请求。当前HiveServer2是基于Thrift RPC实现的。它被设计用于为像JDBC、ODBC这样的开发API客户端提供更好的支持。Hive 0.11版本引入的HiveServer2。

Python客户端连接HiveServer2

python中用于连接HiveServer2的客户端有3个:pyhs2,pyhive,impyla。官网的示例采用的是pyhs2,但pyhs2的官网已声明不再提供支持,建议使用impyla和pyhive。

数据库乱码问题

在Python代码

conn = MySQLdb.Connect(host='localhost', user='root', passwd='root', db='python') 中加一个属性: 改为: conn = MySQLdb.Connect(host='localhost', user='root', passwd='root', db='python',charset='utf8') charset是要跟你数据库的编码一样,如果是数据库是gb2312 ,则写charset='gb2312'。

常用的函数

然后,这个连接对象也提供了对事务操作的支持,标准的方法

commit() 提交; rollback() 回滚;

cursor用来执行命令的方法: callproc(self, procname, args):用来执行存储过程,接收的参数为存储过程名和参数列表,返回值为受影响的行数; execute(self, query, args):执行单条sql语句,接收的参数为sql语句本身和使用的参数列表,返回值为受影响的行数; executemany(self, query, args):执行单挑sql语句,但是重复执行参数列表里的参数,返回值为受影响的行数; nextset(self):移动到下一个结果集; cursor用来接收返回值的方法: fetchall(self):接收全部的返回结果行; fetchmany(self, size=None):接收size条返回结果行.如果size的值大于返回的结果行的数量,则会返回cursor.arraysize条数据; fetchone(self):返回一条结果行; scroll(self, value, mode='relative'):移动指针到某一行.如果mode='relative',则表示从当前所在行移动value条,如果 mode='absolute',则表示从结果集的第一行移动value条。

代码示例1


代码示例2

代码示例3

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-05-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 加米谷大数据 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
[python] mysql安装使用
下载地址:http://pypi.python.org/simple/MySQL-python/
py3study
2020/01/08
7800
python 连接 hive
在网上搜索关键字 python hive 的时候可以找到一些解决方案。大部分是这样的,首先把hive 根目录下的$HIVE_HOME/lib/py拷贝到 python 的库中,也就是 site-package 中,或者干脆把新写的 python 代码和拷贝的 py 库放在同一个目录下,然后用这个目录下提供的 thrift 接口调用。示例也是非常简单的。类似这样:
py3study
2020/01/14
2.4K0
Python操作mysql数据库(封装基
1、安装MySQL-python-1.2.3.win-amd64-py2.7.exe,这是操作mysql数据库的python库,有32位和64位之分,看自机器下载
py3study
2020/01/08
1.5K0
python下的MySQLdb使用
http://sourceforge.net/projects/mysql-python/ 下载,在安装是要先安装setuptools,然后在下载文件目录下,修改mysite.cfg,指定本地mysql的mysql-config文件的路径
py3study
2020/01/07
1.7K0
Python 对mysql数据库的操作
callproc(self,procname,args):用来执行存储过程,接收的参数为存储过程名和参数列表,返回值为受影响的行数
py3study
2020/01/13
1.2K0
干货!python与MySQL数据库的交互实战
如果你想要使用python操作MySQL数据库,就必须先要安装pymysql库,这个
朱小五
2020/01/16
2K0
干货!python与MySQL数据库的交互实战
python之MySQLdb库的使用
 在开发的过程中避免不了和数据库的交互,在实际环境中用的最多的Mysql数据库,那python是怎么和Mysql进行交互的呢,python使用一个叫MySQLdb的库来连接MySQL,好的,下面最要从MySQLdb的安装、连接MySQL、执行sql语句、如何取得结果、关闭数据库连接来讲述一下:
py3study
2020/01/03
8860
Python 使用pymysql模块操作数据库
看完了上面的这个操作流程,那么python操作数据库可以用上面模块来操作呢? 目前比较流行的就是pymysql,下面来看看介绍。
Devops海洋的渔夫
2019/06/02
1.1K0
使用python操作mysql
  python可以使用MYSQLdb来操作数据库。   我们先来建数据库,其SQL语句如下: -- http://www.cnblogs.com/Colin-Cai -- 数据库名称为test create database test; use test; -- 生成表t create table t ( a int, b int); -- 插入数据 start transaction; insert into t(a,b) values (1,1000); insert into t(a,b) va
窗户
2018/02/07
8640
python读取hive数据最佳实践
使用pyhive库来连接hive server2提供的对外接口,使用sql语句来对数据进行查询,并处理返回结果。
有福
2018/08/28
2.8K0
python读取hive数据最佳实践
python MySQLdb 常用操作
请注意一定要有conn.commit()这句来提交事务,要不然不能真正的插入数据。
py3study
2020/01/08
9000
python对mysql的操作
 http://sourceforge.net/projects/mysql-python
py3study
2020/01/13
1.7K0
【详解】HiveThrift服务
在大数据处理领域,Hive 作为数据仓库工具,提供了 SQL 接口来查询存储在 Hadoop 分布式文件系统(HDFS)中的数据。HiveThrift 服务是 Hive 的一个重要组成部分,它允许客户端通过网络接口与 Hive 服务器进行交互,执行 SQL 查询并获取结果。本文将详细介绍 HiveThrift 服务的工作原理、配置方法以及如何使用 Java 客户端连接到 HiveThrift 服务。
大盘鸡拌面
2025/01/22
2950
python中MySQLdb模块用法实例
MySQLdb提供了connect方法用来和数据库建立连接,接收数个参数,返回连接对象:
用户2936342
2018/08/27
8970
python关于Mysql操作
下载地址:http://dev.mysql.com/downloads/mysql/
py3study
2020/01/13
5970
Python接口自动化之pymysql数据库操作
在上一篇Python接口自动化测试系列文章:Python接口自动化之yaml配置文件,主要介绍主要介绍yaml语法、yaml存储数据,封装类读写yaml配置文件。
可可的测试小栈
2020/05/07
1.8K0
python操作数据库
下载地址:https://pypi.python.org/pypi/MySQL-python/1.2.5 安装到系统即可。
保持热爱奔赴山海
2019/09/18
5960
python脚本操作数据库
操作关键字 创建连接 connect [kə ˈ nekt] 连接 实例化游标 cursor [ˈ kɜ ː sə(r)] 游标 执行 sql 语句 execute [ˈ eksɪkju ː t] 实行;执行; 提交修改 commit [kə ˈ mɪt] 做出 事务回滚 rollback [ˈ rəʊlbæk] 回落; 关闭游标和链接 close
cuijianzhe
2022/06/14
6340
第十三章 Python数据库编程
本章节讲解Python操作数据库,完成简单的增删改查工作,以MySQL数据库为例。
py3study
2020/01/06
4160
python数据库-MySQL与python的交互(52)
2.创建testMySQL.py模块对我们创建的MySQLManager.py模块测试
Se7eN_HOU
2019/07/15
1K0
python数据库-MySQL与python的交互(52)
相关推荐
[python] mysql安装使用
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档