> For the complete documentation index, see [llms.txt](https://atlas927.gitbook.io/ddia/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://atlas927.gitbook.io/ddia/part-i.md).

# 第一部分：数据系统的基石

本书前四章介绍了数据系统底层的基础概念，无论是在单台机器上运行的单点数据系统，还是分布在多台机器上的分布式数据系统都适用。

1. [第一章](/ddia/part-i/ch1.md)将介绍本书使用的术语和方法。**可靠性，可扩展性和可维护性** ，这些词汇到底意味着什么？如何实现这些目标？
2. [第二章](/ddia/part-i/ch2.md)将对几种不同的**数据模型和查询语言**进行比较。从程序员的角度看，这是数据库之间最明显的区别。不同的数据模型适用于不同的应用场景。
3. [第三章](/ddia/part-i/ch3.md)将深入**存储引擎**内部，研究数据库如何在磁盘上摆放数据。不同的存储引擎针对不同的负载进行优化，选择合适的存储引擎对系统性能有巨大影响。
4. [第四章](https://github.com/atlas927/ddia/tree/315c42dec3e9b1106dce0f2bcd97c222da7f08ac/ch4/README.md)将对几种不同的 **数据编码**进行比较。特别研究了这些格式在应用需求经常变化、模式需要随时间演变的环境中表现如何。

第二部分将专门讨论在**分布式数据系统**中特有的问题。

## 目录

1. [可靠性、可扩展性、可维护性](/ddia/part-i/ch1.md)
2. [数据模型与查询语言](/ddia/part-i/ch2.md)
3. [存储与检索](/ddia/part-i/ch3.md)
4. [编码与演化](/ddia/part-i/ch4.md)&#x20;

| 上一章                    | 目录                           | 下一章                                      |
| ---------------------- | ---------------------------- | ---------------------------------------- |
| [序言](/ddia/preface.md) | [设计数据密集型应用](/ddia/master.md) | [第一章：可靠性、可扩展性、可维护性](/ddia/part-i/ch1.md) |
