minor fix

This commit is contained in:
jiajiadebug 2020-03-27 17:46:48 +08:00
parent 583167dfc1
commit c8d2739e6f
3 changed files with 4 additions and 3 deletions

3
ch2.md
View File

@ -55,7 +55,7 @@
* 关系模型不能很好地支持一些特殊的查询操作 * 关系模型不能很好地支持一些特殊的查询操作
* 受挫于关系模型的限制性渴望一种更具多动态性与表现力的数据模型【5】 * 受挫于关系模型的限制性渴望一种更具多动态性与表现力的数据模型【5】
不同的应用程序有不同的需求,一个用例的最佳技术选择可能不同于另一个用例的最佳技术选择。因此,在可预见的未来,关系数据库似乎可能会继续与各种非关系数据库一起使用 - 这种想法有时也被称为**混合持久化polyglot persistence** 不同的应用程序有不同的需求,一个用例的最佳技术选择可能不同于另一个用例的最佳技术选择。因此,在可预见的未来,关系数据库似乎可能会继续与各种非关系数据库一起使用 - 这种想法有时也被称为**混合持久化polyglot persistence**
### 对象关系不匹配 ### 对象关系不匹配
@ -76,6 +76,7 @@
* 第三种选择是将职业教育和联系信息编码为JSON或XML文档将其存储在数据库的文本列中并让应用程序解析其结构和内容。这种配置下通常不能使用数据库来查询该编码列中的值。 * 第三种选择是将职业教育和联系信息编码为JSON或XML文档将其存储在数据库的文本列中并让应用程序解析其结构和内容。这种配置下通常不能使用数据库来查询该编码列中的值。
对于一个像简历这样自包含文档的数据结构而言JSON表示是非常合适的参见[例2-1]()。JSON比XML更简单。面向文档的数据库如MongoDB 【9】RethinkDB 【10】CouchDB 【11】和Espresso【12】支持这种数据模型。 对于一个像简历这样自包含文档的数据结构而言JSON表示是非常合适的参见[例2-1]()。JSON比XML更简单。面向文档的数据库如MongoDB 【9】RethinkDB 【10】CouchDB 【11】和Espresso【12】支持这种数据模型。
**例2-1. 用JSON文档表示一个LinkedIn简介** **例2-1. 用JSON文档表示一个LinkedIn简介**
```json ```json

2
ch3.md
View File

@ -293,7 +293,7 @@ LSM树可以被压缩得更好因此经常比B树在磁盘上产生更小的
B树的一个优点是每个键只存在于索引中的一个位置而日志结构化的存储引擎可能在不同的段中有相同键的多个副本。这个方面使得B树在想要提供强大的事务语义的数据库中很有吸引力在许多关系数据库中事务隔离是通过在键范围上使用锁来实现的在B树索引中这些锁可以直接连接到树【5】。在[第7章](ch7.md)中,我们将更详细地讨论这一点。 B树的一个优点是每个键只存在于索引中的一个位置而日志结构化的存储引擎可能在不同的段中有相同键的多个副本。这个方面使得B树在想要提供强大的事务语义的数据库中很有吸引力在许多关系数据库中事务隔离是通过在键范围上使用锁来实现的在B树索引中这些锁可以直接连接到树【5】。在[第7章](ch7.md)中,我们将更详细地讨论这一点。
B树在数据库体系结构中是非常根深蒂固的为许多工作负载提供始终如一的良好性能所以它们不可能很快就会消失。在新的数据存储中日志结构化索引变得越来越流行。没有快速和容易的规则来确定哪种类型的存储引擎对你的场景更好所以值得进行一些经验上的测试 B树在数据库体系结构中是非常根深蒂固的为许多工作负载提供始终如一的良好性能所以它们不可能很快就会消失。在新的数据存储中日志结构化索引变得越来越流行。没有快速和容易的规则来确定哪种类型的存储引擎对你的场景更好所以值得进行一些经验上的测试
### 其他索引结构 ### 其他索引结构

2
ch4.md
View File

@ -380,7 +380,7 @@ Web以这种方式工作客户Web浏览器向Web服务器发出请求
Web浏览器不是唯一的客户端类型。例如在移动设备或桌面计算机上运行的本地应用程序也可以向服务器发出网络请求并且在Web浏览器内运行的客户端JavaScript应用程序可以使用XMLHttpRequest成为HTTP客户端该技术被称为Ajax 【30】。在这种情况下服务器的响应通常不是用于显示给人的HTML而是用于便于客户端应用程序代码如JSON进一步处理的编码数据。尽管HTTP可能被用作传输协议但顶层实现的API是特定于应用程序的客户端和服务器需要就该API的细节达成一致。 Web浏览器不是唯一的客户端类型。例如在移动设备或桌面计算机上运行的本地应用程序也可以向服务器发出网络请求并且在Web浏览器内运行的客户端JavaScript应用程序可以使用XMLHttpRequest成为HTTP客户端该技术被称为Ajax 【30】。在这种情况下服务器的响应通常不是用于显示给人的HTML而是用于便于客户端应用程序代码如JSON进一步处理的编码数据。尽管HTTP可能被用作传输协议但顶层实现的API是特定于应用程序的客户端和服务器需要就该API的细节达成一致。
此外服务器本身可以是另一个服务的客户端例如典型的Web应用服务器充当数据库的客户端。这种方法通常用于将大型应用程序按照功能区域分解为较小的服务这样当一个服务需要来自另一个服务的某些功能或数据时就会向另一个服务发出请求。这种构建应用程序的方式传统上被称为**面向服务的体系结构service-oriented architectureSOA**,最近被改进和更名为**微服务架构 **【31,32】。 此外服务器本身可以是另一个服务的客户端例如典型的Web应用服务器充当数据库的客户端。这种方法通常用于将大型应用程序按照功能区域分解为较小的服务这样当一个服务需要来自另一个服务的某些功能或数据时就会向另一个服务发出请求。这种构建应用程序的方式传统上被称为**面向服务的体系结构service-oriented architectureSOA**,最近被改进和更名为**微服务架构**【31,32】。
在某些方面服务类似于数据库它们通常允许客户端提交和查询数据。但是虽然数据库允许使用我们在第2章 中讨论的查询语言进行任意查询但是服务公开了一个特定于应用程序的API它只允许由服务的业务逻辑应用程序代码预定的输入和输出【33】。这种限制提供了一定程度的封装服务可以对客户可以做什么和不可以做什么施加细粒度的限制。 在某些方面服务类似于数据库它们通常允许客户端提交和查询数据。但是虽然数据库允许使用我们在第2章 中讨论的查询语言进行任意查询但是服务公开了一个特定于应用程序的API它只允许由服务的业务逻辑应用程序代码预定的输入和输出【33】。这种限制提供了一定程度的封装服务可以对客户可以做什么和不可以做什么施加细粒度的限制。