python 操作hive pyhs2方式


Posted in Python onDecember 21, 2019

使用kerberos时

import pyhs2

class HiveClient:
  # 初始化
  def __init__(self, db_host, user, password, database, port=10000, authMechanism="PLAIN", configuration=None):
    self.conn = pyhs2.connect(host=db_host,
                 port=port,
                 authMechanism=authMechanism,
                 user=user,
                 password=password,
                 database=database,
                 configuration=configuration,
                 )

  # 查询方法
  def query(self, sql):
    with self.conn.cursor() as cursor:
      cursor.execute(sql)
      return cursor.fetch()

  def close(self):
    self.conn.close()


def getHiveData(sql):
  config = {"mapreduce.job.queuename": "default", 'krb_host': 'hiveserve2ip', 'krb_service': 'hive'}
  hive_client = HiveClient(db_host='hiveserve2ip', port=10000, user='user@kdc.com', password='hive', database='dw.usee',
               authMechanism='KERBEROS', configuration=config)
  print sql
  result = hive_client.query(sql)
  return result
Could not start SASL: Error in sasl_client_start (-1) SASL(-1)

安装

yum install cyrus-sasl-plain cyrus-sasl-devel cyrus-sasl-gssapi

pyhs2 安装 sasl问题

yum install cyrus-sasl-devel 
yum install cyrus-sasl-lib 
yum install libgsasl-devel 
yum install saslwrapper

对接superset hive kerberos

SQLAlchemy URI

hive://herverser2ip:10000/db

扩展 连接参数

{
  "metadata_params": {},
  "engine_params": {
    "connect_args": {
    "auth": "KERBEROS",
        "kerberos_service_name": "hive",
    "username" : "user@KDC.COM"
    }
  }
}

以上这篇python 操作hive pyhs2方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
利用python画一颗心的方法示例
Jan 31 Python
python生成式的send()方法(详解)
May 08 Python
python使用epoll实现服务端的方法
Oct 16 Python
python获取微信小程序手机号并绑定遇到的坑
Nov 19 Python
Python多线程应用于自动化测试操作示例
Dec 06 Python
Python字符串逆序的实现方法【一题多解】
Feb 18 Python
Djang的model创建的字段和参数详解
Jul 27 Python
Python完全识别验证码自动登录实例详解
Nov 24 Python
python MultipartEncoder传输zip文件实例
Apr 07 Python
Python文件操作模拟用户登陆代码实例
Jun 09 Python
Python lxml库的简单介绍及基本使用讲解
Dec 22 Python
Python 图片处理库exifread详解
Feb 25 Python
python 消费 kafka 数据教程
Dec 21 #Python
python kafka 多线程消费者&手动提交实例
Dec 21 #Python
Python序列类型的打包和解包实例
Dec 21 #Python
Python 使用threading+Queue实现线程池示例
Dec 21 #Python
Python CSV文件模块的使用案例分析
Dec 21 #Python
python实现的分析并统计nginx日志数据功能示例
Dec 21 #Python
Python数据持久化存储实现方法分析
Dec 21 #Python
You might like
PHP之sprintf函数用法详解
2014/11/12 PHP
如何使用Gitblog和Markdown建自己的博客
2015/07/31 PHP
简单概括PHP的字符串中单引号与双引号的区别
2016/05/07 PHP
实例分析PHP将字符串转换成数字的方法
2019/01/27 PHP
Laravel框架模型的创建及模型对数据操作示例
2019/05/07 PHP
Thinkphp5.0 框架的请求方式与响应方式分析
2019/10/14 PHP
jquery实现心算练习代码
2010/12/06 Javascript
JS 删除字符串最后一个字符的实现代码
2014/02/20 Javascript
首页图片漂浮效果示例代码
2014/06/05 Javascript
Nodejs关于gzip/deflate压缩详解
2015/03/04 NodeJs
JavaScript基于setTimeout实现计数的方法
2015/05/08 Javascript
react-router实现跳转传值的方法示例
2017/05/27 Javascript
Vue2.0中集成UEditor富文本编辑器的方法
2018/03/03 Javascript
微信小程序scroll-view实现字幕滚动
2018/07/14 Javascript
vue在App.vue文件中监听路由变化刷新页面操作
2020/08/14 Javascript
[34:56]Ti4冒泡赛LGD vs Liquid 1
2014/07/14 DOTA
用Python编程实现语音控制电脑
2014/04/01 Python
Python删除指定目录下过期文件的2个脚本分享
2014/04/10 Python
Python原始字符串(raw strings)用法实例
2014/10/13 Python
详解 Python 与文件对象共事的实例
2017/09/11 Python
对Python 3.5拼接列表的新语法详解
2018/11/08 Python
Python Socketserver实现FTP文件上传下载代码实例
2020/03/27 Python
Django静态资源部署404问题解决方案
2020/05/11 Python
Python3.9.0 a1安装pygame出错解决全过程(小结)
2021/02/02 Python
详解基于 Canvas 手撸一个六边形能力图
2019/09/02 HTML / CSS
canvas实现滑动验证的实现示例
2020/08/11 HTML / CSS
Perfumetrader荷兰:香水、化妆品和护肤品在线商店
2017/09/15 全球购物
JACK & JONES英国官方网站:欧洲领先的男装生产商
2017/09/27 全球购物
美国社交购物市场:MassGenie
2019/02/18 全球购物
在加拿大在线租赁和购买电子游戏:Game Access
2019/09/02 全球购物
图书室管理制度
2014/01/19 职场文书
工作评语大全
2014/04/26 职场文书
自愿离婚协议书范文2014
2014/10/12 职场文书
2015年乡镇平安建设工作总结
2015/05/13 职场文书
教你怎么用Python操作MySql数据库
2021/05/31 Python
Win11如何修改dns?Win11修改dns图文教程
2022/01/18 数码科技