[英]Appengine Search API vs Datastore
我正在嘗試決定是否應該將App-engine Search API或Datastore用於App-engine Connected Android Project。 谷歌文檔的唯一區別是
...索引搜索可以找到不超過10,000個匹配的文檔。 App Engine數據存儲可能更適合需要檢索非常大的結果集的應用程序。
鑒於我已經非常熟悉數據存儲區:假設我不需要10,000個結果,有人會幫助我嗎?
Search API
與使用數據存儲為我的查詢(根據上面的報價,這似乎是合理使用一個或其他)? 在我的情況下,最終用戶必須能夠搜索,更新現有條目並創建新實體。 例如,如果我的應用是書店,則用戶必須能夠添加新書,向現有書籍添加評論,搜索特定書籍。 其他一些信息:
關鍵的區別在於,使用數據存儲區,您無法在實體內部進行搜索。 如果您有一本名為“戰爭與和平”的書,如果用戶在搜索框中輸入“戰爭和平”,則無法找到它。 與評論等相同。因此,它不是一個真正的選擇。
搜索API最嚴重的內容是最終一致性,如下所述: https : //developers.google.com/appengine/docs/java/search/#Java_Consistency
這意味着當您使用Search API添加或更新記錄時,它可能不會立即反映更改。 想象一下,用戶上傳書籍或更新其帳戶設置的情況,沒有任何變化,因為尚未更改所有服務器。
我認為Search API只對一件事有好處:搜索。 它基本上充當數據存儲區中數據的搜索引擎。
所以我的建議是將數據保存在用戶期望立即產生結果的數據存儲區中,並使用Search API搜索用戶不希望立即產生結果的數據。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.