2012-03-07 130 views
0

我有兩個實體:用戶(id,名稱,groupId)和組(id,title)。我想在我的網格中顯示所有用戶:| id | name |組標題|。使用組標題的用戶的最佳方式是什麼? (使用低級別的API並且不需要反規範化)從數據存儲讀取數據

回答

0

沒有反規範化或更改模型定義,實際上只有一種方法:獲取所有用戶,創建一組groupIds並使用查詢獲取Group實體。不幸的是,你的系統不能很好地擴展,因爲這種方法不能很好地利用數據存儲。

爲了提高性能和可伸縮性,我們可以做的一件事情是存儲組實體的實際數據存儲Id,然後使用Group.get_by_id()一次獲取所有實體,而不是單獨查詢。這充分利用了get_by_id()(如get_by_key_name()比查詢實體值更快的事實,並且還可以通過一次調用請求所有ID,顯着減少了AppEngine需要完成的工作量。

相關問題