理解Google Spanner(2):数据是如何存储的

阅读本文之前,最好已经阅读过Spanner官方文档。 本文适合以下两类人: A. 如果你读完官方文档完全没能举一反三,还是一头雾水,不知道使用Spanner的正确姿势是什么,以及为什么这些姿势比较正确。那你就可以读一下这篇文章,一定会对你有帮助。 B. 如果你对数据库原理及其实现有一定理解,你读完官方文档已经举一反三大概猜测到了它的实现原理,大神,还是请你读一下这篇文章,交流一下我们理解不一致的地方。

重要的话再说一遍:阅读本文之前,最好已经阅读过Spanner官方文档,带着问题来读这篇文章,收获会更多一些。

(如果你想对Spanner的基本架构有一个概览,可以读一读上一篇:理解Google Spanner(1):数据复制与分片

本文会讲什么

要理解Spanner中的数据是如何被存储、组织的,只有三个关键词:

  • Key-Value数据库
  • LSM-Tree
  • PAX 行列混存