如何从 AWS SQS 读取流数据集?

How to read streaming datasets from AWS SQS?

对于 Spark 流,有 connectors 可以实现此功能。

不幸的是,我找不到 Spark 结构化流式传输,因为它是一项较新的技术。有没有办法使用 Spark 流连接器连接到源?或者有没有一种方法可以创建类似于在 spark streaming 应用程序中创建自定义连接器的方法?

Is there a way to connect to a source using a spark streaming connector?

不知道。

Or is there a way to create a custom connector similar to the way one can be created in a spark streaming application?

我没有使用 AWS SQS 的经验,但我认为如果 Spark Streaming 支持它,Spark Structured Streaming 也应该支持。

Source 接口允许您实现自定义数据源以加载流数据集,也可能来自 AWS SQS。

使用KafkaSource or TextSocketSource作为模板。

首先,与使用专注于流数据处理、存储和分析的 AWS Kinesis Streams、Kinesis Firehorse 和 Kinesis Analytics 相比,AWS SQS 可能不适合流媒体要求。

您可以通过事件连接 Spark Streaming + Kinesis Integration 来配置 Spark Streaming 以从 Kinesis 接收数据。

我认为目前没有适用于 AWS SQS 的 Spark 流连接器,但您应该能够使用 AWS SQS SDK 编写自定义连接器以轮询队列中的数据并推送到 Spark Stream。