fix several missing image links

This commit is contained in:
Yin Gang 2021-08-18 10:07:22 +08:00
parent b35ee45282
commit 8348233231
3 changed files with 3 additions and 3 deletions

2
ch5.md
View File

@ -52,7 +52,7 @@
![](img/fig5-2.png)
**图5-2 基于领导者的复制:一个同步从库和一个异步从库**
在[图5-2]()的示例中从库1的复制是同步的在向用户报告写入成功并使结果对其他用户可见之前主库需要等待从库1的确认确保从库1已经收到写入操作。以及在使写入对其他客户端可见之前接收到写入。跟随者2的复制是异步的主库发送消息但不等待从库的响应。
在[图5-2](img/fig5-2.png)的示例中从库1的复制是同步的在向用户报告写入成功并使结果对其他用户可见之前主库需要等待从库1的确认确保从库1已经收到写入操作。以及在使写入对其他客户端可见之前接收到写入。跟随者2的复制是异步的主库发送消息但不等待从库的响应。
在这幅图中从库2处理消息前存在一个显著的延迟。通常情况下复制的速度相当快大多数数据库系统能在一秒向从库应用变更但它们不能提供复制用时的保证。有些情况下从库可能落后主库几分钟或更久例如从库正在从故障中恢复系统在最大容量附近运行或者如果节点间存在网络问题。

2
ch6.md
View File

@ -55,7 +55,7 @@
### 根据键的范围分区
一种分区的方法是为每个分区指定一块连续的键范围(从最小值到最大值),如纸质百科全书的卷([图6-2]())。如果知道范围之间的边界,则可以轻松确定哪个分区包含某个值。如果您还知道分区所在的节点,那么可以直接向相应的节点发出请求(对于百科全书而言,就像从书架上选取正确的书籍)。
一种分区的方法是为每个分区指定一块连续的键范围(从最小值到最大值),如纸质百科全书的卷([图6-2](img/fig6-2.png))。如果知道范围之间的边界,则可以轻松确定哪个分区包含某个值。如果您还知道分区所在的节点,那么可以直接向相应的节点发出请求(对于百科全书而言,就像从书架上选取正确的书籍)。
![](img/fig6-2.png)

2
ch7.md
View File

@ -805,7 +805,7 @@ WHERE room_id = 123 AND
在两阶段锁定的上下文中,我们讨论了索引范围锁(请参阅“[索引范围锁](#索引范围锁)”),它允许数据库锁定与某个搜索查询匹配的所有行的访问权,例如 `WHERE shift_id = 1234`。可以在这里使用类似的技术除了SSI锁不会阻塞其他事务。
在[图7-11]()中事务42 和43 都在班次1234 查找值班医生。如果在`shift_id`上有索引则数据库可以使用索引项1234 来记录事务42 和43 读取这个数据的事实。 (如果没有索引,这个信息可以在表级别进行跟踪)。这个信息只需要保留一段时间:在一个事务完成(提交或中止),并且所有的并发事务完成之后,数据库就可以忘记它读取的数据了。
在[图7-11](img/fig7-11.png)中事务42 和43 都在班次1234 查找值班医生。如果在`shift_id`上有索引则数据库可以使用索引项1234 来记录事务42 和43 读取这个数据的事实。 (如果没有索引,这个信息可以在表级别进行跟踪)。这个信息只需要保留一段时间:在一个事务完成(提交或中止),并且所有的并发事务完成之后,数据库就可以忘记它读取的数据了。
当事务写入数据库时,它必须在索引中查找最近曾读取受影响数据的其他事务。这个过程类似于在受影响的键范围上获取写锁,但锁并不会阻塞事务指导其他读事务完成,而是像警戒线一样只是简单通知其他事务:你们读过的数据可能不是最新的啦。