AWS Glue与Mongodb Atlas Connection 在Crawler中可以工作,但在ETL Job 中却不行?

0

【以下的问题经过翻译处理】 我正在尝试使用AWS Glue执行ETL作业。 我们的数据存储在MongoDB Atlas中,位于VPC内。 我们的AWS通过VPC peering连接到我们的MongoDB Atlas。

为了在AWS Glue中执行ETL作业,我首先使用VPC详细信息和mongoDB Atlas URI以及密码和用户名创建了一个连接。此连接由AWS Glue Crawler用于从MongoDB中提取模式到AWS数据目录表。 这个连接是有效的!

然而,我尝试使用以下pySpark代码执行实际的ETL作业:

#My Temp Variables source_database="d*********a" source_table_name="main_businesses source_mongodb_db_name = "main" source_mongodb_collection = "businesses"

glueContext.create_dynamic_frame.from_catalog(database=source_database,table_name=source_table_name,additional_options = {"database": source_mongodb_db_name,"collection":source_mongodb_collection})

但是,连接超时,原因是MongoDB Atlas会阻止ETL作业的连接。 就好像ETL作业在使用连接时与爬虫不同。也许ETL作业无法在连接到MongoDB Atlas VPC的AWS VPC内运行作业(VPC对等连接无法实现?)。

有谁知道发生了什么或我该如何修复这个问题?

1 Antwort
0

【以下的回答经过翻译处理】 你是否将该 Connection 添加到Glue作业中?

仅仅引用表是不够的,因为Glue作业在启动之前需要知道连接VPC的详细信息。

profile picture
EXPERTE
beantwortet vor 5 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen