找回密码
 立即注册
查看: 1077|回复: 0

炼数成金 C++ 数据库引擎开发 数据库引擎与 SQL 优化器开发

[复制链接]
累计签到:85 天
连续签到:1 天
发表于 2019-5-16 15:16:21 | 显示全部楼层 |阅读模式
通过 15 次课,约 30 个课时,搭建起一个 NoSQL 数据库,让大家明白真实的数据库的工作原理,并在最后编写出一个基于 Java 的驱动。
2 @! a' D: N9 W  ~+ J
1 P" T) H1 l. f$ @4 S9 u7 a本课程为原先《数据库引擎开发》课程第二版改版,增加了大家较为感兴趣的“SQL优化器开发”部分,课程名也改成《数据库引擎与 SQL 优化器开发》。SQL 优化器设计是任何数据库的核心技术,加入这部分内容后,本课程所研发的数据库已经超出原有范畴,迥然变身成当前最时尚的 NewSQL 数据库!
# P: Q4 |( z( U0 a* E; R8 J/ J& }' j% s8 l3 @% Z
目标:创建一个 Linux 下简易分布式文档型数据库
+ J/ ]* c3 K7 q) e. p* C# M/ f1 f4 K8 I
+ ^; u+ L' d, c5 o/ z: {语言:C++# Y! G0 [# Q" s) Q- Q; v# T

$ b( k$ O+ y. a" ]1 i数据库支持:5 K3 H4 n# V6 d0 G
多线程& ]2 {8 W  W& u" k% ?2 _$ Y
记录的增删查1 @( k2 c( c- Q  y* a! h4 {# D
单条记录的原子性操作
- @" {7 Q2 P1 Q& H" o持久化磁盘存储
6 g, X8 a7 ^0 e  _! s: B' a分布式存储: b# m+ S! t# ]+ H. M
BSON的记录格式3 H- V0 v! J; J1 V+ ]
全部查询或者_id精准查询  P# Q! U& q$ y$ n9 _
_id字段的散列索引. h0 N/ \2 l! `
不支持:
5 T0 m3 s; ?2 h# `5 F: v多层数据结构(比如表空间、表等概念)
- v+ [* L; ]& i4 x+ t事务
/ ~1 `+ s: i0 X& s6 E3 o: o+ j4 Z5 P高可用
6 Q- V, \+ i8 N4 ^范围查询
! Q) ~+ a, J* @, ^3 N' [在线增删节点9 J* W2 P" o% G- |' |2 T$ L
除_id以外字段的检索
& R" i8 U/ _3 u' u; s  w数据修改
7 `$ C/ P9 U% }/ M. J/ O: p, Y1 a锁" b" v* |( }& k
持久性0 A# H1 _6 D1 Z/ n/ C
SQL查询# W. _3 }  u' F- T% G9 B3 J
! g( r- B' N9 T7 B3 |7 I
通过本课学员可以:
. l+ [( ~& a8 M& U' d深入理解NoSQL数据库的内部工作原理! Z. T2 N3 M: X' }( D- z
实现一个可存取数据的分布式数据存储
+ D2 Q3 j5 y' [8 p  x理解文档式NoSQL数据库的适用场景& ^/ L6 g# _/ G9 B
了解关系型数据库与非关系型的针对特性与各自的实现机制
3 o6 d: }1 S) Q* Y暂时还没有列入本课程的内容:
0 @7 n+ n, W7 A实现关系型数据库的ACID
- w) g8 O9 n0 B  c, U4 R5 z实现商用型非关系型数据库2 N" |  x" \, s' j: G' Q
保证数据的高可用性与稳定性( m" l1 J8 J! }% f
SQL语法解析
" K, v. y- X0 \; R
5 F+ N+ O2 t4 c  {课程内容:
# E* s9 j7 [% a; W( Y: |; ]第一课:NoSQL 数据库简介与环境配置* i0 p3 o6 u! N$ M3 C
第二课:建立数据库连接
. Q2 t; h$ O4 t$ R* H% e第三课:阀锁,配置,日志等8 T# @% c: u! ]. U+ h8 |
第四课:数据库引擎底层搭建
$ ?# e3 N' {# ]) W: u第五课:消息封装+ S% |. F% Q) d2 ?% j6 r' e" P3 U- I) i, M
第六课:数据的持久化存放
* k8 o- ?2 a/ n& [* E4 i7 [8 x- y* w- D第七课:数据的存储结构
1 U! y# L, ^! N- U第八课:数据的插入,读取与删除
- e  q7 M, }: q- T3 V1 x第九课:散列索引7 l7 B! `7 J1 C
第十课:数据库理论; k" T! ~: o* B* h: p" O
第十一课:SQL 解析和优化
* T* c9 B5 M4 W! a0 v9 n3 Y第十二课:Java 驱动
2 p6 R4 _' v( W第十三课:监控、性能调优和测试
) G4 q5 r" `. `! S* E6 j2 r第十四课:Java 应用" f5 P! H, Z3 n9 `3 S# P' c) k; W$ Z# g
第十五课:总结* H: T0 s6 L- S: ^. w

$ `, z  h- `( D, U1 e% R* f

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

点击这里给我发消息

QQ|小黑屋|Archiver|手机版|一路学IT论坛 专业视频教程网站

GMT+8, 2026-10-28 09:37

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表