使用Python在Google Appengine上创建线程评论的模型

时间:2012-03-22 09:15:48

标签: python google-app-engine

我正在尝试编写一个可以线程化的注释模型(子线程数量没有限制)。我如何在Appengine中执行此操作?什么是阅读所有评论的最快方式?

我试图以可扩展的方式做到这一点,以便app引擎的新定价不会杀死我的创业公司:)

2 个答案:

答案 0 :(得分:0)

这取决于您希望获得的嵌套线程以及是否要优化读取或写入。如果我们猜测线程通常非常浅,并且您希望优化读取注释的所有级别上的所有子注释,我认为您应该将每个注释存储在单独的条目中,然后在父级的列表中引用它和父母的父母等等。

这样,获取所有子注释总是只有一个调用,但是编写新注释会慢一点,因为你必须修改所有父项。

答案 1 :(得分:0)

如果您需要快速阅读所有评论,请在评论模型中保留对父评论的引用,但也要添加对整个主题的引用。然后,您将能够使用Comment.query(Comment.topic=12334).fetch()获取该主题的所有评论。

如果您担心数据存储使用成本使用http://code.google.com/p/appengine-ndb-experiment/。它允许使用减少保存的数据量和查询数量。很快它将取代当前的db模块。