我使用以下代码使用spark Cassandra连接器将我的预测结果保存到Cassandra数据库:
CassandraJavaUtil.javaFunctions(sensorDataRDD).writerBuilder(modelParamter.keyspace, "sensor_data_2",
CassandraJavaUtil.mapToRow(SensorData2Double.class)).saveToCassandra();
数据基于以秒为单位缩放的时间戳。因此,预测的写作可以在一小时内缩放。我需要先删除所有以前的记录。删除应该在Cassandra表中的特殊列上进行,并提供其唯一键。
我不知道如何删除所有以前的记录,以确保当我使用上面的java代码插入新记录时,之后我的cassandra删除查询不会删除它们。
删除或插入行(主键)时,Cassandra列上是否存在原子性?
答案 0 :(得分:0)
为什么需要删除以前的数据?
如果您正在为相同的密钥编写新数据,则会被覆盖。
如果不想删除“新”数据,可以检查值的写入时间(写入时间功能),如果它足够新鲜 - 请不要删除它。