0
如何确保一个用户插入不受其他用户的影响?在cassandra中的交易和我正在使用gocql
像交易...
你结合使用批处理作业用IF NOT EXISTS?
BEGIN UNLOGGED BATCH
INSERT INTO atable ("user1") value (10)
INSERT INTO atable ("user2") value (-10)
APPLY BATCH
如何确保一个用户插入不受其他用户的影响?在cassandra中的交易和我正在使用gocql
像交易...
你结合使用批处理作业用IF NOT EXISTS?
BEGIN UNLOGGED BATCH
INSERT INTO atable ("user1") value (10)
INSERT INTO atable ("user2") value (-10)
APPLY BATCH
卡桑德拉在2.0中引入'light weight' transaction,但它不完全尊重ACID属性。
它使用Paxos来保证这种“轻量级”事务的原子性,但它缺少处理并发事务的隔离解决方案。
一个解决方案可以在Cassandra上自己实现两个阶段锁定或某种乐观并发控制。