DB2 Express版与SQL Server标准版技术比较

【IT168 技术文档】本文从技术角度指出DB2 Express版与SQL Server标准版之间主要的不同之处。

平台可移植性

    SQL Server只可以运行在Windows平台上,限制了用户的平台选择。DB2 Express可运行在Windows及Linux环境。而且随着业务的增长,可以将DB2 Express升级为DB2工作组版或企业版,将系统平稳移植到Unix平台。

高可用性(HA) 

    DB2 Express支持HA,可以实现数据库系统的故障接管;而SQL Server标准版不支持HA。

程序包(package) 

    SQL Server不支持静态SQL这一概念,DB2中可以将静态SQL程序进行预编译及绑定,生成程序包。这一功能极大地提高了常用查询操作的性能,因为优化器不必在应用执行时确定执行方案。同时,DB2可将动态SQL进行缓存处理,以提高性能。

物化视图 

    SQL Server与DB2采用了不同的技术实现了物化视图功能。SQL Server利用Indexed Views(视图索引)技术,DB2通过Automatic Summary Tables(自动聚合表)及Materialized Query Tables(物化查询表)分别实现了预先联接、预先聚合等物化视图的概念及功能。 

    然而,在SQL Server标准版中未提供Indexed Views功能,无法保证在使用视图时的数据库性能。

优化器 

    SQL Server与DB2都具有基于代价的优化器,它根据表及列中的数据分布统计数据来优化SQL的执行方案。相对而言,DB2的优化器更为成熟和功能强大,它能够利用动态位图索引进行星型联接,可以更精确地控制优化级别,从而控制优化器对一些高级功能(例如:哈希联接)的使用,及优化器用于发现最佳执行方案最多花费的时间。

分布式数据查询(联邦数据访问) 

    DB2具有联邦数据访问能力,可以对DB2家族产品及Informix数据库进行透明的分布式查询和更新。若配置信息集成器(DB2 Information Integrator),还可以实现对异构数据库或非关系型数据的查询/更新。而SQL Server标准版不具备联邦数据库能力。

在线表/索引重组 

    SQL Server通常可以动态地维护索引,但当出现大量的索引页分割时,需要利用运行DBCC REINDEX或DROP/CREATE INDEX进行索引重组,而这些操作都不能在线进行,即不允许其它用户同时对其进行读写访问。
DB2能够实现在线的表及索引的重组。
原文地址:https://www.cnblogs.com/godwar/p/1090119.html