我一直在尝试寻找一种解决方案来建立胶水作业和RDS postgresql之间的连接,但所有解决方案都使用我不想使用的胶水目录。
我只想建立连接并将一些数据从胶水作业(spark 脚本)发送到我的 RDS 数据库。我已经在 RDS 数据库中创建了表,现在我只想将数据发送给它。我该如何应对?
我还发现一些文章/视频可以使用 jdbc 来执行此操作,但没有一个使用胶水作业脚本。请帮帮我。
如果您出于任何原因不想使用 Glue Catalog 或 Glue 连接器,您可以像在任何普通 Python 脚本中一样使用像
psycopg2
这样的 Python 库。只需确保您在作业配置的以下参数中指定了 psycopg2-binary
--additional-python-modules
:
import psycopg2
# Connection details
host = "your_rds_host"
database = "your_database_name"
user = "your_username"
password = "your_password"
port = "5432" # Default PostgreSQL port
# Query to execute
query = """
SELECT * FROM your_table LIMIT 10;
"""
# Connect to the RDS instance
with psycopg2.connect(
host=host,
database=database,
user=user,
password=password,
port=port,
) as conn:
# Create a cursor
with conn.cursor() as cur:
# Execute the query
cur.execute(query)
# Fetch
results = cur.fetchall()