问题标签 [aws-glue-connection]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
661 浏览

amazon-web-services - 使用 CDK 创建的 AWS Glue JDBC 连接需要控制台中的密码才能生效

我正在使用用户名和密码的秘密在 Glue 中创建 JDBC 连接。我可以在控制台中看到用户名是从密钥中正确读取的,所以这不是问题。一旦我编辑详细信息并在控制台中输入密码,它就会生效。我的方法有问题吗?

0 投票
1 回答
274 浏览

amazon-web-services - 解析参数“--targets”时出错:预期:“=”,接收到:“{”用于输入:

我正在通过 Glue 中的 AWS CLI 创建爬虫,但遇到了问题。

这是我使用的 CLI 命令

我在做任何事情吗,因为我面临着问题

0 投票
1 回答
653 浏览

mysql - AWS GlueStudio 到 Snowflake JDBC:调用 pyWriteDynamicFrame 时出错。没有合适的司机

我正在尝试通过 AWS Glue(在 GlueStudio 的可视模式下)将数据目录表 (MySQL) 中的数据移动到雪花表中。

为此,我正在遵循本指南使用雪花和 AWS Glue 执行数据转换[1]

我正在关注它的每一部分,但是在执行我的工作时,我得到了错误

An error occurred while calling xxx.pyWriteDynamicFrame. No suitable driver

(是的,除了堆栈跟踪,错误消息中没有更多信息)我已经测试了我能想到的所有内容,例如:

  • 可以访问驱动程序的 s3 存储桶
  • 有网络访问权限
  • 我尝试了一个不完整的 JDBC ULR(没有密码),错误是这样说的
  • 我试过输入错误的密码,但我得到了相应的错误

我发现的一件事是,我发现的很多问题都在 AWS Glue 上作为脚本报告(不适用于可视化编辑器),并且在其中许多问题中,它们使用两个 jar:thesnowflake JDBC driverSnowflake Spark Connector. 尽管我遵循的教程 [1] 不是那么清楚,但我尝试将这两个文件都放在我的“驱动程序”存储桶中,但仍然是同样的错误。

我已经尝试了这两个文件的许多版本,但均无济于事。

所以我不知道那可能是什么(我什至尝试使用不同的 AWS 账户和不同的 Snowflake 账户,这样我就可以完全访问资源)

你们中有人尝试过这种设置吗?

我在用着:

  • AWS GlueStudio(2021 年 6 月)
  • 雪花云版本 5.22.1(select CURRENT_VERSION();在雪花中获得)
  • Snowflake JDBC驱动v3.13.4
  • 用于 scala v2.12 的雪花火花连接器 v2.9.0-spark_2.4
  • 我的连接字符串:jdbc:snowflake://xxx00000.snowflakecomputing.com/?user=${Username}&password=${Password}&warehouse=${wh}&db=${db}&schema=${schema}

[编辑 6 月 23 日] 至于@jonlegend 评论:我正在使用可视化编辑器来完成这项工作。所以我无法控制代码实现。不过,我将发布生成的代码:

另外,关于堆栈跟踪,我也可以分享它:

最后,我正在查看错误日志和作业日志,错误是相同的。两个日志中的先前消息也无济于事。

0 投票
0 回答
154 浏览

scala - AWS Glue 无法访问 VPC 中的数据库

我有 AWS Glue 作业,它使用 Spark 和 Scala 以及脚本中指定的 jdbc 连接,用于自定义 ETL 和数据解密。在数据库不公开的环境中运行作业时,作业会因通信故障而失败。我在与数据库相同的 VPC 中定义了 Glue 和 S3 端点,但仍然没有成功。

还尝试创建假连接和网络连接,但在将连接添加到作业后,作业永远不会完成并卡住。

无连接

0 投票
1 回答
276 浏览

google-bigquery - 如何在 AWS Glue 到 BigQuery 连接器中指定项目 ID?

我正在尝试按照https://aws.amazon.com/blogs/big-data/migrating-data-from-google-bigquery-to-amazon-s3-using-中的教程使用 AWS Glue 连接器连接 BigQuery aws-glue-custom-connectors/但在完成所有步骤后,我得到:

Python 异常表明:

所以一切似乎都提供了,但仍然抱怨项目 ID。如何将该信息提供给连接器?

0 投票
1 回答
117 浏览

postgresql - 粘合 PostgreSQL 连接:“无法找到合适的安全组”

我正在尝试为 PostgreSQL 数据库添加新的 RDS 连接。我正在尝试按照这篇文章进行设置,但是当尝试从入站规则的源字段中添加安全组时,我收到以下消息:You may not specify a referenced group id for an existing IPv4 CIDR rule。如果有人对如何解决此问题有任何想法,我将非常感谢您的帮助。

安全组入站规则: 在此处输入图像描述

安全组出站规则: 在此处输入图像描述

0 投票
0 回答
91 浏览

amazon-web-services - AWS GLUE:通过 SSH 隧道的 MySQL

我需要连接到我通常从企业 VPN 中访问的本地数据库,然后通过 SSH 隧道。我们已经在 AWS 上为我们自己的 VPN 配置了一个 VPC,但我不知道如何使用 SSH 隧道创建 Glue 连接。

因此,我可以为仅通过连接到公司 VPN 即可访问的数据库创建 Glue 连接,但不适用于需要 SSH 的数据库。

0 投票
1 回答
464 浏览

amazon-web-services - Terraform 粘合连接,可避免在应用时覆盖 connection_properties

我有一个用于 AWS Glue 连接的 Terraform 资源,如下所示:

对于上下文,此资源是导入的,而不是最初使用 Terraform 创建的。我一直在通过迭代导入、规划和应用将 Terraform 改造到现有项目中。

当然,我不想将凭据保存在 Terraform 文件中。所以我使用了占位符值,如上所示。部署后,我假设我可以手动更改用户名、密码和连接 URL。

当我运行时,terraform plan我得到这个指示,表明 Terraform 正在准备更改 Glue Connection:

Terraform 计划修改 ,connection_properties因为它们(故意)与实时配置不同。但我不希望它。我想要terraform apply我的脚本而不覆盖凭据。定期申请是我的开发工作流程的一部分。就目前情况而言,我每次申请后都必须手动恢复凭据。

我想指示 Terraform 不要用我的占位符凭据覆盖远程凭据。我试着简单地省略这个connection_properties论点,但问题仍然存在。是否有另一种方法可以诱使 Terraform 在申请时不覆盖主机、用户名和密码?

0 投票
1 回答
76 浏览

aws-glue - AWS Glue 将所有任务分配给同一工作人员

我有一个 AWS Glue 工作,其工作非常简单:将大型 CSV gzip 文件分成 1GB 的文件。

在我的测试中,我将 4 个文件上传到存储桶中,每个文件大约 5GB。然而,作业总是将所有文件分配给单个工作人员,而不是分配给所有工作人员。

活动工作者日志:

一名休息工人日志:

其余工作人员卡在这一步,无休止地等待,并将所有 20GB 文件分配给单个活动任务

它的作业脚本如下:

0 投票
0 回答
57 浏览

python - 胶水作业和胶水连接

我们从 Glue 作业中收到错误消息(如下):

错误[main]glue.ProcessLauncher(Logging.scala:logError(70)):来自Python的错误:Traceback(最后一次调用):文件“/opt/amazon/spark/python/lib/pyspark.zip/pyspark/sql /utils.py”,第 63 行,在 deco 中返回 f(*a, **kw) 文件“/opt/amazon/spark/python/lib/py4j-0.10.7-src.zip/py4j/protocol.py” ,第 328 行,get_return_value 格式(target_id, ".", name), value) py4j.protocol.Py4JJavaError: 调用 o87.sql 时出错。:org.apache.spark.sql.AnalysisException:java.lang.RuntimeException:com.amazonaws.SdkClientException:无法执行HTTP请求:连接到glue.us-east-1.amazonaws.com:443 [glue.us-east -1.amazonaws.com/52.22.189.191、glue.us-east-1.amazonaws.com/52.203.19.126、glue.us-east-1.amazonaws.com/35.171.38.177、glue.us-east-1 .amazonaws.com/3.232.31.188,glue.us-east-1.amazonaws.com/3.230。

我们在子网是私有的胶水作业中有一个胶水连接。安全组具有以下入站和出站规则:

  • 入站:ALLTCP 自引用
  • 出站:ALLTCP 自引用、PORT 443 ipv 4 和 PORT 443 ipv6

当我取下胶水连接时,我的工作就成功了。我不太明白何时需要 Glue 连接......在我们的例子中,Glue 作业执行了一系列转换,然后将输出存储在 S3 中。有人可以提供有关为什么没有连接就可以工作的信息吗?谢谢你。