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实现简易版的Web服务器(推荐)
Jan 29 Python
Sanic框架安装与简单入门示例
Jul 16 Python
pyqt5利用pyqtDesigner实现登录界面
Mar 28 Python
python+selenium实现自动化百度搜索关键词
Jun 03 Python
PyQt5组件读取参数的实例
Jun 25 Python
python 机器学习之支持向量机非线性回归SVR模型
Jun 26 Python
python生成特定分布数的实例
Dec 05 Python
在 Windows 下搭建高效的 django 开发环境的详细教程
Jul 27 Python
Python 实现一个计时器
Jul 28 Python
基于OpenCV的网络实时视频流传输的实现
Nov 15 Python
python实现按日期归档文件
Jan 30 Python
详解Django中 render() 函数的使用方法
Apr 22 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截取中文字符串的问题
2006/07/12 PHP
PHP中单引号与双引号的区别分析
2014/08/19 PHP
PHP PDOStatement::fetchColumn讲解
2019/01/31 PHP
php创建类并调用的实例方法
2019/09/25 PHP
Thinkphp集成抖音SDK的实现方法
2020/04/28 PHP
在textarea中屏蔽js的某个function的javascript代码
2007/04/20 Javascript
JQuery 构建客户/服务分离的链接模型中Table分页代码效率初探
2010/01/22 Javascript
ASP.NET jQuery 实例6 (实现CheckBoxList成员全选或全取消)
2012/01/13 Javascript
jQuery源码中的chunker 正则过滤符分析
2012/07/31 Javascript
jQuery之选项卡的简单实现
2014/02/28 Javascript
jQuery操作动态生成的内容的方法
2016/05/28 Javascript
JavaScript中创建对象的7种模式详解
2017/02/21 Javascript
Vue.js划分组件的方法
2017/10/29 Javascript
Angular中点击li标签实现更改颜色的核心代码
2017/12/08 Javascript
使用Python下载Bing图片(代码)
2013/11/07 Python
用python写个自动SSH登录远程服务器的小工具(实例)
2017/06/17 Python
python使用Turtle库绘制动态钟表
2018/11/19 Python
python实现读取excel文件中所有sheet操作示例
2019/08/09 Python
使用python绘制温度变化雷达图
2019/10/18 Python
浅谈spring boot 集成 log4j 解决与logback冲突的问题
2020/02/20 Python
CSS3 @font-face属性使用指南
2014/12/12 HTML / CSS
日本最大的购物网站:日本乐天市场(Rakuten Ichiba)
2020/11/04 全球购物
如何进行Linux分区优化
2016/09/13 面试题
介绍一下SOA和SOA的基本特征
2016/02/24 面试题
房地产销售经理岗位职责
2014/01/01 职场文书
留学推荐信写作指南
2014/01/25 职场文书
2014年采购部工作总结
2014/11/20 职场文书
绍兴鲁迅故居导游词
2015/02/09 职场文书
离职信范本
2015/06/23 职场文书
初一英语教学反思
2016/02/15 职场文书
家长必看:义务教育,不得以面试 评测等名义选拔学生
2019/07/09 职场文书
纪念建国70周年演讲稿
2019/07/19 职场文书
Java实现房屋出租系统详解
2021/10/05 Java/Android
前端监听websocket消息并实时弹出(实例代码)
2021/11/27 Javascript
分析SQL窗口函数之聚合窗口函数
2022/04/21 Oracle
mysql sql常用语句大全
2022/06/21 MySQL