设计数据密集型应用 - 中文翻译

使用 TyporaGitbookGithub Pages 以获取最佳阅读体验。

本地:你可在项目根目录中执行 make,并通过浏览器阅读(在线预览)。

译序

不懂数据库的全栈工程师不是好架构师

—— Vonng

现今,尤其是在互联网领域,大多数应用都属于数据密集型应用。本书从底层数据结构到顶层架构设计,将数据系统设计中的精髓娓娓道来。其中的宝贵经验无论是对架构师、DBA、还是后端工程师、甚至产品经理都会有帮助。

这是一本理论结合实践的书,书中很多问题,译者在实际场景中都曾遇到过,读来让人击节扼腕。如果能早点读到这本书,该少走多少弯路啊!

这也是一本深入浅出的书,讲述概念的来龙去脉而不是卖弄定义,介绍事物发展演化历程而不是事实堆砌,将复杂的概念讲述的浅显易懂,但又直击本质不失深度。每章最后的引用质量非常好,是深入学习各个主题的绝佳索引。

本书为数据系统的设计、实现、与评价提供了很好的概念框架。读完并理解本书内容后,读者可以轻松看破大多数的技术忽悠,与技术砖家撕起来虎虎生风🤣。

这是 2017 年译者读过最好的一本技术类书籍,这么好的书没有中文翻译,实在是遗憾。某不才,愿为先进技术文化的传播贡献一份力量。既可以深入学习有趣的技术主题,又可以锻炼中英文语言文字功底,何乐而不为?

前言

在我们的社会中,技术是一种强大的力量。数据、软件、通信可以用于坏的方面:不公平的阶级固化,损害公民权利,保护既得利益集团。但也可以用于好的方面:让底层人民发出自己的声音,让每个人都拥有机会,避免灾难。本书献给所有将技术用于善途的人们。


计算是一种流行文化,流行文化鄙视历史。 流行文化关乎个体身份和参与感,但与合作无关。流行文化活在当下,也与过去和未来无关。 我认为大部分(为了钱)编写代码的人就是这样的, 他们不知道自己的文化来自哪里。

—— 阿兰・凯接受 Dobb 博士的杂志采访时(2012 年)

目录

序言

第一部分:数据系统基础

第二部分:分布式数据

第三部分:衍生数据

术语表

后记

法律声明

从原作者处得知,已经有简体中文的翻译计划,将于 2018 年末完成。购买地址

译者纯粹出于 学习目的个人兴趣 翻译本书,不追求任何经济利益。

译者保留对此版本译文的署名权,其他权利以原作者和出版社的主张为准。

本译文只供学习研究参考之用,不得公开传播发行或用于商业用途。有能力阅读英文书籍者请购买正版支持。

贡献

  1. 全文校订 by @yingang
  2. 序言初翻修正 by @seagullbird
  3. 第一章语法标点校正 by @nevertiree
  4. 第六章部分校正第十章的初翻 by @MuAlex
  5. 第一部分前言,ch2校正 by @jiajiadebug
  6. 词汇表后记关于野猪的部分 by @Chowss
  7. 繁體中文版本与转换脚本 by @afunTW
  8. 多处翻译修正 by @songzhibin97
  9. 感谢所有作出贡献,提出意见的朋友们:
