我有几个传感器可测量温度,湿度和空气质量。 数据是通过IoT平台收集的,并存储到Cassandra群集中。为了将数据分发给Cassandra Cluster的所有其他应用程序,我在Java中创建了一个Rest Api。
数据收集脚本用C和python编写。而Java中的Rest Api。
我的问题如下。
我想过滤我的原始传感器数据,以排除诸如高温和低温等值,以使故障率尽可能低。我已经阅读过有关t Kalman过滤的知识,但是我不希望它实时发生,我更喜欢直接在Cassandra节点上过滤我的数据。
我现在最好的猜测是使用for ex创建服务。 java,并过滤出具有不希望出现的值的时间间隔的数据。
例如,每天触发一次的服务,它将排除自上次记录以来的最后一次激活以来的所有“不良”值。
是否有类似的建议? 还是有人有更好的建议? 甚至更好的出版物可以指导我完成整个过程。
谢谢。
答案 0 :(得分:0)
这在很大程度上取决于表的设计-什么是分区键等。
该用例非常普遍,对于此类任务,最好将Spark与Spark Cassandra Connector一起使用,以最有效地读取数据。如果您不想使用Spark,则在实施服务时需要非常小心-不要执行select * from table
等操作,因为它会杀死集群。
P.S。如果您提供其他信息,我可以扩展答案: