首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

0473-如何使用Python3访问Kerberos环境的Hive和Impala

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。

Fayson的github:

https://github.com/fayson/cdhproject

提示:代码块部分可以左右滑动查看噢

1

文档编写目的

随着Hadoop平台的流行,越来越多的开发语言访问Hadoop平台的组件,比较常见的Java、Scala、Python、R等。在前面的多篇文章中Fayson介绍了Java和Scala访问Hadoop各个组件的方法。对于偏分析类的Python和R语言访问集群的Hive和Impala比较多。本篇文章Fayson主要介绍如何使用Python3访问Kerberos环境的Hive和Impala。

测试环境

1.RedHat7.2

2.CM和CDH版本为5.15.0

3.Python3.6

2

Python环境准备

Python访问Hive和Impala需要安装Python的客户端,Cloudera提供的Impyla包提供了基于JDBC的方式访问Kerberos、LDAP、SSL环境的Hive和Impala。Impyla包支持2.6+或3.3+的Python版本,接下来在我们的环境安装impyla及其依赖包。

1.创建requirements.txt文件,内容如下

2.在命令行执行如下命令安装python包

3

Python访问Hive示例

1.编写Python访问Hive示例代码,内容如下:

2.在命令行进行kinit操作

3.使用python命令运行impyla_hive.py文件

4

Python访问Impala示例

1.编写Python访问Impala示例代码

2.在命令行进行kinit操作

3.在命令行进行kinit操作

5

总结

1.Python代码访问Hive和Impala需要安装客户端工具Impyla

2.Impyla支持Kerberos、LDAP和SSL各种安全环境的Hive和Impala

3.在示例中Fayson的Impala端口号与默认不一致,配置了Impala的HAProxy原因。

提示:代码块部分可以左右滑动查看噢

为天地立心,为生民立命,为往圣继绝学,为万世开太平。

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181206B01G3Q00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券