我们进行了批处理,以使用S / Spark执行更新/插入操作。但是现在我们有了用例,可以使这更加实时。以下是配置和我的方法。但这不起作用。
Kafka对于所有JSON消息的消息都是容错的
我们使用结构化火花流来消费消息,并将这些消息写入s3存储桶中。
上述更新/插入操作非常昂贵。
这种情况是,我们需要通过使用结构化火花流来消耗这些Kafka消息,但不是立即进行。问题是,我们需要基于窗口(即10分钟)立即收集发布的消息。
也就是说,每10分钟,spark流应用程序需要消耗来自Kafka的消息并将其写入s3存储桶。
我已经在基本数据帧上使用了GROUP BY
操作(从Kafka中读取了消息之后)来创建另一个数据帧(df2)。但是此数据帧(df2是分组数据帧)无法使用进一步的处理。
是否可以通过使用火花结构的流来执行?
答案 0 :(得分:0)
您应该阅读有关Apache Spark结构化流中的触发器的信息。这将帮助您实现所需的工作。在开始播放流 void mergeSort(Person* arr, int low, int high) {
if (low < high) {
int mid = low + (high - 1) / 2;
mergeSort(arr, low, mid);
时,只需设置此触发配置并提及10分钟即可。
要获得代码帮助,您可以查看以下博客Question at Google support。