后台启动hive
hive --service hiveserver &
#-*- coding:utf-8 -*-
#!/usr/bin/python
import sys
sys.path.append('/usr/lib/python2.7/py')
from hive_service import ThriftHive
from hive_service.ttypes import HiveServerException
from thrift import Thrift
from thrift.transport import TSocket
from thrift.transport import TTransport
from thrift.protocol import TBinaryProtocol
hive_server_ip='*.*.*.*'
hive_server_port=10000
hive_sql="select distinct bar from pokes "
def hiveExe(sql):
try:
transport = TSocket.TSocket(hive_server_ip, hive_server_port)
transport = TTransport.TBufferedTransport(transport)
protocol = TBinaryProtocol.TBinaryProtocol(transport)
client = ThriftHive.Client(protocol)
transport.open()
client.execute(sql)
print "The return value is : "
print client.fetchAll()
print "............"
transport.close()
except Thrift.TException, tx:
print '%s' % (tx.message)
if __name__ == '__main__':
hiveExe(hive_sql)