设计数据密集型应用 - 中文翻译
- 作者: Martin Kleppmann
- 原名:《Designing Data-Intensive Applications》
- 译者:冯若航 (@Vonng)
- 校订: @yingang
- 繁体:繁體中文版本 by @afunTW
使用 Typora、Gitbook 或 Github Pages 以获取最佳阅读体验。
本地:你可在项目根目录中执行
make
,并通过浏览器阅读(在线预览)。
译序
不懂数据库的全栈工程师不是好架构师
—— Vonng
现今,尤其是在互联网领域,大多数应用都属于数据密集型应用。本书从底层数据结构到顶层架构设计,将数据系统设计中的精髓娓娓道来。其中的宝贵经验无论是对架构师、DBA、还是后端工程师、甚至产品经理都会有帮助。
这是一本理论结合实践的书,书中很多问题,译者在实际场景中都曾遇到过,读来让人击节扼腕。如果能早点读到这本书,该少走多少弯路啊!
这也是一本深入浅出的书,讲述概念的来龙去脉而不是卖弄定义,介绍事物发展演化历程而不是事实堆砌,将复杂的概念讲述的浅显易懂,但又直击本质不失深度。每章最后的引用质量非常好,是深入学习各个主题的绝佳索引。
本书为数据系统的设计、实现、与评价提供了很好的概念框架。读完并理解本书内容后,读者可以轻松看破大多数的技术忽悠,与技术砖家撕起来虎虎生风🤣。
这是 2017 年译者读过最好的一本技术类书籍,这么好的书没有中文翻译,实在是遗憾。某不才,愿为先进技术文化的传播贡献一份力量。既可以深入学习有趣的技术主题,又可以锻炼中英文语言文字功底,何乐而不为?
前言
在我们的社会中,技术是一种强大的力量。数据、软件、通信可以用于坏的方面:不公平的阶级固化,损害公民权利,保护既得利益集团。但也可以用于好的方面:让底层人民发出自己的声音,让每个人都拥有机会,避免灾难。本书献给所有将技术用于善途的人们。
计算是一种流行文化,流行文化鄙视历史。 流行文化关乎个体身份和参与感,但与合作无关。流行文化活在当下,也与过去和未来无关。 我认为大部分(为了钱)编写代码的人就是这样的, 他们不知道自己的文化来自哪里。
—— 阿兰・凯接受 Dobb 博士的杂志采访时(2012 年)
目录
序言
第一部分:数据系统基础
第二部分:分布式数据
第三部分:衍生数据
术语表
后记
法律声明
从原作者处得知,已经有简体中文的翻译计划,将于 2018 年末完成。购买地址
译者纯粹出于 学习目的 与 个人兴趣 翻译本书,不追求任何经济利益。
译者保留对此版本译文的署名权,其他权利以原作者和出版社的主张为准。
本译文只供学习研究参考之用,不得公开传播发行或用于商业用途。有能力阅读英文书籍者请购买正版支持。
贡献
- 全文校订 by @yingang
- 序言初翻修正 by @seagullbird
- 第一章语法标点校正 by @nevertiree
- 第六章部分校正 与第十章的初翻 by @MuAlex
- 第一部分前言,ch2校正 by @jiajiadebug
- 词汇表、后记关于野猪的部分 by @Chowss
- 繁體中文版本与转换脚本 by @afunTW
- 多处翻译修正 by @songzhibin97
- 感谢所有作出贡献,提出意见的朋友们:
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 | 序言初翻 |