1.python与hive
python与hive
Hive被视为大数据数据仓库的事实标准,能够利用HDFS和Hbase上的数据。一般情况下,Hive主要用于批处理任务,编写excel源码而热查询与数据展示则更多依赖于Impala、Spark SQL或Presto。Hive提供三种访问接口:CLI、Web UI和HiveServer2。在Python中访问Hive主要通过两种方式:Hive自带的库和pyhive模块。
在Linux环境下进行测试较为理想,Windows环境下的源码编译安装pythonSASL安装可能会遇到编译错误。以下内容将详细解释访问接口的API。
在pyhive中执行SQL,提供了两个API:cursor.execute(sql, parameters=None)和cursor.executemany(sql, [[]])。cursor.execute(operation, params)允许通过params参数执行操作,params可以是聊天app红包源码单值、元组、列表或字典。而cursor.executemany(operation, params)则使用多组params参数执行操作,返回最终执行结果集。
读取数据API包括:cursor.next()、简单小页面源码cursor.fetchone()、cursor.fetchmany()和cursor.fetchall()。其中,cursor.next()返回下一条查询数据,遇到结果集尾部会抛出异常;cursor.fetchone()返回下一条数据,燕窝没溯源码尾部返回None;cursor.fetchmany(size=None)返回指定数量的数据,未指定size时默认为行;cursor.fetchall()则返回所有数据,需谨慎使用,以防内存溢出。
查询结果每行数据以元组形式呈现,遵循SQL列顺序。其他API和属性包括:cursor.fetch_logs()获取Hive执行日志,cursor.rownumber属性记录读取数据条数,cursor.rowcount属性尚未实现,返回-1,cursor.description属性提供查询结果元数据,返回列数、列名和数据类型等信息。最后,cursor.cancel()和cursor.close()分别用于取消当前执行的SQL和关闭游标。