Python 으로 Hiveserver Client 개발을 하려고 한다.
우선 적으로 확인 해보니 일단 python version이 2.6
업데이트가 필요한 상황이다!
우선 Python CentOS 6.7에서 python 2.7로 업데이트 하는 방법!!
=> yum update
=> yum install centos-release-SCL
=> yum install python27
=> scl enable python27 bash
=> cd /opt/rh/python27/root/usr/bin/ # cd to the directory where SCL installs python
=> sudo LD_LIBRARY_PATH=$LD_LIBRARY_PATH ./easy_install-2.7 pip
=> sudo LD_LIBRARY_PATH=$LD_LIBRARY_PATH ./pip2.7 install requests
위와 같은 단계를 진행하면 된다.
참고 사이트
http://stackoverflow.com/questions/23215535/how-to-install-python27-devel-on-centos-6-5
https://gist.github.com/dalegaspi/dec44117fa5e7597a559
이제 hive 공식 문서에 있는 pyhs2를 설치 해보자!
=> pip install pyhs2
참고> 설치 시 오류
sudo yum install gcc-c++ python-devel.x86_64 cyrus-sasl-devel.x86_64
=> Hive Wiki 에 나와 잇는 python hive Client
그런데 설치 하고 보니 pyhs2 github에 가면 더 이상 개발 안 한다고 다른 것을 추천해 준다.
https://github.com/BradRuderman/pyhs2
Impyla와 pyhive
워매... 기껏 설치하고 보니... 다른 거를 써야 한다니.. 쩝..
일단 난 pyhive를 사용 하기로 했다.
https://github.com/dropbox/PyHive
위 사이트를 참고로 설치 하면 된다.
==================================================
import pyhs2
with pyhs2.connect(host='10.10.82.223',
port=10000,
authMechanism="PLAIN",
user='root',
password='',
database='default') as conn:
with conn.cursor() as cursor:
print cursor.getDatabases()
cursor.execute("select * from table limit 100")
print cursor.getSchema()
for i in cursor.fetch():
print i[0]
====================================================
참고로 위 소스 작동 잘 된다 굿!
'프로그래밍 > python' 카테고리의 다른 글
Python DataFrame To excel with hyperlink (0) | 2018.09.27 |
---|---|
debian python3.6 package 설치 (0) | 2018.09.05 |
ImportError: No module named 'tkinter' (0) | 2018.02.20 |
Centos에서 yum으로 python3 설치 (0) | 2018.02.20 |
python vim 설정(자동완성 포함) (3) | 2016.03.17 |