【问题标题】:Using redshift as a JDBC source for readStream in the Structured Streaming API (pyspark)在结构化流 API (pyspark) 中使用 redshift 作为 readStream 的 JDBC 源
【发布时间】:2020-11-17 18:26:40
【问题描述】:

我正在寻找一个包,或者以前使用 redshift 作为结构化流数据帧源的实现。

spark.readStream \
    .format("io.github.spark_redshift_community.spark.redshift") \
    .option('url', redshift_url) \
    .option('forward_spark_s3_credentials', 'true') \
    .load()

使用下面的格式会在读取时出错。如:

Data source io.github.spark_redshift_community.spark.redshift does not support streamed reading

如果您从 Spark 3 降级并使用:com.databricks.spark.redshift,则会出现同样的错误

是否有已知的解决方法或方法/模式我可以用来实现(在 pyspark 中)redshift 作为 readStream 数据源

【问题讨论】:

    标签: apache-spark amazon-redshift spark-structured-streaming


    【解决方案1】:

    正如错误所说,这个库不支持对 Redshift 进行流式读取/写入。

    可以从项目源at link 确认。该格式不扩展或实现 Micro/Continuous 流读取器和写入器。

    没有true streaming 简单的方法可以做到这一点。您可以探索以下途径,

    1. 探索第 3 方库。搜索JDBC streaming spark。免责声明:我没有使用过这些库,因此不认可这些库。
    2. 在自定义检查点机制上创建微批处理策略。

    扩展说明: AFAIK,Spark JDBC 接口不支持结构化流。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-04-06
      • 1970-01-01
      • 1970-01-01
      • 2018-11-14
      • 1970-01-01
      • 2015-09-08
      相关资源
      最近更新 更多