结论

    当启动PNUTS项目时,我们希望该系统能够无缝地扩展到跨域多个州的成千上万的服务器。构建这样的系统不仅需要巧妙的工程技术,也要求我们在数据库很多已有的领域继续探索。虽然放弃ACID特性是相对轻松的决策,但是我们很快发现需要提出其他的方案来取代它,因此我们提出了时间轴一致性模型。虽然该模型在设计上相对简单,但处理复杂的极端案例(crner cases),提出有效的实现机制以及构建应用用例模型都需要反复深入的思考。值得一提的是,刚开始我们的客户和我们自己都不太关心该系统只支持简单的查询语言的不足。但是,随着开发者开始试着在PNUTS上构建真正的应用,我们意识到该系统不能处理的小部分复杂查询将影响该系统被采用。如果我们不提出解决这些问题的机制,那么开发者就需要采用一些复杂的变通方案,在应用内部实现代价高的操作(如嵌套连接)或者是频繁地将数据导出到其他的索引来支持他们应用的工作负荷。

    该领域是云数据管理的新兴领域,这在很多其他可选系统设计的构建和部署中也体现出来。我们希望PNUTS的思想有助于我们更接近构建易于管理、广泛应用、多租户(mltitenanted)云数据库系统的目标,为应用提供弹性、高效、全球可用的和无比健壮的数据后台。