首页 > 解决方案 > Spark 从新位置读取,保持输出目录相同

问题描述

我有一个 spark 作业,它从源 s3://bucket/source-1 文件夹读取(使用结构化流 API)并写入 s3://bucket/destination-1 文件夹。检查点保存在 s3://bucket/checkpoint-1。

现在我想从 s3://bucket/source-2 中读取具有相同架构的数据(在 s3://bucket/checkpoint-2 进行检查点),但我想将其附加到相同的 s3://bucket/目的地 2 文件夹。可能吗?

标签: apache-sparkspark-structured-streaming

解决方案


是的,当然这可以写入同一个位置。但是您需要考虑不同的事情,例如:

  • 您使用什么数据格式作为输出(Parquet,Delta,其他......)?
  • 这两个流式作业是否同时运行?写数据的时候会不会有冲突?
  • (可能)目的地的分区模式是什么?

推荐阅读