在Spark SQL中更新\插入Cassandra计数器值

时间:2017-05-13 06:55:43

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

如何使用Spark SQL更新Cassandra Counter值?
我尝试了一个使用DBeaver更新计数器值的Cassandra CQL查询,它运行正常。但是,当我尝试使用SQL时,不会出现错误的Update语句 另一件事,INSERT OVERWRITE在这里不起作用(我认为)因为我需要递增计数器值:counter_column = counter_column + 1

1 个答案:

答案 0 :(得分:0)

我刚刚找到了这样做的方法:
在Spark中将值插入具有Counter值的表时,Cassandra会将该值添加到当前值。执行以下SQL:

foreach(var dictValue in dict.Values)
{
  myFunction(dictValue);
}

将产生以下表状态:

INSERT INTO some_table VALUES ('key0', 1)
INSERT INTO some_table VALUES ('key0', 2)