設計資料密集型應用

作者Martin Kleppmann《Designing Data-Intensive Applications 2nd Edition》 : 英國劍橋大學分散式系統研究員,演講者,博主和開源貢獻者,軟體工程師和企業家,曾在 LinkedIn 和 Rapportive 負責資料基礎架構。

譯者馮若航,網名 @Vonng。 PostgreSQL 專家,資料庫老司機,雲計算泥石流。 Pigsty 作者與創始人。 架構師,DBA,全棧工程師 @ TanTan,Alibaba,Apple。 獨立開源貢獻者,GitStar Ranking 585國區活躍 Top20DDIA / PG Internal 中文版譯者,公眾號:《老馮雲數》,資料庫 KOL。

校訂@yingang繁體中文 版本維護 by @afunTW完整貢獻者列表

[!NOTE] DDIA 第二版 正在翻譯中 (v2分支),歡迎加入並提出您的寶貴意見!

譯序

不懂資料庫的全棧工程師不是好架構師 —— 馮若航 / Vonng

現今,尤其是在網際網路領域,大多數應用都屬於資料密集型應用。本書從底層資料結構到頂層架構設計,將資料系統設計中的精髓娓娓道來。其中的寶貴經驗無論是對架構師、DBA、還是後端工程師、甚至產品經理都會有幫助。

這是一本理論結合實踐的書,書中很多問題,譯者在實際場景中都曾遇到過,讀來讓人擊節扼腕。如果能早點讀到這本書,該少走多少彎路啊!

這也是一本深入淺出的書,講述概念的來龍去脈而不是賣弄定義,介紹事物發展演化歷程而不是事實堆砌,將複雜的概念講述的淺顯易懂,但又直擊本質不失深度。每章最後的引用質量非常好,是深入學習各個主題的絕佳索引。

本書為資料系統的設計、實現、與評價提供了很好的概念框架。讀完並理解本書內容後,讀者可以輕鬆看破大多數的技術忽悠,與技術磚家撕起來虎虎生風。

這是 2017 年譯者讀過最好的一本技術類書籍,這麼好的書沒有中文翻譯,實在是遺憾。某不才,願為先進技術文化的傳播貢獻一份力量。既可以深入學習有趣的技術主題,又可以鍛鍊中英文語言文字功底,何樂而不為?

前言

在我們的社會中,技術是一種強大的力量。資料、軟體、通訊可以用於壞的方面:不公平的階級固化,損害公民權利,保護既得利益集團。但也可以用於好的方面:讓底層人民發出自己的聲音,讓每個人都擁有機會,避免災難。本書獻給所有將技術用於善途的人們。

計算是一種流行文化,流行文化鄙視歷史。流行文化關乎個體身份和參與感,但與合作無關。流行文化活在當下,也與過去和未來無關。我認為大部分(為了錢)編寫程式碼的人就是這樣的,他們不知道自己的文化來自哪裡。

—— 阿蘭・凱接受 Dobb 博士的雜誌採訪時(2012 年)

目錄


法律宣告

從原作者處得知,已經有簡體中文的翻譯計劃,將於 2018 年末完成。購買地址

譯者純粹出於 學習目的個人興趣 翻譯本書,不追求任何經濟利益。

譯者保留對此版本譯文的署名權,其他權利以原作者和出版社的主張為準。

本譯文只供學習研究參考之用,不得公開傳播發行或用於商業用途。有能力閱讀英文書籍者請購買正版支援。


貢獻

  1. 全文校訂 by @yingang

  2. 第一部分前言,ch2校正 by @jiajiadebug

  3. 詞彙表後記關於野豬的部分 by @Chowss

  4. 繁體中文版本與轉換指令碼 by @afunTW

  5. 多處翻譯修正 by @songzhibin97 @MamaShip @FangYuan33

Pull Requests & Issues
ISSUE & Pull Requests
USER
Title

ch10: 修正一處拼寫錯誤

ch4: 修正一處拼寫錯誤

ch2: 修正一處標點錯誤

ch12: 修正一處格式錯誤

ch7: 修正一處參考連結

ch3&9: 修正兩處引用錯誤

支援輸出為 EPUB 格式

ch1: 修正一處格式錯誤

ch3: 修正一處影像連結

ch1: 最佳化一處翻譯

ch10: 最佳化一處翻譯

ch3: 最佳化兩處翻譯

ch2: 最佳化多處翻譯

ch1: 最佳化一處翻譯

修正一處繁體中文錯誤

ch2: 修正一處繁體中文錯誤

ch5: 修正一處翻譯錯誤

ch9: 更正幾處拼寫錯誤

ch7: 最佳化一處翻譯

ch6: 指出一處翻譯錯誤

ch4: 更正一處翻譯遺漏

ch1: 最佳化一處翻譯

ch5: 最佳化一處翻譯

ch8: 最佳化一處翻譯

ch11: 最佳化一處翻譯

ch11&12: 修正兩處錯誤

ch4: 更正一處列表錯誤

ch3: 更正一處錯別字

ch2: 更正一處公式問題

更正多處內部連結錯誤

ch9: 更正內部連結錯誤

ch9: 指出公式在 GitHub Pages 顯示的問題

發現了繁體中文版本中的錯誤翻譯

更正 LICENSE 連結

ch7: 修正錯別字

ch7: 統一了 write skew 的翻譯

ch6: 統一了 rebalancing 的翻譯

ch7: 修正不一致的翻譯

ch5: 修正譯文中的重複單詞

ch4: 修正部分不準確的翻譯

ch3: 修正一處翻譯錯誤

ch8: 修正一處拼寫錯誤

ch7: 修正“可序列化”相關內容的多處翻譯不當

