左耳听风
陈皓
网名“左耳朵耗子”,资深技术专家
180930 人已学习
新⼈⾸单¥98
登录后,你可以任选6讲全文学习
课程目录
已完结/共 119 讲
左耳听风
15
15
1.0x
00:00/00:00
登录|注册

80 | 程序员练级攻略:数据库

官方文档
《HBase权威指南》
Netflix Benchmark
Instagram PPT
Discord技术文章
Yelp博客
沃尔玛实验室文章
资源列表
性能调优实践
官方文档
ElasticSearch
图数据库介绍文章
《图数据库入门》
IBM Developerworks PPT
Redis
CouchDB
SimpleDB
MongoDB
HBase
Cassandra
论文:HBase
论文:分布式大数据系统
CAP原理
Martin Fowler的NoSQL介绍
官方文档
《MySQL索引设计与优化》
《MySQL技术内幕》
《高性能MySQL》
搜索数据库
图数据库
时序数据库
数据结构数据库
文档数据库
列数据库
概念和初衷
MySQL
Oracle
NoSQL数据库
关系型数据库
数据库

该思维导图由 AI 生成,仅供参考

你好,我是陈皓,网名左耳朵耗子。
对于数据库方向,重点就是两种数据库,一种是以 SQL 为代表的关系型数据库,另一种是以非 SQL 为代表的 NoSQL 数据库。关系型数据库主要有三个:Oracle、MySQL 和 Postgres。
在这里,我们只讨论越来越主流的 MySQL 数据库。首先,我们要了解数据库的一些实现原理和内存的一些细节,然后我们要知道数据的高可用和数据复制这些比较重要的话题,了解一下关系型数据库的一些实践和难点。然后,我们会进入到 NoSQL 数据库的学习。
NoSQL 数据库千奇百怪,其主要是解决了关系型数据库中的各种问题。第一个大问题就是数据的 Schema 非常多,用关系型数据库来表示不同的 Data Schema 是非常笨拙的,所以要有不同的数据库(如时序型、键值对型、搜索型、文档型、图结构型等)。另一个大问题是,关系型数据库的 ACID 是一件很讨厌的事,这极大地影响了数据库的性能和扩展性,所以 NoSQL 在这上面做了相应的妥协以解决大规模伸缩的问题。
对于一个程序员,你可能觉得数据库的事都是 DBA 的事,然而我想告诉你你错了,这些事才真正是程序员的事。因为程序是需要和数据打交道的,所以程序员或架构师不仅需要设计数据模型,还要保证整体系统的稳定性和可用性,数据是整个系统中关键中的关键。所以,作为一个架构师或程序员,你必须了解最重要的数据存储——数据库。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

程序员练级攻略:数据库学习重点 数据库是程序员必备的重要技能之一,本文从左耳朵耗子的角度介绍了程序员练级攻略中的数据库学习重点。文章首先强调了数据库对程序员的重要性,指出数据库不仅是DBA的事情,而是程序员的事情。程序员需要设计数据模型,确保系统稳定性和可用性,因此数据库是整个系统中关键的一环。文章重点介绍了关系型数据库和NoSQL数据库的重要性,以及MySQL作为主流关系型数据库的学习重点。对于关系型数据库,推荐了一系列经典的书籍和资源,包括MySQL的内部原理、索引设计和优化等方面的学习资料。此外,还介绍了MySQL的分支Percona和MariaDB的学习资源,以及一些公司的MySQL数据库使用经验分享。对于NoSQL数据库,文章推荐了一些资料和文章,涵盖了NoSQL的概念、CAP原理、各种NoSQL数据库的使用经验等方面。此外,还介绍了不同类型的NoSQL数据库,如列数据库、文档数据库、数据结构数据库、时序数据库、图数据库和搜索数据库,以及相关的学习资源和经验分享。总的来说,本文为程序员提供了全面的数据库学习攻略,涵盖了关系型数据库和NoSQL数据库的重要知识点和学习资源,对于想要系统学习数据库知识的程序员来说,是一份非常有价值的指南。文章内容丰富,既有理论知识又有实际应用经验,适合程序员快速了解数据库学习的重点和方向。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《左耳听风》
新⼈⾸单¥98
立即购买
登录 后留言

