【IT168技术分析评论】
异构数据从支持到流通
异构数据库系统是相关的多个数据库系统的集合,可以实现数据的共享和透明访问,每个数据库系统在加入异构数据库系统之前本身就已经存在,拥有自己的DMBS。异构数据库的各个组成部分具有自身的自治性,实现数据共享的同时,每个数据库系统仍保有自己的应用特性、完整性控制和安全性控制。异构数据库系统的异构性主要体现在以下几个方面:
计算机体系结构的异构 各个参与的数据库可以分别运行在大型机、小型机、工作站、PC或嵌入式系统中。
基础操作系统的异构 各个数据库系统的基础操作系统可以是Unix、Windows NT、 Linux等。
DMBS本身的异构 可以是同为关系型数据库系统的Oracle、 SQL Server等,也可以是不同数据模型的数据库,如关系、模式、层次、网络、面向对象,函数型数据库共同组成一个异构数据库系统。
----异构数据库系统的目标在于实现不同数据库之间的数据信息资源、硬件设备资源和人力资源的合并和共享。其中关键的一点就是以局部数据库模式为基础,建立全局的数据模式或全局外视图。这种全局模式对于建立高级的决策支持系统尤为重要。
----大型机构在许多地点都有分支机构,每个子机构的数据库中都有着自己的信息数据,而决策制订人员一般只关心宏观的、为全局模式所描述的信息。建立在数据仓库技术基础上的异构数据库全局模式的描述是一种好的解决方案。数据仓库可以从异构数据库系统中的多个数据库中收集信息,并建立统一的全局模式,同时收集的数据还支持对历史数据的访问,用户通过数据仓库提供的统一的数据接口进行决策支持的查询。
在以前的数据库中,一直强调数据的标准化。也就是说,在以前,数据库主要管理的时结构化的数据,数据是以行列的二纬形势进行存储。若需要实现三维数据,如数据仓库等等,都要根据一定的规则对数据库进行叠加才能够完成。但是,这个工作量会很大,而且维护起来也会很吃力。
随着企业系统集成的需要,企业想把电子邮件、多媒体文件、附件等等都包含在一个系统中,以减少系统的重复投资。在这种趋势下,支持异构数据的数据库技术也纷纷冒出来。其实,这在06年已经有了苗头。那时,各大数据库厂商纷纷通过插件的形式在支持各种异构数据。在今年推出的数据库新版本,已经有的厂商把对异构数据的支持集成到数据库的基本功能中。但是,由于是第一次实现,所以,还存在着一些漏洞。相信在09年,数据库厂商推出的升级软件中,会弥补这些漏洞。让异构数据能够像结构化数据那样进行管理、查询等等。
对于微软的SQLServer数据库来说,其提供了一种叫做Xquery的标准。根据这个标准,可以把一些异构数据放入到数据库中,并提供原生支持。早在微软2005版本的数据库中,已经有这方面的技术实现。但是,这种技术若要真正的应用起来,估计还需要在09年。因为一种新技术的出现,刚开始难免会存在一些BUG,比较难普及开来。
所以,若从专业的角度讲,在09年数据库技术的发展中,最突出的变现就是从二维表存储方式到多维数组的存储方式的转变。通过多维数组技术,不单可以把语音文件等异构数据存入到数据库中,便于统一管理;而且还可以直接实现数据仓库。
相信在09年,数据库管理员可以利用SQL语句,像管理同构数据那样,对异构数据进行操作,包括新建、删除、更新等等。在不久的将来,可以利用数据库来实现对邮件、多媒体文件、附件的管理。为此,企业可以减少系统方面的重复性投资。这个技术相信会引来新一轮的系统集成浪潮。
对于网络计算的支持
在前不久,甲骨文公司推出了新版本的Oracle数据库。在这新版本的数据库中,实现了对网络计算的支持。网络运算技术可以让用户更好的在网络环境中分享存储资源,并且同时可以保障数据在安全方面的需求。可以说,甲骨文公司是在网络运算上第一个吃螃蟹的英雄。
甲骨文数据库系统对网络运算的友好支持,对其他数据库厂商触动很大。虽然网络运算现在还不怎么成熟,需要经过一段时间的完善。但是,笔者相信,09年将会是网络运算普及的时刻。各大数据库厂商会纷纷支持网络运算。
虽然微软在2005版本的数据库中,还没有考虑到对网络运算的支持。那时他们认为,网络中对资源的共享是通过共享磁盘实现的,并通过锁控制器实现控制多个节点对资源的争夺。但是,当节点增多时,数据库性能会有所下降。Oracle提出网络运算的技术,确实对数据库的性能造成了一定的负面影响。但是,其带来的数据共享、安全性方面的收益,远远大于其对数据库造成的一些负面影响。现在微软也在逐渐改变其态度。据说,在微软下一版本的数据库中,将会考虑到网络计算。
网络数据库为什么会这么受到数据库管理员的青睐?以致于各大数据库厂商愿意花大本钱对这么技术进行投资。其最大的优势在于,数据库可以利用这个技术,将一个数据库应用部署在多台独立的服务器中,实现一个高容错的运算平台,以提高数据库应用的稳定性,减少数据库当机的时间。这对于一些大型的数据库应用,如银行的数据库系统,具有非常现实的意义。
甲骨文公司在网络运算上先走了一步,取得了用户的认同。相信在09年,会有越来越多的数据库厂商加入到网络数据库的队伍中来。09年,网络运算技术将会有大的突破与发展。所以,把数据库对网络计算的支持,当选为09年数据库发展的三大趋势之一,一点都不为过。
管理智能化
数据库厂商面对的直接客户是数据库管理员,而不是最终的用户。所以,数据库厂商在开发数据库的时候,除了要关心企业的需求之外,还必须考虑数据库管理员的管理成本。若数据库厂商虽然开发出了比较先进的技术,但是,若管理成本比较高的话,则数据库管理员也不会采用,更不会向最终的用户推荐。
在各个品牌推出的数据库同质化现象越来越严重的情况下,各个数据库厂商开始关注如何降低数据库工程师的开发成本与管理成本。如如何让数据库系统自动优化资源用量。数据库的性能一直是数据库管理员所关心的问题。在以前的数据库系统中,数据库管理员最重要的任务就是监控数据库服务器的性能,并对起进行及时的调整,让数据库服务器达到最好的运行状态。这项工作往往需要耗费数据库管理员大量的时间与精力。不过这种状况将会在不久的将来彻底的改变。
SQL Server数据库将会在新版本的数据库中加入很多的自我调整功能。如自我调整内存分配,让数据库负责优化内存分派,以提高数据库性能。因为我们都知道,数据库系统在内存中读取数据要比在硬盘中读取数据快成百上千倍。让数据库根据内存的使用情况,合理分配内存,可以提高服务器内存的使用率。从而达到提高数据库性能的目的。
如自动优化SQL语句。数据库管理员在开发数据库的时候,为了提升数据库的性能,不得不对SQL语句进行优化。用户的某一个需求可以通过多种SQL语句来实现。但是,综合数据库性能考虑,往往只有一种可以达到比较好的性能。数据库管理员就需要花费时间与精力去考虑,怎么写SQL语句能够提升数据库的性能。不过在不久的将来,数据库管理员可以不再关注这方面的问题。因为数据库系统会自动的对SQL语句进行优化。也就是说,你不管采用什么样的实现方式,数据库系统都会根据当时实际的情况,对SQL语句进行优化,以达到最高的执行效率。
可见,在新的一年中,数据库厂商为了引得市场,在关注业务需求的同时,会更多的关注如何降低管理成本,如何实现管理的智能化。从而得到数据库工程师的认同。在不久的将来,我们数据库管理员的工作将会越来越轻松。也许到某一天,数据库管理就像利用傻瓜照相机拍照一样,即使不是专业摄影师,也可以拍出不错的效果。