首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将pyspark DF写入Redshift

将pyspark DF写入Redshift
EN

Stack Overflow用户
提问于 2018-07-26 20:33:09
回答 1查看 157关注 0票数 1

我已经使用以下代码在Pyspark和Redshift之间建立了连接。

代码语言:javascript
复制
import sqlalchemy as sa
from sqlalchemy.orm import sessionmaker
import psycopg2
DATABASE = "d"
USER = "user1"
PASSWORD = "1234"
HOST = "sparkvalidation.crv9zfdiseqm.us-west-2.redshift.amazonaws.com"
PORT = "5439"
SCHEMA = "public"    
connection_string = "redshift+psycopg2://%s:%s@%s:%s/%s" % (USER,PASSWORD,HOST,str(PORT),DATABASE)
engine = sa.create_engine(connection_string)
session = sessionmaker()
session.configure(bind=engine)
s = session()
SetPath = "SET search_path TO %s" % SCHEMA
s.execute(SetPath)

现在我如何将pyspark dataframe写到Redshift?

EN

回答 1

Stack Overflow用户

发布于 2019-07-05 21:56:22

如果你使用DataBricks,你可以这样写:

代码语言:javascript
复制
dataframe.write \
  .format("com.databricks.spark.redshift") \
  .option("url", connection_string) \
  .option("dbtable", "target") \
  .option("tempdir", "s3a://your_s3_tmp_bucket/tmp_data") \
  .mode("error") \
  .save()

请注意,您需要一个s3存储桶,因为在将数据复制到redshift时通常会出现这种情况

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51538961

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档