有个朋友给我来了一封邮件,在邮件中,他这样写到:“国外的实时数据库来势汹汹,价格一路上扬;想当初eDNA 2003年刚到中国时也就是二、三十万左右,现在报价已经百万以前了。心里也总个一个结,难道这个软件真有这么高技术含量吗?难道我们中国人就开发不了这种一个软件吗?......工作之余,这段时间我查阅了一些数据压缩原理方面的资料,我想实时数据库的关键技术也在于此。”
WWW_PLCJS_COM-PLC-技.术_网
这位朋友有激情有思想,对实时数据库的发展有自己的见解,我非常高兴能与这样的朋友交流。这位朋友提出:实时数据库的关键技术是数据压缩技术。这个命题正确吗?
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
无独有偶,昨天去拜访一位朋友,这位朋友在国内一个很有名的公司工作,该公司也有自己的实时数据库产品,他便在该公司负责实时数据库的开发。我问他,以后准备如何改进该实时数据库产品,他说,他准备将该数据库的历史存贮性能进一步提高,该产品目前每秒钟只能存贮1万至2万条历史数据。
WWcW_PLCJS_COM-PLC-技.术_网
我在2003年第一次接触实时数据库,那时也认为实时数据库的关键技术是数据压缩技术。但是现在,我的想法有改变了。
WWW_P※LCJS_CO※M-PLC-技-.术_网
如果不作深入的理论研究,只是研究如何实现一个实时数据库,则可选择的数据压缩算法并不是很多,也就那么三、四种:旋转门压缩、死区压缩、哈佛曼压缩,等等,这些算法,在书籍和网络上可以找到许多现成的算法描述,甚至可以找到源码,而这些源码,在整个实时数据库的实现框架中,只占有极少的部分。可以想象,如果一个压缩算法太复杂,则不可能满足速度和性能的要求。
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
我理解,实时数据库的关键技术,应该在于:如何设计一套简洁的内存、网络和文件数据组织结构,以及相应的算法,以实现对大量点数据的快速并发处理。
WWcW_PLCJS_COM-PLC-技.术_网
本来想展开这个话题,进行深入地讨论和分析,但考虑到公司产品的机密,有些话题现在还不能够讲得很透。只好退而求其次,推荐几本与实时数据库相关的经典书吧:
WWW_PLCJS_COM-PLC-技.术_网
《事务处理:概念与技术》
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
http://www.china-pub.com/computers/common/info.asp?id=16602WWW_P※LCJS_COM-PLC-)技.术_网
《数据库与事务处理》
WWW_P※LCJS_COM-PLC-)技.术_网
http://www.china-pub.com/computers/common/info.asp?id=25125WWW_PLC※JS_COM-PmLC-技.术_网
《分布式数据库系统原理(第2版)(英文影印版)》
plcjs.技.术_网
http://www.china-pub.com/computers/common/info.asp?id=6441WWW_P※LCJS_COM-PLC-)技.术_网
讲到经典书,我的一个同事,列了一个C++编码的经典书书单:
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
<C++ primer>
WW.W_PLCJS_COM-PLC-技.术_网
<C++ 程序设计语言〉WWW_PLCJS@_COM%-PLC-技.术_网
<Thinking in C++> WWW.PLCJS.COM——可编程控制器技术门户
<C++ 编程规范> WWW_PLCJS@_COM%-PLC-技.术_网
====================================
WW.W_PLCJS_COM-PLC-技.术_网
<C陷阱和缺陷> WWW_PLC※JS_COM-PmLC-技.术_网
<C和指针〉 WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
<C专家编程〉 WWW_P※LCJS_COM-PLC-)技.术_网
<Effective C++> WWW_PLCJS@_COM%-PLC-技.术_网
<More Effective C++> WWcW_PLCJS_COM-PLC-技.术_网
<Exceptional C++> WWW_P※LCJS_CO※M-PLC-技-.术_网
<More Exceptional C++> WWW_PLCJS_COM-PLC-技.术_网
<Exceptional C++ Style> ——可——编——程——控-制-器-技——术——门——户
====================================
WWW_P※LCJS_COM-PLC-)技.术_网
<标准模板库〉 P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
<STL源码剖析〉 WWW.PLCJS.COM——可编程控制器技术门户
<泛型编程与STL> plcjs.技.术_网
<Effective STL> WWW_PLC※JS_COM-PmLC-技.术_网
<C++ Standard Template Library> WWW_PL※CJS_COM-PLC-技.术_网
====================================
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
<深入探索C++对象模型〉 plcjs.技.术_网
<设计模式> plcjs.技.术_网
<C++ Template> WW.W_PLC※JS_C,OM-PL,C-技.术_网
<C++设计新思维> W1WW_P4LCJS_COM-PLC-技.术_网
<深入浅出MFC> WWW_PL※CJS_COM-PLC-技.术_网
《单元测试之道 C#版》
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
《人月神话》
WW.W_PLCJS_COM-PLC-技.术_网
《高质量C++编程》
WWW_P※LCJS_COM-PLC-)技.术_网
《重构》
P.L.C.技.术.网——可编程控制器技术门户
《ACE程序设计指南》
WWW_PLC※JS_COM-PmLC-技.术_网
《Intel CPU 多核程序设计》
WW.W_PLCJS_COM-PLC-技.术_网
《现代数据库理论与技术》
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
《网络设计模式》
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
《内存受限系统设计模式
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)