Spark Structured Streaming 让您可以轻松地使用相同且熟悉的 Spark API 来构建流式应用程序和管道。

易于使用

Spark Structured Streaming 抽象化了增量处理、检查点和水印等复杂的流式处理概念,因此您无需学习任何新概念或工具即可构建流式应用程序和管道。

spark
  .readStream
  .select($"value".cast("string").alias("jsonData"))
  .select(from_json($"jsonData",jsonSchema).alias("payload"))
  .writeStream
  .trigger("1 seconds")
  .start()

统一的批处理和流处理 API

Spark Structured Streaming 提供了与 Spark 相同的结构化 API(DataFrames 和 Datasets),因此您无需为批处理和流处理开发或维护两套不同的技术栈。此外,统一的 API 使您可以轻松地将现有的 Spark 批处理作业迁移为流处理作业。

低延迟且具有成本效益

Spark Structured Streaming 使用与 Spark 相同的底层架构,因此您可以利用 Spark 引擎中内置的所有性能和成本优化。借助 Spark Structured Streaming,您可以经济高效地构建低延迟的流式应用程序和管道。

入门指南

开始使用 Spark Structured Streaming

社区

Spark Structured Streaming 是 Apache Spark 的一部分。因此,它会随着每个 Spark 版本进行测试和更新。

如果您对系统有疑问,请在 Spark 邮件列表上提问。

Spark Structured Streaming 开发人员欢迎贡献。如果您想提供帮助,请阅读如何为 Spark 做出贡献,并发送补丁给我们!