在Google App Engine的文档中,它说在为数据存储区设计数据模型时,您应该“优化读取而非写入”。这到底是什么意思?什么更“昂贵”,CPU密集型或耗时?
答案 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策略而在缓存中停留更长时间。