我正在尝试在Bluemix中使用移动数据服务,我遇到了最后一次写赢的术语。任何人都可以解释它是什么吗? 除了它之外还有哪些其他选择
答案 0 :(得分:1)
查看CouchDB和MongoDB如何执行一致性...... MongoDB使用锁来实现一致性,而CouchDB使用最终的一致性。移动数据基于Cloudant(CouchDB),因此移动数据使用最终一致性“最后写入获胜”的原因。
答案 1 :(得分:0)
我对"最后一次写作的理解"是这样的: 使用Selenium我是第一个在网站上预订网球场的用户。然而,另一个用户也设法写入我们相同的预订,相隔几毫秒。预订必须在早上7点完成。这给了我们整整一秒。我设法预定了法庭并收到了我已经成功预定了这个法庭的电子邮件通知。然而,我的同事稍晚(在第二个内)最终成为最后一个写入(退出)预订的用户(在一秒内),他还收到了电子邮件通知。但令我烦恼的是,他的名字在网站上以预订法庭的用户身份出现。他是最后一次写入数据库,他赢了 - 尽管我最初打他到法院预订。一旦我进行了最后一次写作,可能还有一千秒就足以让他获得最后的写作。
甘兹
答案 2 :(得分:0)
最后写入获胜是一种在使用复制时决定哪些数据是最新的策略。卡桑德拉就是一个例子。这很简单&快速(使用时间戳)但保证有限 - 它可能导致丢失更新/写入。原因是计算机系统中的时间不准确,节点有时会下降。
答案 3 :(得分:-1)
上次写入获胜基本上是在通过File Sync插件同步移动应用程序的文件时使用的。
当多个应用程序更新相同文件时,文件同步仅限于使用“最后写入获胜”策略。在“最后写入获胜”中,设备的副本将覆盖由文件同步存储的副本。产生的行为取决于您是以自动模式还是手动模式运行。“
您可以访问以下链接以获取参考:
https://www.ng.bluemix.net/docs/#services/mobiledata/index.html#filesync