【问题标题】:How will setting autocommit = True affect queries from python to Hive server when calling pyodbc.connect()调用 pyodbc.connect() 时设置 autocommit = True 将如何影响从 python 到 Hive 服务器的查询
【发布时间】:2022-12-22 03:10:55
【问题描述】:

我正在尝试通过 Cloudera 上的 Apache Hive 将我在 conda 环境中运行的 jupyter notebook 连接到 Hadoop 集群。我从 this post 了解到我应该安装/设置 cloudera odbc 驱动程序并使用 pydobc 和连接如下:


import pyodbc

import pandas as pd

with pyodbc.connect("DSN=<replace DSN name>", autocommit=True) as conn:
    df = pd.read_sql("<Hive Query>", conn)

我的问题是关于自动提交参数。我在 pyodbc connection documentation 中看到将自动提交设置为 True 将使我不必显式提交事务,但它没有指定实际含义。究竟什么是交易?我想使用 pd.read_sql_query() 从配置单元服务器中选择数据,但我不想对服务器上的实际数据进行任何更改。抱歉,如果这个问题的格式不正确,或者我在问题中忽略了(看似简单的)细节——这是我第一次在 stackoverflow 上发帖,我是 cloudera / Hive 的新手。

我还没有尝试连接或运行任何查询,因为我不想弄乱服务器上的任何东西。

【问题讨论】:

  • 请提供足够的代码,以便其他人可以更好地理解或重现问题。

标签: python hive jupyter-notebook pyodbc cloudera


【解决方案1】:

Hive 没有像 RDBMS 系统那样提交和启动事务的概念。

你不应该担心自动提交。

【讨论】:

    猜你喜欢
    • 2011-05-26
    • 2020-11-22
    • 2016-08-02
    • 1970-01-01
    • 2019-04-27
    • 1970-01-01
    • 2014-09-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多