我有一個長時間運行的作業,可以更新1000個實體組。之後我想開始第二份工作,而且必須假設所有這些項目都已更新。由於實體組有很多,所以我不能在事務中這樣做,所以我剛安排第二個作業在第一個完成使用任務隊列後15分鐘運行。如何知道Google AppEngine HRD數據存儲的更新何時完成?
有沒有更好的方法?
假設15分鐘可以承諾數據存儲與我以前的調用保持同步,是否安全?
我正在使用高複製。
在關於HRD的Google IO視頻中,他們列出了處理最終一致性的方法。其中之一是「接受它」。一些更新(如twitter帖子)不需要與下一次閱讀一致。但他們也說過這樣的話:「嘿,我們只是在幾秒鐘之前說話毫秒,然後才能保持一致」。那個時間框架記錄在其他地方嗎?假如在再次閱讀之前等待寫一分鐘後等待是否安全,這意味着所有我的優先寫作都在閱讀中?
的該一提的是在39:30它標記在這個視頻http://www.youtube.com/watch?feature=player_embedded&v=xO015C3R6dw
我已經在下面給出了部分答案,但是您能否提供有關您正在嘗試做什麼的更多信息? – mjaggard 2012-02-13 13:33:40
基本上我插入或更新1000個實體。當這項工作完成後,我需要對這些項目進行排名。所以我運行一個查詢來選擇所有的記錄,並按照我關心排名的字段排序。然後我更新另一個實體類型的等級。如果實體在查詢中缺失,那麼排名顯然會消失。 – user963263 2012-02-14 04:25:18