我正在编写一个小程序来记录阅读进度,数据模型很简单:
class BookState(db.Model):
isbn = db.StringProperty()
title = db.StringProperty(required=True)
pages = db.IntegerProperty(required=True)
img = db.StringProperty()
class UpdatePoint(db.Model):
book = db.ReferenceProperty(BookState)
date = db.DateProperty(required=True)
page = db.IntegerProperty(required=True)
UpdatePoint类记录用户在相应的日期已经读了多少页。现在我想从App Engine数据库中存储的数据绘制一个图表,函数如下:
^{pr2}$我发现对于一本大约有40个更新点的书来说,运行代码需要4秒钟以上。在计时之后,我发现注释的代码片段似乎是性能不佳的根源。每个循环大约花费0.08秒或更长时间。在
UpdatePoint似乎是以一种懒散的方式获取的,在需要时才会加载它。我想知道是否有更好的解决方案来加速数据访问,比如批量获取数据。在
非常感谢你的答复。在
从代码的外观来看,你的速度慢下来是因为它在循环中,并且必须弹出一点来找到你想要的对象。你试过类似的东西吗
我好像用错了查询类。我需要打电话ups.获取()首先获取数据。现在的代码比以前快得多:
相关问题 更多 >
编程相关推荐