Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 红移卸载在sqlalchemy调用时终止_Python_Amazon S3_Sqlalchemy_Psycopg2_Amazon Redshift - Fatal编程技术网

Python 红移卸载在sqlalchemy调用时终止

Python 红移卸载在sqlalchemy调用时终止,python,amazon-s3,sqlalchemy,psycopg2,amazon-redshift,Python,Amazon S3,Sqlalchemy,Psycopg2,Amazon Redshift,我正在使用SQLAlchemy从python脚本运行一些从Redshift到S3的大型卸载查询。(连同sqlalchemy红移包) 前几项工作(但最后一项工作会运行较长时间(~30分钟))在红移查询仪表板中标记为终止。一些数据加载到S3,但我怀疑不是全部。 我对查询本身的工作相当有信心,因为我过去曾使用它在本地下载 SQLAlchemy是否会关闭耗时太长的查询?有没有办法设置或延长查询超时时间?脚本本身继续运行,就好像没有出现任何问题,红移日志也没有指出问题,但当查询被标记为终止时,通常意味着有

我正在使用SQLAlchemy从python脚本运行一些从Redshift到S3的大型卸载查询。(连同sqlalchemy红移包) 前几项工作(但最后一项工作会运行较长时间(~30分钟))在红移查询仪表板中标记为终止。一些数据加载到S3,但我怀疑不是全部。 我对查询本身的工作相当有信心,因为我过去曾使用它在本地下载


SQLAlchemy是否会关闭耗时太长的查询?有没有办法设置或延长查询超时时间?脚本本身继续运行,就好像没有出现任何问题,红移日志也没有指出问题,但当查询被标记为终止时,通常意味着有外部因素终止了进程。

有两个地方可以在红移中控制超时:

  • 在workload manager控制台中,您可以选择为每个队列指定超时

  • ODBC/JDBC驱动程序设置。根据下面链接中的步骤更新注册表,


  • 与AWS/Redshift相比,sqlalchemy的问题更多

    SQLAlchemy不会隐式地“提交事务”,因此,如果在未提交事务仍处于打开状态时关闭连接(即使查询本身似乎已完成),则该连接中的所有事务都会标记为已终止。 解决方案是用“提交事务”

    conn = engine.connect()
    conn.execute("""SELECT .... """)
    conn.execute("""COMMIT TRANSACTION""")