Cassandra 如何每隔15分钟在Spark SQL或Scala Shell上自动运行命令?

Cassandra 如何每隔15分钟在Spark SQL或Scala Shell上自动运行命令?,cassandra,apache-spark,Cassandra,Apache Spark,我在Cassandra中有一些动态数据,我正在spark analytics模式下运行DSE 4.5 由于缓存时无法使RDD与底层数据库保持同步,所以需要有一些后台进程来连续生成RDD并从数据库中收集最新数据 如何实现自动化,使我在Scala Shell中每隔15分钟运行一次以下内容?(我是scala的新手) 从cassandra表A创建RDD 改造它 保存到Cassandra表B 或者,如何实现自动化,以便每15分钟在shark/spark sql中连续运行“insert with selec

我在Cassandra中有一些动态数据,我正在spark analytics模式下运行DSE 4.5

由于缓存时无法使RDD与底层数据库保持同步,所以需要有一些后台进程来连续生成RDD并从数据库中收集最新数据

如何实现自动化,使我在Scala Shell中每隔15分钟运行一次以下内容?(我是scala的新手)

  • 从cassandra表A创建RDD
  • 改造它
  • 保存到Cassandra表B

  • 或者,如何实现自动化,以便每15分钟在shark/spark sql中连续运行“insert with select”命令?

    您可以编写应用程序并运行cron作业,每15分钟触发一次。如果你在mesos,chronos可能会引起你的兴趣。另一种选择是使用spark流媒体应用程序,a)向其发送消息,并将其插入两个表中,或b)通过某个消息传递系统(kafka/rabbit等)向其发送通知,并触发响应工作。这确实占用了监听的核心,我想看看简单的cron任务是否可以工作。

    Spark Shell是一个交互式环境。我不认为它是保持后台进程运行的正确位置。为什么会有这样的要求?我认为从“我正在使用spark shell”到“编写应用程序”的步骤可能有点陡峭。也许您可以为此提供一些提示。相反,它非常简单:)您熟悉scala吗?即使没有,这也相当简单——使用cassandra不需要对scala了解太多。看看:。这可能是获得你所需要的最简单的方法。您甚至可以将Spark SQL与连接器一起使用。这看起来很简单,因为您已经做了很多。我们来看看这对OP来说是否简单。他可能是程序员,也可能不是。这是一种鼓励。在我编写的各种程序中,让spark+cassandra+scala运行起来相当容易。当我这么做的时候,我根本不是来自jvm世界。