在DB2 9.0中,有很多东西对新手和老手来说都是一样的。
随着数据库市场的持续成长和日益成熟,当一款新版本的数据库服务服务器产品摆上货架的时候,已经很难让开发人员感到兴奋。在升级之后,您还在使用同样的工具写着同样的SQL,就和您以往所做的事情一样。如果您对使用命令行很上瘾,那您甚至感觉不到丝毫变化。
随着DB2 9.0版的发布(之前的开发代号为“毒蛇”(Viper)),IBM终于带来了一些可以令开发人员感到兴奋的事情。在这一版本中,IBM所提供的本地XML支持、更新了的开发工具、足够的数据库管理功能提升和安全与内存管理,都甚至会让那些“为战斗而生”的数据库管理员们刮目相看。
在这篇评论文章中,我们将从一个开发者的角度来审视DB2 9.0的一些新特色。我们首先来看看这一版本所提供的工具。
升级的开发工具
如果您以往曾经使用DB2,您可能会喜爱或憎恨其以前版本中的开发工具和管理工具。在这一版本中,这些工具依然存在,相信狂热的爱好者会对此非常高兴,您依然可以使用控制中心(Control Center)来管理数据库,而如果您想成为一个“极客”,那命令行工具也会听命于您。
然而,如果以往在DB2中提供的工具没有引起您的注意,那您一定要看看新增的DB2开发者工作台(Developer Workbench (DWB) ),DWB是基于Eclipse架构的,DWB提供了一个环境可供您创建XML查询、SQL脚本、存储过程、XML schema文档和用户自定义查询。
通过DWB,开发者和管理员可以在熟悉的环境中创建项目,这些项目可以用于创建大部分数据库对象并在这些对象上工作。当您进入DWB时,您将处于“数据”视角,您可以在此创建新的项目来设计数据库、XML schema等等。您所创建的任何项目都会显示在数据对象浏览器(Data Project Explorer)中
通过数据对象浏览器窗口,您可以为数据库创建不同的数据库模型,包括物理、逻辑、域和词汇表模型,以及用于创建物理数据库的DDL语句。
新版本中还包括一个数据库浏览器(Database Explorer)窗口,这个工具可以用于连接您的数据库以及浏览数据库中包含的对象。您可以通过浏览器对数据库内容进行过滤,还可以从浏览器菜单中直接调用SQL编辑器。
因为DWB是构建在Eclipse上的,所以它还包含了许多非常棒的特色,包括从工作台直接追踪任务、问题、错误等的能力,还有一系列向导为使用XQuery和SQL查询数据、创建新的存储过程、用户定义方法等提供便利。
工作台还与CVS功能紧密结合,提供了非常需要的源代码控制功能,这为团队环境下的工作提供了便利。利用现有的Eclipse架构是IBM的一项非常明智的举措,对于已经熟悉Eclipse环境的开发人员而言,会有在家一般的感觉。
对于需要在.NET应用软件中整合DB2的开发人员,这一版本提供了升级了的DB2数据接口(data provider),以及一些用于Visual Studio.NET设计环境的插件。
服务器的增强
在这一版本中,DB2拥有两个不同的处理引擎,一个用于处理关系数据,另一个用于处理XML。IBM标榜这一技术为“PureXML”,在此技术的支持下,XML数据可以直接存储在数据库中了,而开发者也可以使用SQL或者XQuery来访问数据,这对于XML密集型的应用软件是一个真正的冲击,并可以减少软件的开发时间。
IBM还引入了对数据库分区的额外支持,还有对域(range)或表格分区、散列存储和多维集群的支持,对于经验丰富的数据库开发人员,这些分区选项可以为不同的数据库上存储数据,以及根据分区来管理升级或进行备份的功能提供了更大的灵活性。除了分区功能的改进,DB2 9还对数据存储进行了优化,IBM宣称新的技术可以减少45%到69%的磁盘空间,这可以减少对新磁盘空间的需求,而其所使用的压缩算法又可以保证您在此过程中不会丢失任何数据。
在管理方面,DB2 9还包括了自我调节内存设置的功能,此功能可以根据服务器使用模式自动确定最佳配置。内存调节器可以免除一些以往需要数据库管理员手动调节的工作,而且还可以提高每个服务器的性能。
还有一些新功能的目标在于日常的管理工作,包括重新启动恢复操作,重定向的还原以及从表格空间备份镜象进行数据库重建。数据库管理员将会喜欢上无须撤销并重建表格,而可以直接修改表格属性的能力,新的模板使拷贝数据库和模型模式的工作更加简单。尤其是当您需要抽取一个产品数据库模式并制作多份拷贝进行测试和移植等工作的时候,这一功能是非常便利的。
在安全性方面,DB2 9提供了“基于标签的访问控制(Label-based Access Control)”,这允许管理员在原始数据上创建标签,并将这些标签应用于安全访问控制。这一版本中还提供了很多安全改进,旨在减少数据库中检查安全性的数据往返。