2012-04-23 34 views
0

其中在少谷歌App Engine的數據存儲命中接近查詢結果()數據存儲價格:取VS在谷歌應用程序引擎

  1. 單dataobject.fetch(限= 10)或
  2. dataobject.get( )重複了10次。
+0

你的意思是,「query.fetch(10)」vs「db.get(key)x 10」? – Albert 2012-04-23 10:59:21

+0

不,我想在兩種情況下返回整個實體。從同一個鏈接看,get()的成本比fetch()的成本要低。 – Andrew 2012-04-23 12:26:17

回答

2

對於(1):1×QUERY + 10×GET =(每個條目中取出一個)11個READ操作= 11×60 = 660個micropennies

對於(2):10×GET = 10讀取操作= 10 x 60 = 600 micropennis

您最便宜的選擇是實際查詢並獲取條目的「鍵」。如果您不需要訪問每個正在提取的條目的數據,則這將起作用:

最便宜的:Query(keys_only = True):1 x QUERY + 10 x SMALL_GET = 1 READ + 10 SMALL = 60 + 10 * 10 = 160個小便士。

請注意,如果您遍歷所收到的密鑰並再次查詢每個數據,最便宜的代價會更高。在這種情況下,10x10 = 100微型將成爲開銷。