火花花费太多时间从cassandra数据库加载数据

时间:2017-03-10 07:02:29

标签: java apache-spark cassandra apache-spark-sql sparkcore

我的Cassandra数据库每隔十分钟tags为每个machine(总共1000台机器)存储为不同timestamp(有100个标签)存储的时间序列数据。我想使用Spark对特定日期数据执行分析。数据库包含过去两年的大量数据。

CassandraJavaUtil.javaFunctions(sc)
                  .cassandraTable(database,table)
                  .filter(t->todays(t))
                  .filter(f->f.getString("tag").contains("Temp"))
                  .distinct()
                  .count();

这是我的代码todays()功能过滤基于今天日期的数据。上面的代码花了很多时间(它实际上从未产生过结果)我在哪里做错了。有没有更好的方法来获取这些数据。

这是我的表架构,

machine_id text,
tag text,
timestamp timestamp,
value double,
PRIMARY KEY (( machine_id, tag ), timestamp)

0 个答案:

没有答案