谷歌应用程序引擎:使用关键字检索实体与使用查询检索实体的成本和效率



我在不同的地方读到:

投影查询运行速度更快,成本更低完整实体

因为查询结果是通过索引而不是磁盘读取来满足的。请参阅:谷歌文档在这里和评论从Guido Van Rossum在这里。

Guido的注释似乎暗示,通过投影查询检索实体的详细信息比通过键检索实体的细节更快。

然而,Dan Sanderson的"用Python编程GAE"第135页提到:

如果您有密钥。。。您可以快速检索实体,比使用数据存储查询要快得多。

给定一种情况,我可以使用投影查询或实体的密钥(使用get_multi(检索数据:

  1. 使用键或投影查询更快吗
  2. 一种方法比另一种贵吗

建议是一致的。我会尽力澄清的。

  1. 如果你有一个密钥,用它获取一个实体
  2. 如果你没有钥匙,并且你可以用投影来解决你的问题,那就用它吧
  3. 如果没有键,则需要完整实体,然后使用返回完整实体的查询

最新更新