(这条文章已经被阅读了 113 次) 时间:2001-08-03 10:25:47 来源:黄岚 (黄岚) 原创-IT
关注非结构化数据库,关注iBASE
提起数据库,人们通常不由自主的想起dBASE、Foxbase、Foxpro等小型数据库或者Oracle,SQL Server、DB2等大型数据库以及微软、甲骨文、IBM等数据库厂商。但无论是小型的dBASE还是大型的Oracle,都是针对事物处理和数值计算的关系型数据库,而针对TXT、HTML、DOC、PDF等文档管理的数据库,人们却知之甚少,因此,人们在管理日常大量的文件时,也采用关系数据库来管理,即使关系数据库对这些文件管理并不十分有效。
事实上,关系数据库从1970年发展至今,虽功能日趋完善,但对数据类型的处理只局限于数字、字符等,对多媒体信息的处理只是停留在简单的二进制代码文件的存储。随着网络技术和软件技术的飞速发展,特别是Internet和Intranet技术的发展,使得非结构化数据如TXT、HTML、DOC、PDF的应用日趋扩大。而且,随着用户应用需求的提高、硬件技术的发展和Intranet/Internet提供的多彩的多媒体交流方式,用户对多媒体处理的要求从简单的存储上升为识别、检索和深入加工。用户呼唤出”通用”数据库来处理占信息总量70%的声音、图像、时间序列信号和视频等非结构化的复杂数据类型。
国内长期致力于文档处理的北京国信贝斯软件有限公司的iBase非结构化数据库可谓是应运而生。所谓非结构化数据库,准确的说是一种文档数据库,但与五、六十年代管理数据的文件系统不同,非结构化数据库仍属于数据库范畴。首先,文件系统中的文件基本上对应于某个应用程序。当不同的应用程序所需要的数据有部分相同时,也必须建立各自的文件,而不能共享数据,而非结构化数据库可以共享相同的数据。因此,文件系统比非结构化数据库数据冗余度更大,更浪费存储空间,且更难于管理维护。其次,文件系统中的文件是为某一特定应用服务的,所以,要想对现有的数据再增加一些新的应用是很困难的,系统不容易扩充。数据和程序缺乏独立性。而非结构化数据库具有数据的物理独立性和逻辑独立性,数据和程序分离。
非结构化数据库也不同于关系数据库,关系数据库是高度结构化的,而iBASE数据库允许创建许多不同类型的非结构化的或任意格式的字段,支持多值字段和子字段,其子字段能力能使一个字段里实现一个关系数据库二维表的嵌套,例如在一个档案管理系统里,假如有一个家庭关系的字段,在这个字段里就可以实现其家庭成员情况的二维表,清楚的说明成员的姓名、年龄、工作单位等等。尤其是它具有支持外部文件处理能力,使它能对任意格式、任意大小的图形、声音等多媒体文件进行管理,对超过100M的DOC、PPT、PDF、PDG等文件同样可以进行管理和快速的全文查询,且速度比关系数据库快10倍以上。
与关系数据库的主要不同在于,非结构化数据库不提供对参数完整性和分布事务的支持,因此它的应用范围不适合金融、电信等实时事务处理和数值计算领域,但非常适合WEB内容管理、企业知识管理系统、政务信息系统、文献信息资源保障系统等诸多领域。同时,非结构化数据库与关系数据库也不是相互排斥的,例如iBASE数据库通过关系数据库的ODBC、JDBC可自身的IDBC可以同所有关系数据库和其他数据库系统进行数据交换,通过数据同步系统,实现iBASE数据库与其它数据库数据之间的同步更新,从而相互补充、扩展。
非结构化数据库有点类似Domino,但在数据存储、索引算法、查询效率和处理文档数量上具有很大的区别,如数据变长存储,字段内可以嵌套二维关系表等,而且NOTES更侧重于群件,在数据库管理上比较弱,例如对超过5000个文档,Domino处理效率将会很低。
关系数据库理论已经发展了30年,而国外的关系数据库厂商的产品在国内市场上一直占据统治地位,因此国产数据库软件如果从关系型数据库入手,就只能跟在别人后面。人大的COBASE、东大的OPENBASE等诸多案例都说明了这一点。从关系数据库的弱点入手,开发、推广国产的文档数据库管理系统,对提高国产软件层次,振兴民族软件产业来说,应该说是一条切实可行的新路。
各位牛如有兴趣,不妨访问www.ibase.com.cn