mirror of
https://github.com/Vonng/ddia.git
synced 2026-06-21 00:47:05 +08:00
Normalize zh and tw front matter emphasis
This commit is contained in:
parent
131cee08cb
commit
0ba6234d3a
6 changed files with 54 additions and 54 deletions
|
|
@ -12,7 +12,7 @@ breadcrumbs: false
|
|||
|
||||
**Martin Kleppmann** 是英國劍橋大學副教授,教授分散式系統與密碼學協議。2017 年出版的《設計資料密集型應用》第一版確立了他在資料系統領域的權威地位;他在分散式系統方面的研究也推動了 local-first 軟體運動。此前他曾在 LinkedIn、Rapportive 等網際網路公司擔任軟體工程師和創業者,負責大規模資料基礎設施。
|
||||
|
||||
**Chris Riccomini** 是軟體工程師、創業投資人和作者,擁有 15 年以上在 PayPal、LinkedIn、WePay 的工作經驗。他運營 Materialized View Capital,專注於基礎設施初創企業投資;同時也是 Apache Samza 與 SlateDB 的共同創造者,併合著了 *The Missing README: A Guide for the New Software Engineer*。
|
||||
**Chris Riccomini** 是軟體工程師、創業投資人和作者,擁有 15 年以上在 PayPal、LinkedIn、WePay 的工作經驗。他運營 Materialized View Capital,專注於基礎設施初創企業投資;同時也是 Apache Samza 與 SlateDB 的共同創造者,併合著了 **The Missing README: A Guide for the New Software Engineer**。
|
||||
|
||||

