推荐几本数据库基础书

Posted dbLenis

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了推荐几本数据库基础书相关的知识,希望对你有一定的参考价值。

点击蓝色“有关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 数据库小白,从入门到精通的学习路线与书单

以上是关于推荐几本数据库基础书的主要内容,如果未能解决你的问题,请参考以下文章

推荐几本这个系列封面的编程书,涉及Python计算机图形学Linux

推荐几本javaEE的书籍,经典的。不要李刚的(虽然讲的好,但是繁琐,基础东西太多了)。结合了三大框架的

林达华推荐的几本数学书

请教,推荐几本java类书籍

好书推荐:第一期推荐几本数据仓库的经典书

书单推荐丨从JavaScript小白到大神,他们都读过这些书