TA的每日心情 | 无聊 2024-7-25 02:03 |
---|
签到天数: 109 天 [LV.6]常住居民II
管理员
- 积分
- 0
|
通过 15 次课,约 30 个课时,搭建起一个 NoSQL 数据库,让大家明白真实的数据库的工作原理,并在最后编写出一个基于 Java 的驱动。
本课程为原先《数据库引擎开发》课程第二版改版,增加了大家较为感兴趣的“SQL优化器开发”部分,课程名也改成《数据库引擎与 SQL 优化器开发》。SQL 优化器设计是任何数据库的核心技术,加入这部分内容后,本课程所研发的数据库已经超出原有范畴,迥然变身成当前最时尚的 NewSQL 数据库!
中国IT行业起步较晚,加上国情和民族性格的原因,大部分人更乐于使用外国人现成的软件(大部分还是盗版),开发点小应用,系统级别的软件几乎没有胆量去挑战。在大多数国人的心目中,象大型操作系统,大型数据库系统这样的软件,就是个禁区。对于性格容易自卑,技术学习没有恒心和耐力,遇难则退的国人,根本从来没有想象过有一天,自己也有能力去挑战。君不见,PUB 上的数据库爱好者们,对于各种 Oracle 内幕,比如块构造,隐藏参数等津津乐道,对于调整好一条 SQL 使之在甲骨文的优化器下能高性能运转具有巨大的满足感成功感,仿佛自己掌握了天下最有价值的真理,驾驭了天下最有难度的技术。但对于设计,编写出这个数据库的人来说,他们看到此情此景,只好躲在一边偷偷哂笑。用数据库的称为大师,那么自己写出一个数据库的又该称为什么呢?
我们具有聪明的头脑,缺乏的是高瞻远瞩的眼光和迎难而上的勇气!现在,我们设计了一个新的课程,参与者将有机会学习怎样用 C++ 写出一个完整的数据库软件!而这个课程几乎是免费的!课程不光培养技术,更加培养勇气!
《数据库引擎与 SQL 优化器开发》课程概述:该课程通过 15 次课,大约 30 课时介绍创建一个简易分布式文档型数据库
目标:创建一个 Linux 下简易分布式文档型数据库
语言:C++
目标代码量:1-3万行
数据库支持:
多线程
记录的增删查
单条记录的原子性操作
持久化磁盘存储
分布式存储
BSON的记录格式
全部查询或者_id精准查询
_id字段的散列索引
不支持:
多层数据结构(比如表空间、表等概念)
事务
高可用
范围查询
在线增删节点
除_id以外字段的检索
数据修改
锁
持久性
SQL查询
通过本课学员可以:
深入理解NoSQL数据库的内部工作原理
实现一个可存取数据的分布式数据存储
理解文档式NoSQL数据库的适用场景
了解关系型数据库与非关系型的针对特性与各自的实现机制
暂时还没有列入本课程的内容:
实现关系型数据库的ACID
实现商用型非关系型数据库
保证数据的高可用性与稳定性
SQL语法解析
课程内容:
第一课:NoSQL 数据库简介与环境配置
第二课:建立数据库连接
第三课:阀锁,配置,日志等
第四课:数据库引擎底层搭建
第五课:消息封装
第六课:数据的持久化存放
第七课:数据的存储结构
第八课:数据的插入,读取与删除
第九课:散列索引
第十课:数据库理论
第十一课:SQL 解析和优化
第十二课:Java 驱动
第十三课:监控、性能调优和测试
第十四课:Java 应用
第十五课:总结
预期收获
知道怎样去设计和实现一个数据库,从而获得加入数据库软件厂商的研发团队的机会。
通过课程极度熟悉 C++ 编程,特别是 socket 编程和内存管理,这是晋升 C++ 高手的必经之路,C 语言的能力属于内功级,可以增加 IT 人的底气,无论从事系统级软件,还是底层开发,嵌入式开发,移动开发,客户端开发都能得心应手!具备源码级挑战能力的高手深受各大企业的欢迎,金饭碗指日可待!
加深对数据库的理解,即使只是数据库用家也能从中获益。
|
|