更新时间:2024-08-05 GMT+08:00

基于Python3Hive样例程序

功能介绍

本章节介绍如何使用Python3连接Hive执行数据分析任务。

样例代码

以下分析任务示例在“hive-examples/python3-examples/pyCLI_nosec.py”文件中。

  1. 导入hive类
    from pyhive import hive
  2. 创建JDBC连接:
    connection = hive.Connection(host='hiveserverIp', port=hiveserverPort, username='hive', database='default', auth=None, kerberos_service_name=None, krbhost=None)

    需按照实际环境修改以下参数:

    • hiveserverIp:替换为实际需要连接的HiveServer节点IP地址,可登录FusionInsight Manager,选择“集群 > 服务 > Hive > 实例”查看。
    • hiveserverPort:需要替换为Hive服务的端口,可在FusionInsight Manager界面,选择“集群 > 服务 > Hive > 配置”,在搜索框中搜索“hive.server2.thrift.port”查看,默认值为“10000”。
  3. 执行SQL语句,样例代码中仅执行查询所有表功能,可根据实际情况修改HQL内容。
    cursor = connection.cursor()
    cursor.execute('show tables')
  4. 获取结果并输出
    for result in cursor.fetchall():
        print(result)