温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。
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文件,内容如下
[root@cdh1 python_code]# vim requirements.txt
six
bit_array
thrift
thrift_sasl==0.2.1
impyla
2.在命令行执行如下命令安装python包
[root@cdh1 python_code]# /opt/cloudera/anaconda3/bin/pip3 install -r requirements