从AWS Glue读取Netezza时的连接超时

问题描述 投票:0回答:1

我正在尝试使用AWS Glue将数据从本地Netezza数据库提取到S3中。我到目前为止编写的代码(不完整)

df = glueContext.read.format("jdbc")\
    .option("driver", "org.netezza.Driver")\
    .option("url", "jdbc:netezza://NetezzaHost01:5480/Netezza_DB")\
    .option("dbtable", "ADMIN.table1")\
    .option("user", "myUser")\
    .option("password", "myPassword")\
    .load()

print(df.count())

我正在使用自定义的JDBC驱动程序jar,因为AWS Glue本机不支持Netezza(该驱动程序由IBM提供),并且在将作业作为依赖项触发时将其指定。

此代码不断失败,并显示超时错误:

py4j.protocol.Py4JJavaError: An error occurred while calling o68.load.
: org.netezza.error.NzSQLException: Connection timed out (Connection timed out)

我尝试过的一些方法不起作用:-用火花代替胶水阅读-使用很小的表(<100行)作为源

我应该补充说,Netezza数据库在公司防火墙后面,但是在使用自定义驱动程序时,我看不到任何指定安全组的选项(就像对Glue本机连接所做的那样。)>

有什么想法吗?

我正在尝试使用AWS Glue将数据从本地Netezza数据库提取到S3中。到目前为止,我已编写的代码(不完整)df = gumContext.read.format(“ jdbc”)\ .option(“ driver”,“ ...

jdbc aws-glue netezza
1个回答
0
投票

1)如果您要访问本地的netezza主机,首先需要验证您是否能够从为胶粘工作选择的VPC中访问netezza。

© www.soinside.com 2019 - 2024. All rights reserved.