我的web應用程序將有〜150個字段,並且在任何字段(至少一個)中更改值時,我應該保存更改的值。 我應該如何使用GAE存儲這些值?我應該直接將它們保存在數據存儲中嗎?我應該暫時使用memcache,然後在數據存儲中一次保存所有值嗎?或者,應該遵循其他一些方法?什麼應該用於在GAE中存儲數據?
1
A
回答
3
數據存儲是您的數據庫。 Memcache將存儲從數據存儲中獲取的數據並暫時保存在內存中,以避免太多的調用返回到數據庫。您應該首先圍繞數據存儲區設計應用程序,然後使用memcache來提高性能。
根據您選擇的編程語言(java,python,go),有許多工具可幫助您將應用中的對象映射到數據存儲並有效地使用memcache。
0
首先,你應該知道你將如何使用你的數據。您打算製作哪些查詢?你的實體的大小是多少?
數據存儲區與關係數據庫區別很大。那是多少屬性改變並不重要,因爲無法自行更新屬性。你只能整體保存實體。我不知道你的用例,但是應該有一個更好的方法來構造你的數據,而不是單個實體有150個屬性。你的用例是什麼?
另外,實體的屬性太多可能導致索引爆炸,或導致數據存儲寫入速度變慢。
0
我建議你將實體分割成一個根實體和一對連接的實體,每個實體擁有150個屬性中的每一個 - 這樣,當你更新一個屬性時,你只需要保存一個(或者兩個,如果更新反映在根實體上)更小的實體到數據存儲,而不是一個巨大的實體。
使用memcache來防止讀取,而不是存儲去往數據存儲的數據。 Memcache可以刷新並且數據可以在它達到永久存儲之前被銷燬。
往前一步,屬性的分組可以反映真實一起更新數據 - 比如,如果你經常更新街道和郵政編碼在一起,這是有道理的單一結構,讓他們在一起。 Maxim電話:
相關問題
- 1. 什麼是GAE數據存儲配額?
- 2. 我應該如何備份我的應用程序存儲在GAE數據存儲區中的數據?
- 3. 我應該在Git中存儲什麼?
- 4. 什麼數據應該存儲在會話變量中Laravel 5
- 5. 什麼Eclipse元數據文件應該在存儲庫中?
- 6. 在GAE中,什麼是高複製數據存儲?
- 7. 我應該使用什麼數據類型在覈心數據中存儲GUID?
- 8. 在GAE數據存儲
- 9. 在GAE數據存儲
- 10. 什麼應該存儲在緩存中的Web應用程序?
- 11. 什麼用於PhoneGap數據庫存儲
- 12. 什麼應該用於SQLite數據庫
- 13. 什麼時候 - 爲什麼 - 應該將數據存儲在Windows註冊表中?
- 14. GAE數據存儲查詢
- 15. GAE數據存儲同步
- 16. GAE數據存儲結構
- 17. GAE與數據存儲(JDO)
- 18. gae數據存儲備份
- 19. GAE數據存儲ID
- 20. 我應該在Android中使用什麼類型的數據存儲?
- 21. 使用gae將數據存儲到谷歌雲存儲中用於java
- 22. 非數據庫應用程序的GAE數據存儲設置
- 23. 應該是什麼實現數據存儲
- 24. 我應該使用什麼樣的數據模型來存儲歷史數據?
- 25. 我應該使用什麼數據類型來存儲文本數據?
- 26. CoreData或Sqlite應該在iPhone應用程序中用於本地存儲數據
- 27. 如何在GAE數據存儲區中正確保存數據?
- 28. 我應該爲我的ios應用使用什麼類型的數據存儲?
- 29. 從GAE數據存儲複製數據
- 30. nodejs。什麼庫我應該使用會話存儲在MongoDB中
謝謝,有關我的案例的更多細節可以在這裏找到 - http://stackoverflow.com/questions/9232438/how-to-protect-gae-server-side-calculation-logic – 2012-02-28 18:46:30