数据库制作步骤
2017-03-22 15:56
23 查看
做过一个 ANSI-SQL兼容 事物化 分布式 内存数据库,还只是用于某内部项目而不需要实现得特别完整的情况下,写了我好一段时间昼夜不分。
简单来说还是几个步骤:
1. 学习:了解数据库中各个概念,弄不清概念接下来就是一头雾水。
2. 实践:从使用数据库开始,至少使用过几款数据库后,最好是在实际项目中使用,才能对各个概念有实际的印象。
3. 借鉴:读现有数据库的源代码,强烈推荐 SQLite 的代码。
4. 准备:根据已有知识,来决定自己要一个用于什么目的的数据库,需要什么特性,比起其他数据库有什么优劣,如何实现。使用什么语言,自己是不是熟悉这门语言的特性,这些都很重要。
5. 原型:数据库这种大体量的东西,千万不可能一口气吃成大胖子,一次性写出成品数据库是很难的。可以先开发一个原型,拥有数据库的主要特性。
6. 重构:现在你已经跳入过很多坑,在重构中你已经可以规避其中大多数。不要无限地重构,这样会没完没了。
7. 迭代:设计升级迭代的路径很重要,如果你想做一个越来越成熟的产品的话。
原型阶段,个人经验一两个月就行了。但重构阶段和迭代阶段会非常漫长,挖坑容易填坑难。
我设计的虽然是内存数据库,但是分布式特性,所以网络 I/O 以及分布式相关的内容成为了很多坑,我是一遍读别人代码一遍读论文度过的。写到后面突然需求要加持久化和备份的功能,又落入了磁盘 I/O 坑,苦不堪言。一上来准备充足还是有必要的,当然写了这玩意对我也有很大的帮助。
看到题主是 ACMer,有必要说点别的:
一定要写文档,否则别人没法用,时间长了你自己也不知道自己在干嘛,虽然写文档很烦。
一定要写测试,自动化测试是任何可靠的大型项目所必须的。完善的测试也能说服别人使用你的数据库。
搞 ACM 对数据库算法优化应该会起到很大的帮助。但 ACMer 也要养成良好的工程习惯,否则面对十万行的代码,一堆 a b c d 的变量绝对是无法维护的。注释、文档和测试都是相当反人类的,但是面对软件工程,是非常必须的。
简单来说还是几个步骤:
1. 学习:了解数据库中各个概念,弄不清概念接下来就是一头雾水。
2. 实践:从使用数据库开始,至少使用过几款数据库后,最好是在实际项目中使用,才能对各个概念有实际的印象。
3. 借鉴:读现有数据库的源代码,强烈推荐 SQLite 的代码。
4. 准备:根据已有知识,来决定自己要一个用于什么目的的数据库,需要什么特性,比起其他数据库有什么优劣,如何实现。使用什么语言,自己是不是熟悉这门语言的特性,这些都很重要。
5. 原型:数据库这种大体量的东西,千万不可能一口气吃成大胖子,一次性写出成品数据库是很难的。可以先开发一个原型,拥有数据库的主要特性。
6. 重构:现在你已经跳入过很多坑,在重构中你已经可以规避其中大多数。不要无限地重构,这样会没完没了。
7. 迭代:设计升级迭代的路径很重要,如果你想做一个越来越成熟的产品的话。
原型阶段,个人经验一两个月就行了。但重构阶段和迭代阶段会非常漫长,挖坑容易填坑难。
我设计的虽然是内存数据库,但是分布式特性,所以网络 I/O 以及分布式相关的内容成为了很多坑,我是一遍读别人代码一遍读论文度过的。写到后面突然需求要加持久化和备份的功能,又落入了磁盘 I/O 坑,苦不堪言。一上来准备充足还是有必要的,当然写了这玩意对我也有很大的帮助。
看到题主是 ACMer,有必要说点别的:
一定要写文档,否则别人没法用,时间长了你自己也不知道自己在干嘛,虽然写文档很烦。
一定要写测试,自动化测试是任何可靠的大型项目所必须的。完善的测试也能说服别人使用你的数据库。
搞 ACM 对数据库算法优化应该会起到很大的帮助。但 ACMer 也要养成良好的工程习惯,否则面对十万行的代码,一堆 a b c d 的变量绝对是无法维护的。注释、文档和测试都是相当反人类的,但是面对软件工程,是非常必须的。
相关文章推荐
- C#:创建 SQL Server 数据库的步骤
- 用InstallShield制作数据库应用系统的安装程序(2000年8月17日) 作者:新疆 宗宏斌
- ADO.net连接数据库步骤及分析
- 数据库日志文件丢失时的恢复步骤
- 数据库系统崩溃后的一般处理步骤
- 数据库插入使用参数的方法 一般步骤
- 用Vs.net制作数据库安装程序
- [DNN模块开发]快速正确的制作DNN模块数据库安装脚本(2006-4-20重新修订)
- 数据库设计5步骤
- InstallShield Express制作Delphi数据库安装程序
- 使用ADO.NET数据库编程的基本步骤
- oracle数据库基本建数据库和查询步骤
- 思维导图制作步骤说明
- 日志文件满而不慎把数据库日志文件误删除时的恢复步骤
- 基于ADO+Adodc控件+DataGrid控件制作的一个数据库编辑程序(完整原程序)
- 数据库日志文件丢失时的恢复步骤
- 在DELPHI中利用ADO组件访问数据库的步骤
- Windows Xp上手工创建数据库Oracle9i的完整步骤
- 数据库系统崩溃后的一般处理步骤
- 数据库系统崩溃后的一般处理步骤