Jam*_*man 6 google-app-engine nosql google-cloud-datastore
我对Google App Engine高复制数据存储区(HRD)上的"实体组"感到有些困惑.Google文档提到HRD每个实体组只允许每秒写入1次.
这到底是什么意思?这是每个用户请求写1个还是每个实体写1个(我假设它与"表"的概念类似).
例如,如果我有一个"用户"实体和一个"发布"表.如果"Post"是"User"的祖先:
我有什么选择来缓解这个问题?同时制作"用户"和"发布"根实体是否合理?这是否允许我在1次写入限制之外创建多个"Post"实例?如果说1000个用户同时创建"发布"条目,我想避免任何潜在的问题.
"实体组"是不是像"表".在appengine数据存储区中没有任何意味着"表".您应该只考虑实体和索引.
当您希望能够以事务方式执行操作时,您只能使用实体组.对于带有"帖子"的博客,如果您以事务方式添加或删除帖子可能无关紧要,因此它们不需要位于实体组中.
我的应用程序中有大约15种不同的实体,大约1.5M.每一个都是一个根实体,甚至是相关实体,我认为这是AppEngine的理想选择.据我所知,实体组的唯一目的是支持多个实体的原子操作 - 它们不是组织工具.
PS:关于你对实体组限制的问题(我认为现在对你来说基本上没有意义):写入限制是每个实体,而不是每个请求.1.实体不会创建其他实体.2.如果所有帖子都在同一个实体组中,那么是的,你每秒只能节省1个.3.如果每个用户都在自己的实体组中,您可以同时在每个相同的组中写一个帖子,每次多次,如您所愿.只是没有一个组可以每秒写一次以上.是的,我认为"用户"和"发布"都应该是根实体.
归档时间: |
|
查看次数: |
517 次 |
最近记录: |