python pyhive查询hive

安装phive
pip install sasl
pip install thrift
pip install thrift-sasl
pip install PyHive
工具类
class HiveClient:
    def __init__(self, db_host, user, password, database, port=10000):
        """
        create connection to hive server2
        """
        # 配置队列
        config = {"mapreduce.job.queuename": "XXX"}  
        self.conn = hive.Connection(host=db_host,
                                  port=port,
                                    auth='CUSTOM',
                                  username=user,
                                  password=password,
                                  database=database,
                                  configuration=config
                                  )

    def query(self, sql):

        """
        query
        """
        with self.conn.cursor() as cursor:
            cursor.execute(sql)
            return cursor.fetchall()


if __name__ == '__main__':
    """
    main process
    """
    try:

        hiveCli = HiveClient(hive_info["ip"], hive_info["username"], hive_info["password"],
                             "default", hive_info["port"])
        sql = '''select * from db_test.test where concat_ws('-', year, month, day) = '2019-07-03' and (
                sql_str LIKE '%%phone%%')  limit 10'''
        data = hiveCli.query(sql)
        print(data)
    except Exception, tx:
        print '%s' % (tx.message)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值