我必须使用spring / spring boot创建一个应用程序,我需要从mongo db读取数据并写入Cassandra db。
在此操作期间,我需要确保是否成功将行写入Cassandra然后我还应该将mongodb中的状态更新为同一行以“处理”以表示数据正在cassandra中成功插入。例如。作为最终目标,如果我在mongodb中有100行,并且如果我能够在Cassandra中成功插入99行,那么我应该在mongo db中更新99行以表示行已处理,我需要忽略1行,这是不能插入Cassandra和mongo中,它的状态应仅为当前(“待定”)。
所以我认为我需要使用类似语义的事务来处理它,这样对于每个记录我要么在DB中提交,要么不提交行(如果有任何问题),那么状态是一致的。
因为我对mongo和Cassandra相对较新:
有人可以和我分享一下像语义这样的交易,可以帮助我解决上述情况吗?
任何其他建议也会有所帮助。
谢谢!