ch7: 修正“可重複讀”相關內容的多處翻譯不當

ch7: 修正“讀已提交”相關內容的多處翻譯不當

ch3: 修正繁體中文的轉譯錯誤

ch12: 修正繁體中文的轉譯錯誤

ch9: 修正不通順的翻譯

ch9: 修正不通順的翻譯

ch8: 修正不正確的公式格式

ch9: 修正不通順的翻譯

ch7: 修正不一致的翻譯

ch3: 修正錯誤的圖片連結

指出繁體中文的轉譯錯誤:複雜

ch1: 修正導航欄中的章節名稱

ch9: 修正線性一致的繁體中文翻譯

ch4: 修正錯誤的翻譯

ch4: 最佳化譯文

ch4: 修正不一致和不通順的翻譯

ch1: 修正不準確的翻譯

ch9: 修正生硬的翻譯

ch8: 修正錯別字

指出小標題跳轉的問題

ch10: 修正失效的網址

ch8: 修正錯別字

建議docsify的主題風格

ch2: 修正翻譯錯誤

ch3: 指出繁體中文的轉譯錯誤

支援 Github Pages 裡的公式顯示

ch2: 語義網相關翻譯更正

ch7: 不變式相關翻譯更正

README & preface: 更正不正確的中文用詞和標點符號

ch12: 修正不完整的翻譯

ch12: 修正重複的譯文

ch12: 更正不太通順的翻譯

ch1: 發現錯誤的文獻索引

preface: 更正錯誤的標點符號

ch1: 更正錯誤字

ch2: 建議將 network model 翻譯為網狀模型

ch4: 更正錯誤字

ch7: 更正不太通順的翻譯

ch7: 更正不太通順的翻譯

ch9: 修正縮圖的錯別字

ch7: 除重->去重

ch5: 修訂sibling相關的翻譯

ch5: 更正一處不準確的翻譯

識別了當前簡繁轉譯過程中處理不當的地方,暫透過轉換指令碼規避

ch7: 不翻譯next-key locking

ch3: 更新殘留的機翻段落

建議去除段首的製表符

ch5: 發現一處錯誤格式的章節引用

ch5: 修正章節Summary中多處不通順的翻譯

ch2&ch3: 修正多處不通順的或錯誤的翻譯

ch5&ch6: 最佳化多處不通順的或錯誤的翻譯

ch4: 最佳化多處不通順的或錯誤的翻譯

ch3: 最佳化多處錯誤的或不通順的翻譯

ch3: 最佳化一處容易產生歧義的翻譯

ch6: 修正兩處錯誤的翻譯

ch4: 修正兩處強調文字和四處程式碼變數名稱

ch5: 修正一處錯誤的引用

ch10: 修正一處錯誤的翻譯(功能 -> 函式)

ch2: 最佳化 how best 的翻譯(如何以最佳方式)

translation updates (chapter 9, TOC in readme, glossary, etc.)

translation updates (chapter 5 to chapter 8)

Typo fix: 呲之以鼻 -> 嗤之以鼻

Streamline file operations in convert()

translation updates (chapter 2 to chapter 4)

統一每章的標題格式

第七章病句修改: 重複詞語

Update README.md: correct the book name

修改語句

Update ch9.md

讀已寫入資料

單調鐘和好死還是賴活著

typo in ch2: fix braces typo

Chronicle translation error

several advice for better translation

typo in ch4: should be 完成 rather than 完全

ch4: better-translation: 扼殺 → 破壞

typo in Ch4: should be "改變" rathr than "蓋面"

fix missing translation

ch6: fix the word rebalancing

fix ch7.md: fix wrong references

ch2: fix typo about 'may or may not be'

fix translation of "the battle cry" in ch5

ch6: fix markdown and punctuations

ch5: fix markdown and some typos

Merge pull request #1 from Vonng/master

fix typo for ch1, ch2, ch3, ch4

Update ch3.md

Update ch1.md

fix ch2.md: fix ch2 ambiguous translation

Fix translation: use up

Using OpenCC to convert from zh-cn to zh-tw

fix gitbook url

Fix unappropriated translation

fix typo

Fix typo

Update ch9.md

Update ch7.md

fix issues in ch2 - ch9 and glossary

Update ch10.md

fix ch1.md typesetting problem

docs:鍾-->種,去掉ou

否則 -> 或者

呼叫->呼叫,顯著->顯著

Update ch8.md

ch8: 修改連結錯誤

Update ch2.md

Update ch9.md

Update ch1.md

fix 修正ch3 ch4幾處翻譯

幾個疏漏和格式錯誤

Update ch1.md

Fixed typos in ch2

刪除一個多餘的右括號

修正第七章底部連結錯誤

"更假簡單"->"更加簡單"

修復 ch1 中的無序列表格式

糾正多處的翻譯小錯誤

fix translation mistakes in ch4.md

1.修復多個連結錯誤 2.名詞最佳化修訂 3.錯誤修訂

fix ch7.md to ch8.md link error

Merge pull request #1 from Vonng/master

fix part-ii.md link error

Update ch2.md

Update ch7.md

修復一些明顯錯誤

修復連結錯誤

修改詞語順序

修正錯別字

糾正翻譯錯誤

修正目錄和本章標題不符的情況

Update ch7.md

修復語句小bug

Master

Update translation progress

Translate glossary

詳細修改了後記中和印度野豬相關的描述

修改了部分翻譯

Preface, ch1, part-i translation minor fixes

Ch6 translation pull request

Ch6 change version1

Chapter 01語法微調

序言初翻


許可證

本專案採用 CC-BY 4.0 許可證,您可以在這裡找到完整說明:

Last updated

Was this helpful?