我在Cassandra中有一些动态的数据,我在火花分析模式下运行DSE 4.5 .
因为如果我缓存,我无法让我的RDD与底层数据库保持同步,我需要有一些后台进程来连续生成我的RDD并从DB收集最新的 .
我如何自动执行以便在Scala Shell中每15分钟运行以下命令? (我是scala的新手)
-
从cassandra表A创建RDD
-
转换它
-
保存到Cassandra表B.
或者,我怎样才能自动执行以便每隔15分钟就可以在shark / spark sql中连续运行“insert with select”命令?
1 回答
您可以编写一个应用程序并运行一个cron作业,每15分钟触发一次 . 如果你在使用mesos,那么chron可能会引起人们的兴趣 . 另一个选择是有一个火花流应用程序和a)向它发送消息,并将其插入到两个表中或b)通过某个消息传递系统(kafka / rabbit等)发送通知并触发响应的工作 . 这确实占据了收听的核心,我会看到简单的cron工作是否可行 .