首页 > 解决方案 > 如何在 Spark 结构化流中刷新数据帧

问题描述

我们正在从 spark1.6 迁移到 spark2.4。在这个过程中,我计划修改我们的一个流代码。我打算使用结构化流。

在现有的流式传输中,我们将流式传输 DF(将 RDD 转换为 DF)加入到黑名单文件(同样是 DF)。我们每天早上 6 点刷新黑名单 DF。但是我们如何在 Spark 结构化流中刷新 DF。我正在使用以下逻辑使用 RDD 在 1.6 中刷新 DF。但我想知道我是否可以在不将其转换为 RDD 的情况下从 DF 获得火花结构化流的批处理时间。

foreachRDD( (rdd, time) -> {
      ...
      ...

      if (nextRefreshTime > time) {
        //refresh the DF 
        // set nextRefreshTime = next day 6AM
      }

    })

谢谢

标签: apache-sparkspark-streaming

解决方案


推荐阅读