Pull Requests & Issues | ISSUE & Pull Requests | USER | Title | | ———————————————————————- | —————————————————————————————— | —————————————————————————————— | | 194 | @BeBraveBeCurious | ch4: 修正错误的翻译 | | 193 | @BeBraveBeCurious | ch4: 优化译文 | | 192 | @BeBraveBeCurious | ch4: 修正不一致和不通顺的翻译 | | 190 | @Pcrab | ch1: 修正不准确的翻译 | | 187 | @narojay | ch9: 修正生硬的翻译 | | 186 | @narojay | ch8: 修正错别字 | | 185 | @8da2k | 指出小标题跳转的问题 | | 184 | @DavidZhiXing | ch10: 修正失效的网址 | | 183 | @OneSizeFitsQuorum | ch8: 修正错别字 | | 182 | @lroolle | 建议docsify的主题风格 | | 181 | @YunfengGao | ch2: 修正翻译错误 | | 180 | @skyran1278 | ch3: 指出繁体中文的转译错误 | | 177 | @exzhawk | 支持 Github Pages 里的公式显示 | | 176 | @haifeiWu | ch2: 语义网相关翻译更正 | | 175 | @cwr31 | ch7: 不变式相关翻译更正 | | 174 | @BeBraveBeCurious | README & preface: 更正不正确的中文用词和标点符号 | | 173 | @ZvanYang | ch12: 修正不完整的翻译 | | 171 | @ZvanYang | ch12: 修正重复的译文 | | 169 | @ZvanYang | ch12: 更正不太通顺的翻译 | | 166 | @bp4m4h94 | ch1: 发现错误的文献索引 | | 164 | @DragonDriver | preface: 更正错误的标点符号 | | 163 | @llmmddCoder | ch1: 更正错误字 | | 160 | @Zhayhp | ch2: 建议将 network model 翻译为网状模型 | | 159 | @1ess | ch4: 更正错误字 | | 157 | @ZvanYang | ch7: 更正不太通顺的翻译 | | 155 | @ZvanYang | ch7: 更正不太通顺的翻译 | | 153 | @DavidZhiXing | ch9: 修正缩略图的错别字 | | 152 | @ZvanYang | ch7: 除重->去重 | | 151 | @ZvanYang | ch5: 修订sibling相关的翻译 | | 147 | @ZvanYang | ch5: 更正一处不准确的翻译 | | 145 | @Hookey | 识别了当前简繁转译过程中处理不当的地方,暂通过转换脚本规避 | | 144 | @secret4233 | ch7: 不翻译next-key locking | | 143 | @imcheney | ch3: 更新残留的机翻段落 | | 142 | @XIJINIAN | 建议去除段首的制表符 | | 141 | @Flyraty | ch5: 发现一处错误格式的章节引用 | | 140 | @Bowser1704 | ch5: 修正章节Summary中多处不通顺的翻译 | | 139 | @Bowser1704 | ch2&ch3: 修正多处不通顺的或错误的翻译 | | 137 | @fuxuemingzhu | ch5&ch6: 优化多处不通顺的或错误的翻译 | | 134 | @fuxuemingzhu | ch4: 优化多处不通顺的或错误的翻译 | | 133 | @fuxuemingzhu | ch3: 优化多处错误的或不通顺的翻译 | | 132 | @fuxuemingzhu | ch3: 优化一处容易产生歧义的翻译 | | 131 | @rwwg4 | ch6: 修正两处错误的翻译 | | 129 | @anaer | ch4: 修正两处强调文本和四处代码变量名称 | | 128 | @meilin96 | ch5: 修正一处错误的引用 | | 126 | @cwr31 | ch10: 修正一处错误的翻译(功能 -> 函数) | | 125 | @dch1228 | ch2: 优化 how best 的翻译(如何以最佳方式) | | 124 | @yingang | translation updates (chapter 10) | | 123 | @yingang | translation updates (chapter 9, TOC in readme, glossary, etc.) | | 121 | @yingang | translation updates (chapter 5 to chapter 8) | | 120 | @jiong-han | Typo fix: 呲之以鼻 -> 嗤之以鼻 | | 119 | @cclauss | Streamline file operations in convert() | | 118 | @yingang | translation updates (chapter 2 to chapter 4) | | 117 | @feeeei | 统一每章的标题格式 | | 115 | @NageNalock | 第七章病句修改: 重复词语 | | 114 | @Sunt-ing | Update README.md: correct the book name | | 113 | @lpxxn | 修改语句 | | 112 | @ibyte2011 | Update ch9.md | | 110 | @lpxxn | 读已写入数据 | | 107 | @abbychau | 單調鐘和好死还是赖活着 | | 106 | @enochii | typo in ch2: fix braces typo | | 105 | @LiminCode | Chronicle translation error | | 104 | @Sunt-ing | several advice for better translation | | 103 | @Sunt-ing | typo in ch4: should be 完成 rather than 完全 | | 102 | @Sunt-ing | ch4: better-translation: 扼杀 → 破坏 | | 101 | @Sunt-ing | typo in Ch4: should be “改变” rathr than “盖面” | | 100 | @LiminCode | fix missing translation | | 99 | @mrdrivingduck | ch6: fix the word rebalancing | | 98 | @jacklightChen | fix ch7.md: fix wrong references | | 97 | @jenac | 96 | | 96 | @PragmaTwice | ch2: fix typo about ‘may or may not be’ | | 95 | @EvanMu96 | fix translation of “the battle cry” in ch5 | | 94 | @kemingy | ch6: fix markdown and punctuations | | 93 | @kemingy | ch5: fix markdown and some typos | | 92 | @Gilbert1024 | Merge pull request #1 from Vonng/master | | 88 | @kemingy | fix typo for ch1, ch2, ch3, ch4 | | 87 | @wynn5a | Update ch3.md | | 86 | @northmorn | Update ch1.md | | 85 | @sunbuhui | fix ch2.md: fix ch2 ambiguous translation | | 84 | @ganler | Fix translation: use up | | 83 | @afunTW | Using OpenCC to convert from zh-cn to zh-tw | | 82 | @kangni | fix gitbook url | | 78 | @hanyu2 | Fix unappropriated translation | | 77 | @Ozarklake | fix typo | | 75 | @2997ms | Fix typo | | 74 | @2997ms | Update ch9.md | | 70 | @2997ms | Update ch7.md | | 67 | @jiajiadebug | fix issues in ch2 - ch9 and glossary | | 66 | @blindpirate | Fix typo | | 63 | @haifeiWu | Update ch10.md | | 62 | @ych | fix ch1.md typesetting problem | | 61 | @xianlaioy | docs:钟—>种,去掉ou | | 60 | @Zombo1296 | 否则 -> 或者 | | 59 | @AlexanderMisel | 呼叫->调用,显着->显著 | | 58 | @ibyte2011 | Update ch8.md | | 55 | @saintube | ch8: 修改链接错误 | | 54 | @Panmax | Update ch2.md | | 53 | @ibyte2011 | Update ch9.md | | 52 | @hecenjie | Update ch1.md | | 51 | @latavin243 | fix 修正ch3 ch4几处翻译 | | 50 | @AlexZFX | 几个疏漏和格式错误 | | 49 | @haifeiWu | Update ch1.md | | 48 | @scaugrated | fix typo | | 47 | @lzwill | Fixed typos in ch2 | | 45 | @zenuo | 删除一个多余的右括号 | | 44 | @akxxsb | 修正第七章底部链接错误 | | 43 | @baijinping | “更假简单”->”更加简单” | | 42 | @tisonkun | 修复 ch1 中的无序列表格式 | | 38 | @renjie-c | 纠正多处的翻译小错误 | | 37 | @tankilo | fix translation mistakes in ch4.md | | 36 | @wwek | 1.修复多个链接错误 2.名词优化修订 3.错误修订 | | 35 | @wwek | fix ch7.md to ch8.md link error | | 34 | @wwek | Merge pull request #1 from Vonng/master | | 33 | @wwek | fix part-ii.md link error | | 32 | @JCYoky | Update ch2.md | | 31 | @elsonLee | Update ch7.md | | 26 | @yjhmelody | 修复一些明显错误 | | 25 | @lqbilbo | 修复链接错误 | | 24 | @artiship | 修改词语顺序 | | 23 | @artiship | 修正错别字 | | 22 | @artiship | 纠正翻译错误 | | 21 | @zhtisi | 修正目录和本章标题不符的情况 | | 20 | @rentiansheng | Update ch7.md | | 19 | @LHRchina | 修复语句小bug | | 16 | @MuAlex | Master | | 15 | @cg-zhou | Update translation progress | | 14 | @cg-zhou | Translate glossary | | 13 | @cg-zhou | 详细修改了后记中和印度野猪相关的描述 | | 12 | @ibyte2011 | 修改了部分翻译 | | 11 | @jiajiadebug | ch2 100% | | 10 | @jiajiadebug | ch2 20% | | 9 | @jiajiadebug | Preface, ch1, part-i translation minor fixes | | 7 | @MuAlex | Ch6 translation pull request | | 6 | @MuAlex | Ch6 change version1 | | 5 | @nevertiree | Chapter 01语法微调 | | 2 | @seagullbird | 序言初翻 |

协议

CC-BY 4.0