推荐几本数据库基础书

点击蓝色“有关SQL”关注我哟

加个“星标”,天天与10000人一起快乐成长

这两天费劲心力,写了一篇技术文《SSD怎样影响数据库性能》。选这个主题时,我就预感,阅读量不会太好。结果也不出我所料,比平时低一半。

我一直佛系运营公众号,(圈里跟我差不多体量的小伙伴,靠号已年入过百万),我承认自己没有财商,所以倒也不是那么急的去赚这个收入。但看到辛苦写的文章,阅读量如此惨淡,还是不免有些伤感。

当然今天也不是来说矫情话的。把自己的惨说给读者听,以此来博取同情,向来都不是我的作风。我只管写文章,研究课题,分享出来。如果能帮到一些朋友,那是最好,若没有帮助,那至少也取悦了自己。

况且在写文章的过程中,我认为受益最多的,还是作者本人。

比如在写这篇《SSD》的时候,我大概花了10多小时找资料,反反复复对其中的细节问题推敲,不断问倒自己,再重来。期间一度产生了放弃的情绪。

好在这个时代,有太多资料可供查询,有深入浅出的书,还有扣细节的论文,还有很多热心的朋友做了动画,图解和视频。想学不好,都难!

熬过了这段时光,对其中很多原先理解不深的逻辑,有了更一步认识。所以技术文要写出来,才有进一步探索的冲动与激情!

说说我想写这篇《SSD》的由来。有天晚上,一位读者找我商量,要给他的小程序做一次秒杀和团购的活动。用户数大约在15万左右,套上团购估计会有30万的流量。

于是我就在网上开始找提高云数据库性能的办法。找着找着,有一篇论文《MixStore: Back-End Storage Based on Persistent Memory and SSD》引起了我注意。

该论文是国家重点研发计划项目,既然提到了SSD,那么我就忍不住自问,SSD到底怎样影响了数据库性能的呢。毕竟2013年的时候,淘宝的DBA团队对SSD有着不一样的看法,认为SSD在充当快速持久性存储(比如 redo log)时,还比较吃力。

所以就来了兴趣。主题有了,我该写成什么样呢。是一堆参数 + 对比曲线图? 还是画一些数学公式,看上去只有神才能看懂的原理解析。

都不是。写文章到如今,基础东西要写得那么公式化,那就只能劝退大家了。所以我还是尽量用大白话,写了一遍。但东西实在太多,对于文章结构是个不小的挑战,虽然几经修改,但很多地方还不是很满意。

写这么一个大的主题,乐趣在于探索。我拿到的第一本书是《大型网站技术架构-核心原理与案例分析》李智慧老师所著。


本书一大特色,就是全。你能想到的网站性能影响因子,李老师都替你想到了,你没有想到的,本书中也有。

比如网站的基本架构模式,怎么做分层,缓存怎么配置,安全策略怎么做;前端性能怎么优化,应用服务器与存储怎么优化,高可用该怎么搭建。

可以说,本书包罗万象,绝对打开你的眼界。但也有遗憾的地方,那就是面面俱到了,细节就丢帧。比如SSD,基本没有渗透到原理细节。

但,没事。我就是书囤的多。这本书没讲,《操作系统概念》总讲了吧。

翻到存储那章。好嘛,连磁盘运转物理图都给画出来了。喏,就是这张:

那这样的机械原理,是不是跟车站调度很相像?所以就有了《SSD》开头那一节。

但本书也有遗憾,没有讲到SSD的内部结构。于是我又拿起了《高性能 MySQL》

这本书可以说是所有数据库人员的必备书了。如果你还没看到,强烈推荐读一读。

本书讲 SSD 与机械硬盘的对比那章,总算搭边了。对于 SSD的写入放大,垃圾回收,组RAID,都开始细节化的讲述了。

虽说这本书已经从原理上讲解的差不多了,但距离理工男的理解,还差点意思。因为它缺少了用实验来证明SSD的优越性。

于是,我把目光投向了《数据库索引设计与优化》.

本书最大的特点就是一切用数据说话。就算是每一次随机IO, 都能测到ms级。专业性非常强!可惜,现在各大网站都买不到了。如果你对用数字说话,非常感兴趣,建议读一读。

除开这些书本,我还读了一些论文。比如我朋友圈发的这份:

读这些论文的好处,就在于可以去了解业内对SSD的一些研究,比如 FTL 芯片算法的更新。图上这位美女,是老东家的一位同事,素未蒙面,但肯定一起在饭堂吃过饭,偶遇过。所以专门挑着放上来。

《SSD》这篇文章,我大约花了15个小时左右,10个小时看资料,5小时写作。

有图为证:

搜集资料最费时,你看,0622代表6月22日,一直到0703,都在查资料。同时也最快乐。了解那么多前沿知识,满足感爆棚!

文章是在这个环境下写出来的:


一个专门用来写字儿的地方,两张白纸就是选好的主题与研究进度。有时候没什么都不做,仅仅是蒙头写东西,放上一盘班得瑞的曲子,磨上一杯手冲,足够消磨一个下午了!

--完--

往期精彩:

本号精华合集(三)

外企一道 SQL 面试题,刷掉 494 名候选人

我在面试数据库工程师候选人时,常问的一些题

零基础 SQL 数据库小白,从入门到精通的学习路线与书单

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
当涉及到MySQL源码研究时,以下是一些推荐籍: 1. 《MySQL技术内幕:InnoDB存储引擎》(作者:姜承尧):这本深入介绍了MySQL的InnoDB存储引擎的内部工作原理和实现细节,对于想要深入了解MySQL内部机制的开发人员来说是一本很好的参考。 2. 《MySQL技术内幕:SQL编程》(作者:姜承尧):这本详细介绍了MySQL的SQL编程方面的知识,包括查询优化、索引、事务等内容,对于想要深入理解MySQL的SQL执行过程和性能优化的开发人员来说是一本不错的选择。 3. 《深入浅出MySQL:数据库开发、优化与管理维护》(作者:陈杰):这本从MySQL的基础知识开始,逐步介绍了MySQL的各个方面,包括数据库设计、SQL语法、索引优化、性能调优等内容,适合初学者入门和进阶学习。 4. 《高性能MySQL》(作者:Baron Schwartz等):这本介绍了如何设计、构建和维护高性能的MySQL数据库系统,包括索引优化、查询优化、架构设计等方面的内容,对于需要处理大规模数据和高并发访问的开发人员来说是一本非常有价值的参考。 5. 《MySQL技术内幕:SQL编程》(作者:姜承尧):这本详细介绍了MySQL的SQL编程方面的知识,包括查询优化、索引、事务等内容,对于想要深入理解MySQL的SQL执行过程和性能优化的开发人员来说是一本不错的选择。 这些籍可以帮助你深入了解MySQL的内部工作原理和实现细节,从而更好地进行源码研究和开发。希望对你有帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dbLenis

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值