读书
文章平均质量分 94
负雪明烛
北京邮电大学计算机硕士毕业,阿里巴巴工程师。坚持写算法题博客 6 年,博客在全网获得数百万阅读。微信公众号:「负雪明烛」
展开
-
DDIA 第十二章:数据系统的未来
之前的章节在讨论现状;本章讨论未来。我们的目标是,发现如何设计出比现有应用更好的应用 —— 健壮,正确,可演化,且最终对人类有益。原创 2024-01-05 13:33:53 · 1105 阅读 · 0 评论 -
DDIA 第十一章:流处理
什么是“流”?● “流”是指随着时间的推移逐渐可用的数据。 ○ Unix的stdin和stdout,编程语言(惰性列表),文件系统API(如Java的FileInputStream),TCP连接,通过互联网传送音频和视频等等。● 我们将把 事件流(event stream) 视为一种数据管理机制:无界限,增量处理,与上一章中的批量数据相对应。原创 2024-01-05 13:28:45 · 1172 阅读 · 0 评论 -
DDIA 第七章:事务
为什么有事务?● 分布式数据系统,可能会出各种错误。● 实现容错机制工作量巨大。需要仔细考虑所有可能出错的事情,并进行大量的测试,以确保解决方案真正管用。● 数十年来,事务(transaction) 一直是简化这些问题的首选机制。原创 2024-01-04 13:16:10 · 810 阅读 · 0 评论 -
DDIA 第四章:数据编码与演化
应用程序总是增增改改。修改程序大多数情况下也在修改存储的数据。● 关系数据库通常假定数据库中的所有数据都遵循一个模式:尽管可以更改该模式(通过模式迁移,即ALTER语句),但是在任何时间点都有且仅有一个正确的模式。● 读时模式(schema-on-read)(或 无模式(schemaless))数据库不会强制一个模式,因此数据库可以包含在不同时间写入的新老数据格式的混合。原创 2024-01-04 12:51:46 · 1013 阅读 · 0 评论 -
DDIA 第三章:存储与检索
本章介绍了传统关系型数据库与“NoSQL”数据库的存储引擎。我们会研究两大类存储引擎:日志结构(log-structured) 的存储引擎,以及面向页面(page-oriented) 的存储引擎(例如B树)。原创 2024-01-03 19:02:40 · 882 阅读 · 0 评论 -
DDIA 第二章:数据模型与查询语言
数据模型可能是软件开发中最重要的部分了,因为它们的影响如此深远:不仅仅影响着软件的编写方式,而且影响着我们的解题思路。原创 2024-01-03 13:29:45 · 912 阅读 · 0 评论 -
DDIA 第一章:可靠性,可扩展性,可维护性
造成错误的原因叫做故障(fault),能预料并应对故障的系统特性可称为容错(fault-tolerant)或者韧性(resilient)。讨论容错时,只有讨论特定类型的错误故障(fault)不同于失效(failure):故障指的是一部分状态偏离标准,而失效则是系统作为一个整体停止向用户提供服务。通常倾向于容忍错误(而不是阻止错误),但也有预防胜于治疗的情况(比如安全问题)可扩展性(Scalability)是用来描述系统应对负载增长能力的术语。原创 2024-01-03 13:12:59 · 988 阅读 · 0 评论 -
豆瓣评分 9.7 的神书:《数据密集型应用系统设计》
豆瓣评分高达 9.7 分!《数据密集型应用系统设计》 (大名鼎鼎的DDIA)。数据库,mysql,redis,kafka,分布式,大数据,Json,ProtoBuffer, Thrift 原理的书籍。面试、工作都必看的一本分布式系统好书。本文分享了阅读体会、学习资料原创 2021-10-14 08:41:00 · 2304 阅读 · 0 评论