我们希望实现“新闻Feed”,用户可以在其中查看消息 由她的朋友播放,先用最新消息排序。但 Feed应该反映她朋友列表中的变化。 (如果她补充新的 朋友,来自那些的消息应该包含在Feed中,如果 她删除了朋友,不应该包含他们的消息。)如果我们使用 pubsub-test示例并将收件人列表附加到每封邮件 这意味着当用户使用时会对邮件收件人列表进行大量操作 连接和断开朋友。
我们首先使用传统的RDBMS建模发布 - 订阅“扇出” 思维。它似乎首先工作,但随后,因为IN运算符 按照它的方式工作,我们很快意识到我们无法继续 那条路。我们发现了Brett Slatkin's presentation from last years Google I/O,我们现在已经观看了几次,但目前尚不清楚 我们如何使用“动态”收件人列表。
我们需要的是在建模时如何“思考”的一些提示。
答案 0 :(得分:3)
在Google App for Google App Engine中为此问题提供答案http://groups.google.com/group/google-appengine/browse_thread/thread/09a05c5f41163b4d#作者:Ikai L(Google)
这里有几点想法:
正在删除朋友的常见事件?同样,正在添加 朋友一个共同的事件? (所有亲戚, 相对于“阅读”新闻提要而言
从我记忆中,重读的唯一方法就是写 人们的数据多次 流。 Twitter从中做到了这一点 我记得,使用“最终 一致的“模特。这就是为什么你的 饲料不会更新几个 他们在沉重的时候分钟 加载。但是,普遍的共识是, 是关系的,规范化的 模型根本行不通。
- Jaiku引擎是您研究的开源: http://code.google.com/p/jaikuengine。 这适用于App Engine Hope这些 在考虑设计时提供帮助。