xiake918 发表于 2019-3-23 23:49

数据库引擎技术开发

课程介绍:

该课程通过15次课,大约30课时介绍创建一个简易分布式文档型数据库,课程偏底层,需要懂c和数据库原理

学习目标:

1.创建一个Linux下简易分布式文档型数据库
2.深入理解NoSQL数据库的内部工作原理
3.实现一个可存取数据的分布式数据存储
4.理解文档式NoSQL数据库的适用场景
5.了解关系型数据库与非关系型的针对特性与各自的实现机制
6.暂时还没有列入本课程的内容:
7.实现关系型数据库的ACID
8.实现商用型非关系型数据库
9.保证数据的高可用性与稳定性
10.SQL语法解析

适合人群:

熟悉C/C++语言
对数据库底层实现感兴趣的IT人或学习者有兴趣往源代码方向发展的挑战者

预期收获:

1 知道怎样去设计和实现一个数据库,从而获得加入数据库软件厂商的研发团队的机会
2 通过课程极度熟悉c++编程,特别是socket编程和内存管理,这是晋升c++高手的必经之路,c语言的能力属于内功级,可以增加IT人的底气,无论从事系统级软件,还是底层开发,嵌入式开发,移动开发,客户端开发都能得心应手!具备源码级挑战能力的高手深受各大企业的欢迎,金饭碗指日可待!
3 加深对数据库的理解,即使只是数据库用家也能从中获益

编程语言:

语言:C++

目标代码量1-3万行

课程目录:

第一课:NoSQL数据库简介与环境配置

讲述数据库的核心功能,以及NoSQL与关系型数据库的侧重点
简述该课程的目标,在课程结束后能够实现的数据库功能
介绍数据库的整体架构
介绍开发环境的搭建
预计时间两小时

第二课:建立数据库连接

实现单线程客户端连接,能够向服务端发送请求
实现多线程服务端连接,能够从客户端接收请求
预计时间两小时

第三课:阀锁,配置,日志等

定义服务端的一些底层基础组件
预计时间两小时

第四课:数据库引擎底层搭建1

建立线程数据结构
建立线程调度机制
预计时间两小时

第五课:消息封装

定义客户端服务器的消息通讯结构
预计时间两小时

第六课:数据的持久化存放

Mmap,内存与磁盘的映射
数据块的分配与回收
预计时间两小时

第七课:数据的存储结构

BSON与数据记录的结构设计
数据文件存储结构设计
预计时间两小时

第八课:数据的插入,读取与删除

数据的插入,查询与删除
客户端增加相应的功能
预计时间两小时

第九课:散列索引

数据键的散列桶与内存结构
数据库启动自动建立散列索引
预计时间两小时

第十课:数据库理论

介绍数据库的一些基本原理,包括事务,SQL编译与执行等
预计时间两小时

第十一课:SQL解析和优化

SQL编译进阶,优化器概念与实现原理。
预计时间2小时

第十二课:Java驱动

连接多点数据库并查询
建立数据的散列机制,能够在正确的分区上查找数据
预计时间一小时

第十三课:监控、性能调优和测试

介绍数据库监控和调优理论,并实现数据库的基本监控快照功能
介绍软件测试流程与自动化测试
预计时间两小时

第十四课:Java应用

建立Java应用程序,使用驱动与数据库通讯
预计时间两小时

第十五课:总结
总结前14节课的步骤


链接:https://pan.baidu.com/s/1Mg86660liLf8Qj56iMfcHQ 密码:mid6

链接已失效


天雨 发表于 2019-10-6 09:27

学习一下数据库技术开发感谢

blue_sea25 发表于 2019-10-6 09:36

数据库引擎技术开发

xqkxqk 发表于 2020-3-17 22:14

如果您要查看本帖隐藏内容请回复

patrickgao 发表于 2020-3-17 22:47

66666666666666666

jojojun168 发表于 2021-11-1 16:18

激动人心,无法言表!

qqyuan7979 发表于 2021-12-26 19:14

无回帖,不论坛,这才是人道。

rust 发表于 2022-5-17 04:30

无回帖,不论坛,这才是人道。

@123 发表于 2023-6-29 23:58

淡定,淡定,淡定……

星河万里 发表于 2023-6-30 00:06

666666
页: [1] 2
查看完整版本: 数据库引擎技术开发