dunwu /db-tutorial

📚 后端程序员应该掌握的主流数据库知识

★ 5,386⑂ 648👁 45⑃ 28● 7▤ 0
JavaCreated 2017-08-08dunwu.github.io/db-tutorial/
5,386
stars
+0+-1+8
648
forks
45
watchers
28
prs
7
issues
0
releases
–
discussions

README

DB-TUTORIAL

 💾 db-tutorial 是一个数据库教程。

 - 🔁 项目同步维护:Github | Gitee
 - 📖 电子书阅读:Github Pages | Gitee Pages

 数据库综合

 分布式存储原理

 分布式理论

- 分布式一致性
- 深入剖析共识性算法 Paxos
- 深入剖析共识性算法 Raft
- 分布式算法 Gossip

 分布式关键技术

 流量调度

- 流量控制
- 负载均衡
- 服务路由
- 分布式会话基本原理

 数据调度

- 缓存基本原理
- 读写分离基本原理
- 分库分表基本原理
- 分布式 ID 基本原理
- 分布式事务基本原理
- 分布式锁基本原理

 其他

- Nosql 技术选型
- 数据结构与数据库索引

 数据库中间件

- ShardingSphere 简介
- ShardingSphere Jdbc
- 版本管理中间件 Flyway

 关系型数据库

 关系型数据库 整理主流关系型数据库知识点。

 关系型数据库综合

- 关系型数据库面试总结 💯
- SQL 语法基础特性
- SQL 语法高级特性
- 扩展 SQL
- SQL Cheat Sheet

 Mysql

!img

- Mysql 应用指南 ⚡
- Mysql 工作流 - 关键词:连接、缓存、语法分析、优化、执行引擎、redo log、bin log、两阶段提交
- Mysql 事务 - 关键词:ACID、AUTOCOMMIT、事务隔离级别、死锁、分布式事务
- Mysql 锁 - 关键词:乐观锁、表级锁、行级锁、意向锁、MVCC、Next-key 锁
- Mysql 索引 - 关键词:Hash、B 树、聚簇索引、回表
- Mysql 性能优化
- Mysql 运维 🔨
- Mysql 配置 🔨
- Mysql 问题

 其他

- PostgreSQL 应用指南
- H2 应用指南
- SqLite 应用指南

 文档数据库

 MongoDB

 MongoDB 是一个基于文档的分布式数据库,由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。

 MongoDB 是一个介于关系型数据库和非关系型数据库之间的产品。它是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似 json 的 bson 格式,因此可以存储比较复杂的数据类型。

 MongoDB 最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

- MongoDB 应用指南
- MongoDB 的 CRUD 操作
- MongoDB 聚合操作
- MongoDB 事务
- MongoDB 建模
- MongoDB 建模示例
- MongoDB 索引
- MongoDB 复制
- MongoDB 分片
- MongoDB 运维

 KV 数据库

 Redis

!img

- Redis 面试总结 💯
- Redis 应用指南 ⚡ - 关键词:内存淘汰、事件、事务、管道、发布与订阅
- Redis 数据类型和应用 - 关键词:STRING、HASH、LIST、SET、ZSET、BitMap、HyperLogLog、Geo
- Redis 持久化 - 关键词:RDB、AOF、SAVE、BGSAVE、appendfsync
- Redis 复制 - 关键词:SLAVEOF、SYNC、PSYNC、REPLCONF ACK
- Redis 哨兵 - 关键词:Sentinel、PING、INFO、Raft
- Redis 集群 - 关键词:CLUSTER MEET、Hash slot、MOVED、ASK、SLAVEOF no one、redis-trib
- Redis 实战 - 关键词:缓存、分布式锁、布隆过滤器
- Redis 运维 🔨 - 关键词:安装、命令、集群、客户端

 列式数据库

 HBase

- HBase 快速入门
- HBase 数据模型
- HBase Schema 设计
- HBase 架构
- HBase Java API 基础特性
- HBase Java API 高级特性之过滤器
- HBase Java API 高级特性之协处理器
- HBase Java API 其他高级特性
- HBase 运维
- HBase 命令

 搜索引擎数据库

 Elasticsearch

 Elasticsearch 是一个基于 Lucene 的搜索和数据分析工具,它提供了一个分布式服务。Elasticsearch 是遵从 Apache 开源条款的一款开源产品,是当前主流的企业级搜索引擎。

- Elasticsearch 面试总结 💯
- Elasticsearch 快速入门
- Elasticsearch 简介
- Elasticsearch 索引
- Elasticsearch 查询
- Elasticsearch 高亮
- Elasticsearch 排序
- Elasticsearch 聚合
- Elasticsearch 分析器
- Elasticsearch 性能优化
- Elasticsearch Rest API
- ElasticSearch Java API 之 High Level REST Client
- Elasticsearch 集群和分片
- Elasticsearch 运维

 Elastic

- Elastic 快速入门
- Elastic 技术栈之 Filebeat
- Filebeat 运维
- Elastic 技术栈之 Kibana
- Kibana 运维
- Elastic 技术栈之 Logstash
- Logstash 运维

 资料 📚

 数据库综合资料

- DB-Engines - 数据库流行度排名
- 书籍
  - 《数据密集型应用系统设计》 - 这可能是目前最好的分布式存储书籍,强力推荐【进阶】
- 教程
  - CMU 15445 数据库基础课程
  - CMU 15721 数据库高级课程
  - 检索技术核心 20 讲 - 极客教程【进阶】
  - 后端存储实战课 - 极客教程【入门】:讲解存储在电商领域的种种应用和一些基本特性
- 论文
  - Efficiency in the Columbia Database Query Optimizer
  - How Good Are Query Optimizers, Really?
  - Architecture of a Database System
  - Data Structures for Databases
- 文章
  - Data Structures and Algorithms for Big Databases

 关系型数据库资料

- 综合资料
  - 《数据库的索引设计与优化》
  - 《SQL 必知必会》 - SQL 的基本概念和语法【入门】
- Or

Snapshot: 2026-11-04T14:00:00Z · Data license Apache-2.0 · JSON