|
||||
|
||||
|
|
|
|||
|
|
@ -12,12 +12,12 @@ breadcrumbs: false
|
|||
|
||||
### 原子(atomic)
|
||||
|
||||
1. 在併發語境下:指一個操作看起來在某個單一時刻生效,其他併發程序不會看到它處於“半完成”狀態。另見 *isolation*。
|
||||
1. 在併發語境下:指一個操作看起來在某個單一時刻生效,其他併發程序不會看到它處於“半完成”狀態。另見 **isolation**。
|
||||
2. 在事務語境下:指一組寫入要麼全部提交、要麼全部回滾,即使發生故障也不例外。參見“[原子性](/tw/ch8#sec_transactions_acid_atomicity)”和“[兩階段提交(2PC)](/tw/ch8#sec_transactions_2pc)”。
|
||||
|
||||
### 背壓(backpressure)
|
||||
|
||||
當接收方跟不上時,強制傳送方降速。也稱為 *flow control*。參見“[系統過載後無法恢復時會發生什麼](/tw/ch2#sidebar_metastable)”。
|
||||
當接收方跟不上時,強制傳送方降速。也稱為 **flow control**。參見“[系統過載後無法恢復時會發生什麼](/tw/ch2#sidebar_metastable)”。
|
||||
|
||||
### 批處理(batch process)
|
||||
|
||||
|
|
@ -69,7 +69,7 @@ breadcrumbs: false
|
|||
|
||||
### 分散式(distributed)
|
||||
|
||||
系統在多個透過網路連線的節點上執行。其典型特徵是 *部分失效*:一部分壞了,另一部分仍在工作,而軟體往往難以精確知道哪裡壞了。參見“[故障與部分失效](/tw/ch9#sec_distributed_partial_failure)”。
|
||||
系統在多個透過網路連線的節點上執行。其典型特徵是 **部分失效**:一部分壞了,另一部分仍在工作,而軟體往往難以精確知道哪裡壞了。參見“[故障與部分失效](/tw/ch9#sec_distributed_partial_failure)”。
|
||||
|
||||
### 永續性(durable)
|
||||
|
||||
|
|
@ -89,23 +89,23 @@ Extract-Transform-Load(提取-轉換-載入):從源資料庫抽取資料
|
|||
|
||||
### 流量控制(flow control)
|
||||
|
||||
見 *backpressure*。
|
||||
見 **backpressure**。
|
||||
|
||||
### 追隨者(follower)
|
||||
|
||||
不直接接收客戶端寫入、僅應用來自主節點變更的副本。也稱 *secondary*、*read replica* 或 *hot standby*。參見“[單主複製](/tw/ch6#sec_replication_leader)”。
|
||||
不直接接收客戶端寫入、僅應用來自主節點變更的副本。也稱 **secondary**、**read replica** 或 **hot standby**。參見“[單主複製](/tw/ch6#sec_replication_leader)”。
|
||||
|
||||
### 全文檢索(full-text search)
|
||||
|
||||
按任意關鍵詞搜尋文字,通常支援近似拼寫、同義詞等能力。全文索引是支援此類查詢的一種 *secondary index*。參見“[全文檢索](/tw/ch4#sec_storage_full_text)”。
|
||||
按任意關鍵詞搜尋文字,通常支援近似拼寫、同義詞等能力。全文索引是支援此類查詢的一種 **secondary index**。參見“[全文檢索](/tw/ch4#sec_storage_full_text)”。
|
||||
|
||||
### 圖(graph)
|
||||
|
||||
由 *vertices*(可引用物件,也稱 *nodes* 或 *entities*)和 *edges*(頂點間連線,也稱 *relationships* 或 *arcs*)組成的資料結構。參見“[圖狀資料模型](/tw/ch3#sec_datamodels_graph)”。
|
||||
由 **vertices**(可引用物件,也稱 **nodes** 或 **entities**)和 **edges**(頂點間連線,也稱 **relationships** 或 **arcs**)組成的資料結構。參見“[圖狀資料模型](/tw/ch3#sec_datamodels_graph)”。
|
||||
|
||||
### 雜湊(hash)
|
||||
|
||||
把輸入對映成看似隨機數字的函式。相同輸入總得相同輸出;不同輸入通常輸出不同,但也可能碰撞(*collision*)。參見“[按鍵的雜湊分片](/tw/ch7#sec_sharding_hash)”。
|
||||
把輸入對映成看似隨機數字的函式。相同輸入總得相同輸出;不同輸入通常輸出不同,但也可能碰撞(**collision**)。參見“[按鍵的雜湊分片](/tw/ch7#sec_sharding_hash)”。
|
||||
|
||||
### 冪等(idempotent)
|
||||
|
||||
|
|
@ -117,7 +117,7 @@ Extract-Transform-Load(提取-轉換-載入):從源資料庫抽取資料
|
|||
|
||||
### 隔離性(isolation)
|
||||
|
||||
在事務語境下,併發事務相互干擾的程度。*Serializable* 最強,也常用更弱隔離級別。參見“[隔離性](/tw/ch8#sec_transactions_acid_isolation)”。
|
||||
在事務語境下,併發事務相互干擾的程度。**Serializable** 最強,也常用更弱隔離級別。參見“[隔離性](/tw/ch8#sec_transactions_acid_isolation)”。
|
||||
|
||||
### 連線(join)
|
||||
|
||||
|
|
@ -125,7 +125,7 @@ Extract-Transform-Load(提取-轉換-載入):從源資料庫抽取資料
|
|||
|
||||
### 領導者(leader)
|
||||
|
||||
當資料或服務跨多個節點複製時,被指定為可接受寫入的副本。可透過協議選舉或管理員指定。也稱 *primary* 或 *source*。參見“[單主複製](/tw/ch6#sec_replication_leader)”。
|
||||
當資料或服務跨多個節點複製時,被指定為可接受寫入的副本。可透過協議選舉或管理員指定。也稱 **primary** 或 **source**。參見“[單主複製](/tw/ch6#sec_replication_leader)”。
|
||||
|
||||
### 線性一致(linearizable)
|
||||
|
||||
|
|
@ -141,7 +141,7 @@ Extract-Transform-Load(提取-轉換-載入):從源資料庫抽取資料
|
|||
|
||||
### 日誌(log)
|
||||
|
||||
只追加寫入的資料檔案。*WAL* 用於崩潰恢復(參見“[讓 B 樹可靠](/tw/ch4#sec_storage_btree_wal)”);*log-structured* 儲存把日誌作為主儲存格式(參見“[日誌結構儲存](/tw/ch4#sec_storage_log_structured)”);*replication log* 用於主從複製(參見“[單主複製](/tw/ch6#sec_replication_leader)”);*event log* 可表示資料流(參見“[基於日誌的訊息代理](/tw/ch12#sec_stream_log) ”)。
|
||||
只追加寫入的資料檔案。**WAL** 用於崩潰恢復(參見“[讓 B 樹可靠](/tw/ch4#sec_storage_btree_wal)”);**log-structured** 儲存把日誌作為主儲存格式(參見“[日誌結構儲存](/tw/ch4#sec_storage_log_structured)”);**replication log** 用於主從複製(參見“[單主複製](/tw/ch6#sec_replication_leader)”);**event log** 可表示資料流(參見“[基於日誌的訊息代理](/tw/ch12#sec_stream_log) ”)。
|
||||
|
||||
### 物化(materialize)
|
||||
|
||||
|
|
@ -165,15 +165,15 @@ Online Transaction Processing(線上事務處理):典型訪問模式是快
|
|||
|
||||
### 分片(sharding)
|
||||
|
||||
把單機裝不下的大資料集或計算拆成更小部分並分散到多臺機器上。也稱 *partitioning*。參見[第 7 章](/tw/ch7#ch_sharding)。
|
||||
把單機裝不下的大資料集或計算拆成更小部分並分散到多臺機器上。也稱 **partitioning**。參見[第 7 章](/tw/ch7#ch_sharding)。
|
||||
|
||||
### 百分位(percentile)
|
||||
|
||||
透過統計多少值高於/低於某閾值來描述分佈。例如某時段 95 分位響應時間為 *t*,表示 95% 請求耗時小於 *t*,5% 更長。參見“[描述效能](/tw/ch2#sec_introduction_percentiles)”。
|
||||
透過統計多少值高於/低於某閾值來描述分佈。例如某時段 95 分位響應時間為 **t**,表示 95% 請求耗時小於 **t**,5% 更長。參見“[描述效能](/tw/ch2#sec_introduction_percentiles)”。
|
||||
|
||||
### 主鍵(primary key)
|
||||
|
||||
唯一標識一條記錄的值(通常為數字或字串)。在很多應用中由系統在建立時生成(順序或隨機),而非使用者手工指定。另見 *secondary index*。
|
||||
唯一標識一條記錄的值(通常為數字或字串)。在很多應用中由系統在建立時生成(順序或隨機),而非使用者手工指定。另見 **secondary index**。
|
||||
|
||||
### 法定票數(quorum)
|
||||
|
||||
|
|
@ -185,7 +185,7 @@ Online Transaction Processing(線上事務處理):典型訪問模式是快
|
|||
|
||||
### 複製(replication)
|
||||
|
||||
在多個節點(*replicas*)上儲存同一份資料,以便部分節點不可達時仍可訪問。參見[第 6 章](/tw/ch6#ch_replication)。
|
||||
在多個節點(**replicas**)上儲存同一份資料,以便部分節點不可達時仍可訪問。參見[第 6 章](/tw/ch6#ch_replication)。
|
||||
|
||||
### 模式(schema)
|
||||
|
||||
|
|
@ -197,7 +197,7 @@ Online Transaction Processing(線上事務處理):典型訪問模式是快
|
|||
|
||||
### 可序列化(serializable)
|
||||
|
||||
一種 *isolation* 保證:多個事務併發執行時,行為等價於某個序列順序逐個執行。參見“[可序列化](/tw/ch8#sec_transactions_serializability)”。
|
||||
一種 **isolation** 保證:多個事務併發執行時,行為等價於某個序列順序逐個執行。參見“[可序列化](/tw/ch8#sec_transactions_serializability)”。
|
||||
|
||||
### 無共享(shared-nothing)
|
||||
|
||||
|
|
@ -205,7 +205,7 @@ Online Transaction Processing(線上事務處理):典型訪問模式是快
|
|||
|
||||
### 偏斜(skew)
|
||||
|
||||
1. 分片負載不均:某些分片請求/資料很多,另一些很少。也稱 *hot spots*。參見“[負載偏斜與熱點消除](/tw/ch7#sec_sharding_skew)”。
|
||||
1. 分片負載不均:某些分片請求/資料很多,另一些很少。也稱 **hot spots**。參見“[負載偏斜與熱點消除](/tw/ch7#sec_sharding_skew)”。
|
||||
2. 一種時序異常,導致事件呈現為非預期的非順序。參見“[快照隔離與可重複讀](/tw/ch8#sec_transactions_snapshot_isolation)”中的讀偏斜、“[寫偏斜與幻讀](/tw/ch8#sec_transactions_write_skew)”中的寫偏斜、以及“[用於事件排序的時間戳](/tw/ch9#sec_distributed_lww)”中的時鐘偏斜。
|
||||
|
||||
### 腦裂(split brain)
|
||||
|
|
@ -222,11 +222,11 @@ Online Transaction Processing(線上事務處理):典型訪問模式是快
|
|||
|
||||
### 同步(synchronous)
|
||||
|
||||
*asynchronous* 的反義詞。
|
||||
**asynchronous** 的反義詞。
|
||||
|
||||
### 記錄系統(system of record)
|
||||
|
||||
持有某類資料主權威版本的系統,也稱 *source of truth*。資料變更首先寫入這裡,其他資料集可由其派生。參見“[記錄系統與派生資料](/tw/ch1#sec_introduction_derived)”。
|
||||
持有某類資料主權威版本的系統,也稱 **source of truth**。資料變更首先寫入這裡,其他資料集可由其派生。參見“[記錄系統與派生資料](/tw/ch1#sec_introduction_derived)”。
|
||||
|
||||
### 超時(timeout)
|
||||
|
||||
|
|
@ -234,7 +234,7 @@ Online Transaction Processing(線上事務處理):典型訪問模式是快
|
|||
|
||||
### 全序(total order)
|
||||
|
||||
一種可比較關係(如時間戳),任意兩者都能判定大小。若存在不可比較元素,則稱 *partial order*(偏序)。
|
||||
一種可比較關係(如時間戳),任意兩者都能判定大小。若存在不可比較元素,則稱 **partial order**(偏序)。
|
||||
|
||||
### 事務(transaction)
|
||||
|
||||
|
|
@ -242,12 +242,12 @@ Online Transaction Processing(線上事務處理):典型訪問模式是快
|
|||
|
||||
### 兩階段提交(two-phase commit, 2PC)
|
||||
|
||||
保證多個數據庫節點對同一事務要麼都 *atomically* 提交、要麼都中止的演算法。參見“[兩階段提交(2PC)](/tw/ch8#sec_transactions_2pc)”。
|
||||
保證多個數據庫節點對同一事務要麼都 **atomically** 提交、要麼都中止的演算法。參見“[兩階段提交(2PC)](/tw/ch8#sec_transactions_2pc)”。
|
||||
|
||||
### 兩階段鎖(two-phase locking, 2PL)
|
||||
|
||||
實現 *serializable isolation* 的演算法:事務對讀寫資料加鎖並持有到事務結束。參見“[兩階段鎖(2PL)](/tw/ch8#sec_transactions_2pl)”。
|
||||
實現 **serializable isolation** 的演算法:事務對讀寫資料加鎖並持有到事務結束。參見“[兩階段鎖(2PL)](/tw/ch8#sec_transactions_2pl)”。
|
||||
|
||||
### 無界(unbounded)
|
||||
|
||||
沒有已知上限或大小。與 *bounded* 相反。
|
||||
沒有已知上限或大小。與 **bounded** 相反。
|
||||
|
|
@ -100,11 +100,11 @@ Sebastopol, CA 95472
|
|||
707-829-0515(國際或本地)
|
||||
707-829-0104(傳真)
|
||||
|
||||
我們為本書提供了網頁,會在上面列出勘誤、示例以及任何補充資訊。你可以訪問:*http://bit.ly/designing-data-intensive-apps*。
|
||||
我們為本書提供了網頁,會在上面列出勘誤、示例以及任何補充資訊。你可以訪問:**http://bit.ly/designing-data-intensive-apps**。
|
||||
|
||||
如需發表評論或提出技術問題,請傳送郵件至:*bookquestions@oreilly.com*。
|
||||
如需發表評論或提出技術問題,請傳送郵件至:**bookquestions@oreilly.com**。
|
||||
|
||||
有關 O’Reilly 圖書、課程、會議和新聞的更多資訊,請訪問:*http://www.oreilly.com*。
|
||||
有關 O’Reilly 圖書、課程、會議和新聞的更多資訊,請訪問:**http://www.oreilly.com**。
|
||||
|
||||
* Facebook: [http://facebook.com/oreilly](http://facebook.com/oreilly)
|
||||
* Twitter: [http://twitter.com/oreillymedia](http://twitter.com/oreillymedia)
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ breadcrumbs: false
|
|||
|
||||
**Martin Kleppmann** 是英国剑桥大学副教授,教授分布式系统与密码学协议。2017 年出版的《设计数据密集型应用》第一版确立了他在数据系统领域的权威地位;他在分布式系统方面的研究也推动了 local-first 软件运动。此前他曾在 LinkedIn、Rapportive 等互联网公司担任软件工程师和创业者,负责大规模数据基础设施。
|
||||
|
||||
**Chris Riccomini** 是软件工程师、创业投资人和作者,拥有 15 年以上在 PayPal、LinkedIn、WePay 的工作经验。他运营 Materialized View Capital,专注于基础设施初创企业投资;同时也是 Apache Samza 与 SlateDB 的共同创造者,并合著了 *The Missing README: A Guide for the New Software Engineer*。
|
||||
**Chris Riccomini** 是软件工程师、创业投资人和作者,拥有 15 年以上在 PayPal、LinkedIn、WePay 的工作经验。他运营 Materialized View Capital,专注于基础设施初创企业投资;同时也是 Apache Samza 与 SlateDB 的共同创造者,并合著了 **The Missing README: A Guide for the New Software Engineer**。
|
||||
|
||||

|
||||
|
||||
|
|
|
|||
|
|
@ -12,12 +12,12 @@ breadcrumbs: false
|
|||
|
||||
### 原子(atomic)
|
||||
|
||||
1. 在并发语境下:指一个操作看起来在某个单一时刻生效,其他并发进程不会看到它处于“半完成”状态。另见 *isolation*。
|
||||
1. 在并发语境下:指一个操作看起来在某个单一时刻生效,其他并发进程不会看到它处于“半完成”状态。另见 **isolation**。
|
||||
2. 在事务语境下:指一组写入要么全部提交、要么全部回滚,即使发生故障也不例外。参见“[原子性](/ch8#sec_transactions_acid_atomicity)”和“[两阶段提交(2PC)](/ch8#sec_transactions_2pc)”。
|
||||
|
||||
### 背压(backpressure)
|
||||
|
||||
当接收方跟不上时,强制发送方降速。也称为 *flow control*。参见“[系统过载后无法恢复时会发生什么](/ch2#sidebar_metastable)”。
|
||||
当接收方跟不上时,强制发送方降速。也称为 **flow control**。参见“[系统过载后无法恢复时会发生什么](/ch2#sidebar_metastable)”。
|
||||
|
||||
### 批处理(batch process)
|
||||
|
||||
|
|
@ -69,7 +69,7 @@ breadcrumbs: false
|
|||
|
||||
### 分布式(distributed)
|
||||
|
||||
系统在多个通过网络连接的节点上运行。其典型特征是 *部分失效*:一部分坏了,另一部分仍在工作,而软件往往难以精确知道哪里坏了。参见“[故障与部分失效](/ch9#sec_distributed_partial_failure)”。
|
||||
系统在多个通过网络连接的节点上运行。其典型特征是 **部分失效**:一部分坏了,另一部分仍在工作,而软件往往难以精确知道哪里坏了。参见“[故障与部分失效](/ch9#sec_distributed_partial_failure)”。
|
||||
|
||||
### 持久性(durable)
|
||||
|
||||
|
|
@ -89,23 +89,23 @@ Extract-Transform-Load(提取-转换-加载):从源数据库抽取数据
|
|||
|
||||
### 流量控制(flow control)
|
||||
|
||||
见 *backpressure*。
|
||||
见 **backpressure**。
|
||||
|
||||
### 追随者(follower)
|
||||
|
||||
不直接接收客户端写入、仅应用来自主节点变更的副本。也称 *secondary*、*read replica* 或 *hot standby*。参见“[单主复制](/ch6#sec_replication_leader)”。
|
||||
不直接接收客户端写入、仅应用来自主节点变更的副本。也称 **secondary**、**read replica** 或 **hot standby**。参见“[单主复制](/ch6#sec_replication_leader)”。
|
||||
|
||||
### 全文检索(full-text search)
|
||||
|
||||
按任意关键词搜索文本,通常支持近似拼写、同义词等能力。全文索引是支持此类查询的一种 *secondary index*。参见“[全文检索](/ch4#sec_storage_full_text)”。
|
||||
按任意关键词搜索文本,通常支持近似拼写、同义词等能力。全文索引是支持此类查询的一种 **secondary index**。参见“[全文检索](/ch4#sec_storage_full_text)”。
|
||||
|
||||
### 图(graph)
|
||||
|
||||
由 *vertices*(可引用对象,也称 *nodes* 或 *entities*)和 *edges*(顶点间连接,也称 *relationships* 或 *arcs*)组成的数据结构。参见“[图状数据模型](/ch3#sec_datamodels_graph)”。
|
||||
由 **vertices**(可引用对象,也称 **nodes** 或 **entities**)和 **edges**(顶点间连接,也称 **relationships** 或 **arcs**)组成的数据结构。参见“[图状数据模型](/ch3#sec_datamodels_graph)”。
|
||||
|
||||
### 哈希(hash)
|
||||
|
||||
把输入映射成看似随机数字的函数。相同输入总得相同输出;不同输入通常输出不同,但也可能碰撞(*collision*)。参见“[按键的哈希分片](/ch7#sec_sharding_hash)”。
|
||||
把输入映射成看似随机数字的函数。相同输入总得相同输出;不同输入通常输出不同,但也可能碰撞(**collision**)。参见“[按键的哈希分片](/ch7#sec_sharding_hash)”。
|
||||
|
||||
### 幂等(idempotent)
|
||||
|
||||
|
|
@ -117,7 +117,7 @@ Extract-Transform-Load(提取-转换-加载):从源数据库抽取数据
|
|||
|
||||
### 隔离性(isolation)
|
||||
|
||||
在事务语境下,并发事务相互干扰的程度。*Serializable* 最强,也常用更弱隔离级别。参见“[隔离性](/ch8#sec_transactions_acid_isolation)”。
|
||||
在事务语境下,并发事务相互干扰的程度。**Serializable** 最强,也常用更弱隔离级别。参见“[隔离性](/ch8#sec_transactions_acid_isolation)”。
|
||||
|
||||
### 连接(join)
|
||||
|
||||
|
|
@ -125,7 +125,7 @@ Extract-Transform-Load(提取-转换-加载):从源数据库抽取数据
|
|||
|
||||
### 领导者(leader)
|
||||
|
||||
当数据或服务跨多个节点复制时,被指定为可接受写入的副本。可通过协议选举或管理员指定。也称 *primary* 或 *source*。参见“[单主复制](/ch6#sec_replication_leader)”。
|
||||
当数据或服务跨多个节点复制时,被指定为可接受写入的副本。可通过协议选举或管理员指定。也称 **primary** 或 **source**。参见“[单主复制](/ch6#sec_replication_leader)”。
|
||||
|
||||
### 线性一致(linearizable)
|
||||
|
||||
|
|
@ -141,7 +141,7 @@ Extract-Transform-Load(提取-转换-加载):从源数据库抽取数据
|
|||
|
||||
### 日志(log)
|
||||
|
||||
只追加写入的数据文件。*WAL* 用于崩溃恢复(参见“[让 B 树可靠](/ch4#sec_storage_btree_wal)”);*log-structured* 存储把日志作为主存储格式(参见“[日志结构存储](/ch4#sec_storage_log_structured)”);*replication log* 用于主从复制(参见“[单主复制](/ch6#sec_replication_leader)”);*event log* 可表示数据流(参见“[基于日志的消息代理](/ch12#sec_stream_log) ”)。
|
||||
只追加写入的数据文件。**WAL** 用于崩溃恢复(参见“[让 B 树可靠](/ch4#sec_storage_btree_wal)”);**log-structured** 存储把日志作为主存储格式(参见“[日志结构存储](/ch4#sec_storage_log_structured)”);**replication log** 用于主从复制(参见“[单主复制](/ch6#sec_replication_leader)”);**event log** 可表示数据流(参见“[基于日志的消息代理](/ch12#sec_stream_log) ”)。
|
||||
|
||||
### 物化(materialize)
|
||||
|
||||
|
|
@ -165,15 +165,15 @@ Online Transaction Processing(在线事务处理):典型访问模式是快
|
|||
|
||||
### 分片(sharding)
|
||||
|
||||
把单机装不下的大数据集或计算拆成更小部分并分散到多台机器上。也称 *partitioning*。参见[第 7 章](/ch7#ch_sharding)。
|
||||
把单机装不下的大数据集或计算拆成更小部分并分散到多台机器上。也称 **partitioning**。参见[第 7 章](/ch7#ch_sharding)。
|
||||
|
||||
### 百分位(percentile)
|
||||
|
||||
通过统计多少值高于/低于某阈值来描述分布。例如某时段 95 分位响应时间为 *t*,表示 95% 请求耗时小于 *t*,5% 更长。参见“[描述性能](/ch2#sec_introduction_percentiles)”。
|
||||
通过统计多少值高于/低于某阈值来描述分布。例如某时段 95 分位响应时间为 **t**,表示 95% 请求耗时小于 **t**,5% 更长。参见“[描述性能](/ch2#sec_introduction_percentiles)”。
|
||||
|
||||
### 主键(primary key)
|
||||
|
||||
唯一标识一条记录的值(通常为数字或字符串)。在很多应用中由系统在创建时生成(顺序或随机),而非用户手工指定。另见 *secondary index*。
|
||||
唯一标识一条记录的值(通常为数字或字符串)。在很多应用中由系统在创建时生成(顺序或随机),而非用户手工指定。另见 **secondary index**。
|
||||
|
||||
### 法定票数(quorum)
|
||||
|
||||
|
|
@ -185,7 +185,7 @@ Online Transaction Processing(在线事务处理):典型访问模式是快
|
|||
|
||||
### 复制(replication)
|
||||
|
||||
在多个节点(*replicas*)上保存同一份数据,以便部分节点不可达时仍可访问。参见[第 6 章](/ch6#ch_replication)。
|
||||
在多个节点(**replicas**)上保存同一份数据,以便部分节点不可达时仍可访问。参见[第 6 章](/ch6#ch_replication)。
|
||||
|
||||
### 模式(schema)
|
||||
|
||||
|
|
@ -197,7 +197,7 @@ Online Transaction Processing(在线事务处理):典型访问模式是快
|
|||
|
||||
### 可串行化(serializable)
|
||||
|
||||
一种 *isolation* 保证:多个事务并发执行时,行为等价于某个串行顺序逐个执行。参见“[可串行化](/ch8#sec_transactions_serializability)”。
|
||||
一种 **isolation** 保证:多个事务并发执行时,行为等价于某个串行顺序逐个执行。参见“[可串行化](/ch8#sec_transactions_serializability)”。
|
||||
|
||||
### 无共享(shared-nothing)
|
||||
|
||||
|
|
@ -205,7 +205,7 @@ Online Transaction Processing(在线事务处理):典型访问模式是快
|
|||
|
||||
### 偏斜(skew)
|
||||
|
||||
1. 分片负载不均:某些分片请求/数据很多,另一些很少。也称 *hot spots*。参见“[负载偏斜与热点消除](/ch7#sec_sharding_skew)”。
|
||||
1. 分片负载不均:某些分片请求/数据很多,另一些很少。也称 **hot spots**。参见“[负载偏斜与热点消除](/ch7#sec_sharding_skew)”。
|
||||
2. 一种时序异常,导致事件呈现为非预期的非顺序。参见“[快照隔离与可重复读](/ch8#sec_transactions_snapshot_isolation)”中的读偏斜、“[写偏斜与幻读](/ch8#sec_transactions_write_skew)”中的写偏斜、以及“[用于事件排序的时间戳](/ch9#sec_distributed_lww)”中的时钟偏斜。
|
||||
|
||||
### 脑裂(split brain)
|
||||
|
|
@ -222,11 +222,11 @@ Online Transaction Processing(在线事务处理):典型访问模式是快
|
|||
|
||||
### 同步(synchronous)
|
||||
|
||||
*asynchronous* 的反义词。
|
||||
**asynchronous** 的反义词。
|
||||
|
||||
### 记录系统(system of record)
|
||||
|
||||
持有某类数据主权威版本的系统,也称 *source of truth*。数据变更首先写入这里,其他数据集可由其派生。参见“[记录系统与派生数据](/ch1#sec_introduction_derived)”。
|
||||
持有某类数据主权威版本的系统,也称 **source of truth**。数据变更首先写入这里,其他数据集可由其派生。参见“[记录系统与派生数据](/ch1#sec_introduction_derived)”。
|
||||
|
||||
### 超时(timeout)
|
||||
|
||||
|
|
@ -234,7 +234,7 @@ Online Transaction Processing(在线事务处理):典型访问模式是快
|
|||
|
||||
### 全序(total order)
|
||||
|
||||
一种可比较关系(如时间戳),任意两者都能判定大小。若存在不可比较元素,则称 *partial order*(偏序)。
|
||||
一种可比较关系(如时间戳),任意两者都能判定大小。若存在不可比较元素,则称 **partial order**(偏序)。
|
||||
|
||||
### 事务(transaction)
|
||||
|
||||
|
|
@ -242,12 +242,12 @@ Online Transaction Processing(在线事务处理):典型访问模式是快
|
|||
|
||||
### 两阶段提交(two-phase commit, 2PC)
|
||||
|
||||
保证多个数据库节点对同一事务要么都 *atomically* 提交、要么都中止的算法。参见“[两阶段提交(2PC)](/ch8#sec_transactions_2pc)”。
|
||||
保证多个数据库节点对同一事务要么都 **atomically** 提交、要么都中止的算法。参见“[两阶段提交(2PC)](/ch8#sec_transactions_2pc)”。
|
||||
|
||||
### 两阶段锁(two-phase locking, 2PL)
|
||||
|
||||
实现 *serializable isolation* 的算法:事务对读写数据加锁并持有到事务结束。参见“[两阶段锁(2PL)](/ch8#sec_transactions_2pl)”。
|
||||
实现 **serializable isolation** 的算法:事务对读写数据加锁并持有到事务结束。参见“[两阶段锁(2PL)](/ch8#sec_transactions_2pl)”。
|
||||
|
||||
### 无界(unbounded)
|
||||
|
||||
没有已知上限或大小。与 *bounded* 相反。
|
||||
没有已知上限或大小。与 **bounded** 相反。
|
||||
|
|
|
|||
|
|
@ -100,11 +100,11 @@ Sebastopol, CA 95472
|
|||
707-829-0515(国际或本地)
|
||||
707-829-0104(传真)
|
||||
|
||||
我们为本书提供了网页,会在上面列出勘误、示例以及任何补充信息。你可以访问:*http://bit.ly/designing-data-intensive-apps*。
|
||||
我们为本书提供了网页,会在上面列出勘误、示例以及任何补充信息。你可以访问:**http://bit.ly/designing-data-intensive-apps**。
|
||||
|
||||
如需发表评论或提出技术问题,请发送邮件至:*bookquestions@oreilly.com*。
|
||||
如需发表评论或提出技术问题,请发送邮件至:**bookquestions@oreilly.com**。
|
||||
|
||||
有关 O’Reilly 图书、课程、会议和新闻的更多信息,请访问:*http://www.oreilly.com*。
|
||||
有关 O’Reilly 图书、课程、会议和新闻的更多信息,请访问:**http://www.oreilly.com**。
|
||||
|
||||
* Facebook: [http://facebook.com/oreilly](http://facebook.com/oreilly)
|
||||
* Twitter: [http://twitter.com/oreillymedia](http://twitter.com/oreillymedia)
|
||||
|
|
|
|||
Loading…
Reference in a new issue