全部留言(39)

  • 最新
  • 精选
  • 吐司是只猫
    链接的质量很高,但读者更想看耗子的理解和总结吧,希望多点描述性文字。

    作者回复: 在高手篇开篇描述中,我有如下的描述: 我假设你在前面已经打下了非常扎实的基础,但是要成为一个高手,基础知识只是一个地基,你还需要很多更为具体的技术。对我来说,就是看各种各样的文章、手册、论文、分享…… 其实,学习到一定程度,就是要从书本中走出去,到社区里和大家一起学习,而且还需要自己找食吃了。【所以,对于这里面的文章,有很多都是在罗列各种文章和资源,只是为你梳理信息源,而不是喂你吃饭】。 老实说,我已经为你梳理并过滤掉了很多的信息,这里只留下了 30% 我觉得最经济也最有价值的信息。虽然对于不同定位和不同需求的人还可以再对这些信息进行删减,但是觉得我这么一做就会对其它人不公平了。【所以,这也是我觉得最小数量集的信息和资源吧。你也可以把我这里的东西当成一个索引来对待】。

    2018-07-05
    2
    46
  • 无风
    这一系列看下,真的很难想象皓哥是如何做到如此广面的知识积累

    作者回复: 我至少看了3倍于这些资料的量,才给出这些东西。这主要是兴趣和坚持

    2018-07-05
    38
  • 文盲筱烨
    陈老师, 请教下,pg数据库未来的发展 数据库有点群雄四起

    作者回复: 我对pg不熟悉,我只知道pg还没到主流数据库的程度。未来是否有大发展还看是否有大公司支持,是否有杀手级应用,目前还看不到。

    2018-07-17
    1
  • 请问,怎么评价tidb

    作者回复: 这个问题练级攻略无关。

    2018-07-05
  • Andy
    耗子哥提供了很好的学习资源,但我觉得还是需要注意一点,不要沉溺于这些知识细节之中,把握关键点,根据自身需要去有的放矢的学习和实践,这才是最高效的学习方法,以自我的问题和需求出发,去寻找解决方案,构建自己的知识体系。切记,吾生也有涯,而知也无涯,以有涯随无涯,殆已!
    2021-01-20
    27
  • 刘強
    资料看多了,我对高手有了不同的理解。我觉得真正的高手是有自己的想法,自己的个性,独特的思维,解决问题的方式。看书再多,都理解了,都掌握了,顶多也不过是嚼别人嚼过的东西。这样的人貌似比大多数人强,其实他只不过是比别人看的多而已。有自己的思考,有自己独特的思想,有自己的输出,进而影响到别人,这才叫高手。我认为黑客才是真正的高手。这里的黑客是黑客与画家里面的定义。
    2018-07-07
    16
  • yanfan_software
    会用数据库并不代表就能设计好数据库,设计数据库与业务关联,需要了解用户需求和业务联系,这篇文章主要是介绍各个数据库的而非设计,但也没提太多底层,数据库优化,希望耗子叔可以抽空给讲讲这些。
    2018-07-05
    2
    14
  • 少年姜太公
    耗子叔,除了阅读书籍、博客和论文,有没有开源代码阅读经验分享。我的体会是阅读优秀开源代码就好比阅读经典文学作品,从中学习编程风格,设计思想以提高自身代码编写质量,偶尔还能把某些开源项目的代码片段、编写思路应用到自己代码中。求耗子叔分享一下阅读开源项目和提高编程水平的经验
    2018-07-07
    12
  • 1 Player
    皓叔,有些东西学习过后,一段时间不用就会忘了。怎么解决这种问题呢。
    2018-07-05
    11
  • 杨书清
    感觉对普通程序猿来说数据库的建模和设计也很重要,有这方面的资料推荐么?
    2018-07-05
    9
收起评论
显示
设置
留言
39
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部