我正在寻找存储大量与另一个实体有一对多关系的评论实体的最佳做法。
我读了很多关于数据存储区的限制,但不知道如何解决这个问题。
由于1MB实体限制,我无法将它们存储为structured properties。
Guido van Rossum也回答了关于repeated properties的问题,“如果你的值超过100-1000”,请不要使用重复的属性。 所以重复的属性也不能解决我的评论。
最后的问题:解决这个问题的最佳做法是什么?祖先是个机会吗?
编辑:在这个关于ancestor or reference properties的问题中,Nick Johnson提到“具有相同父级的每个实体都将在同一个实体组中,并且对实体组的写入是序列化的,因此在这里使用祖先会减慢速度你正在同时编写多个实体。由于组中的所有实体都是由构成你实例中组的根的用户“拥有”,但这不应该是一个问题 - 实际上,你是什么?重做实际上是一种推荐的设计模式。“
“同时写多个实体意味着什么”究竟是什么意思?当不同的用户同时向该实体发表评论?
答案 0 :(得分:2)
取决于您每张帐单的读/写金额。
您可以将引用存储超过1000(直到数量取决于密钥大小以及引用它们的方式)作为json压缩的无索引属性。但请注意参考和取消该金额。另外,您在每次请求时传输的开销和数据量都很大。您不希望在服务器上对1000000个压缩实体键执行操作,只需要一个简单的请求。如果您采用这种方式尝试优化此方法,请尽可能智能地在客户端上执行此操作。
去寻找祖先和/或优化你的逻辑以保持一致(例如,如果没有立即显示注释并不重要)并使用迭代器或指针或搜索(无论它叫什么)