在App Engine上,读取的优化意味着什么?

时间:2010-04-22 21:11:49

标签: python google-app-engine

在Google App Engine的文档中,它说在为数据存储区设计数据模型时,您应该“优化读取而非写入”。这到底是什么意思?什么更“昂贵”,CPU密集型或耗时?

3 个答案:

答案 0 :(得分:2)

这意味着“读取”比“写入”便宜。 “写作”需要更多时间和更多资源。有关更多信息,请查看来自Google I / 0 2008的Brett Slatkin的演示文稿“Building Scalable Web Applications with Google App Engine”(幻灯片7-8)

答案 1 :(得分:0)

“优化读取而非写入”意味着您应该期望看到更多读取而不是写入,因此您应该努力使其尽可能简单地读取数据,即使这可能会减慢写入速度。对于计算机来说很容易,也就是说,例如,如果要以全小写显示名称,则应在将它们写入数据库时​​将它们小写,而不是每次从数据库中读取它们时将它们小写。这只是一个例子,但希望它能让事情变得清晰。

答案 2 :(得分:0)

同意@redtuna(期望更多读取而不是写入)和@Ilian Iliev(读取比写入更便宜,并且写入需要更多资源)。另一种可以优化读取的方法是使用Memcache服务。由于读取(通常)比写入更频繁,因此缓存该数据意味着您甚至不必占用数据存储区访问权限。此外,保持活动状态的项目(请参阅提取/命中)会因使用LRU策略而在缓存中停留更长时间。