SQL Server和DB2大比拼

80酷酷网    80kuku.com

  

本文从价格、性能、平台支持、SQL语言、产品限制等方面比较SQL Server 2000和DB2 Universal Database version 8.1。

一、平台比较

SQL Server 2000只能在Windows平台上运行,包括Windows 9x/NT/2000/XP和CE。和SQL Server 2000相比, DB2 Universal Database version 8.1支持所有主流平台,除了Windows系列之外,还包括AIX系统、HP-UX系统、Linux、Sun Solaris等。

1.1 硬件需求

安装SQL Server 2000需要Intel或兼容的硬件平台,同时还应当满足:

硬件

需求

处理器

Pentium 166 MHz或更高

内存

32 MB RAM(桌面引擎的最小内存需求)

64 MB RAM(所有其他版本的内存需求)

推荐128 MB RAM或更高

硬盘空间

完整安装:270 MB

典型安装:250 MB

最小安装:95 MB

桌面引擎:44 MB

分析服务:最小50 MB,典型安装130 MB

英语查询:80 MB

DB2 Universal Database v8.1支持Windows平台、AIX系统、HP-UX系统、Linux(Intel)和Sun Solaris等。在Windows平台上安装DB2 Universal Database v8.1的硬件需求如下:

硬件

需求

处理器

Pentium或兼容处理器

内存

RAM:最小256 MB

可能需要额外的内存支持

硬盘空间

典型安装:最少350 Mb

最小安装:最少100 MB

自定义安装:最小100 Mb

在簇较大的FAT驱动器上可能需要额外的磁盘空间

如果在UNIX系列操作系统上安装DB2 Universal Database v8.1,包括基于AIX的系统、HP-UX系统、Linux和Sun Solaris,硬件必须满足:

硬件

需求

处理器

AIX:IBM RISC/6000或者eServer pSeries

HP-UX:HP 9000系列700或800系统

Linux:Intel 32位、64位,S/390 9672或更高,Multiprise 3000,eServer z-Series

Solaris:基于Solaris UltraSPARC的计算机

内存

最小 256 MB RAM

可能需要更多的内存

硬盘空间

典型安装:最小450到550 MB

紧凑安装:最小350到400 MB

自定义安装:最小350到700 MB

1.2 软件需求

SQL Server 2000有6个版本:企业版,标准版,个人版,开发版,桌面引擎,以及SQL Server CE(一个和Windows CE兼容的版本),软件需求如下:

操作系统

企业版(Enterprise Edition)

标准版(Standard Edition)

个人版(Personal Edition)

开发版(Developer Edition)

桌面引擎(Desktop Engine)

SQL Server CE

Windows CE

Windows 9x

Windows NT 4.0 Workstation with Service Pack 5

Windows NT 4.0 Server with Service Pack 5

Windows NT 4.0 Server Enterprise Edition with Service Pack 5

Windows 2000 Professional

Windows 2000 Server

Windows 2000 Advanced Server

Windows 2000 DataCenter

Windows XP Professional

DB2 Universal Database v8.1有下面六个版本

DB2 Enterprise Server Edition (ESE)

DB2 Workgroup Server Edition (WSE)

DB2 Workgroup Server Unlimited Edition (WSUE)

DB2 Personal Edition (PE)

DB2 Universal Developer's Edition (UDE)

DB2 Personal Developer's Edition (PDE)

它们的软件需求如下:

平台

操作系统版本

要求安装的补丁

Windows

Windows NT 4.0

Service Pack 6a或更高

Windows

Windows 2000

Windows Terminal Server需要Service Pack 2

Windows

Windows XP

AIX

AIX 4.3.3 (32-bit)

Maintenance Level 9或更高,以及APARs IY22308,Y32690,和IY33024

AIX

AIX 5L (32-bit)

Maintenance Level 2或更高

AIX

AIX 5.1.0(32-bit)

Maintenance Level 2或更高,以及APARs IY31254,IY32217,IY32905,IY33023,和 IY29345

AIX

AIX 5.1.0 (64-bit)

Maintenance Level 2或更高,以及APARs IY31254,IY32217,IY32905,Y33023,和IY32466

HP-UX

HP-UX 11i

December 2001 GOLDBASE11i,

December 2001 GOLDAPPS11i bundles

Linux

Intel 32-bit:

  • kernel level 2.4.9或更高

  • glibc 2.2.4或更高

  • RPM 3或更高

Intel 64-bit和z-Series:

  • Red Hat Linux 7.2

  • SuSE Linux SLES-7

Sun Solaris

Solaris 7 (32-bit)

patch 106327-10

Sun Solaris

Solaris 7 (64-bit)

patch 106300-11

Sun Solaris

Solaris 8 (32-bit)

patch 108434-03 and 108528-12

Sun Solaris

Solaris 8 (64-bit)

patch 108435-03 and 108528-12

Sun Solaris

Solaris 9

二、性能比较

比较SQL Server 2000和DB2 Universal Database v8.1的性能是一件很困难的事情。实际上,数据库系统的性能不仅跟数据库类型有关,而且还在很大程度上决定于数据库开发者和管理员的经验。无论使用哪一种RDBMS都可以构造出稳定、高效的系统。但是,我们仍旧有可能定义一些典型的事务,例如库存控制系统、航班预定系统、银行交易系统中的事务,然后在不同的数据库系统上运行这些典型事务,以此比较不同数据库系统的性能。

Transaction Processing Performance Council(TPC.Org)是一个独立的组织,定义了一组典型的数据库事务以及这些事务必须满足的条件。TPC对数据库管理系统的事务处理能力和数据库性能进行基准测试,测试标准是系统和数据库每单位时间内处理事务的数量,即每秒或每分钟处理的事务数量。

TPC制定了许多测试规范,包括TPC-C、TPC-H、TPC-R和TPC-W,还有一些较老的测试规范,如TPC-A、TPC-B、TPC-D。其中最著名的是TPC-C测试(OLTP测试)。

根据TPC最近的测试结果,SQL Server 2000在分布式分区群集系统中的TPC-C性能测试中赢得了胜利,参见:Top Ten TPC-C by Performance Version 5 Results。在价格/性能测试中,SQL Server 2000也获得了最好的TPC-C成绩。参见:Top Ten TPC-C by Price/Performance Version 5 Results。

注意:由于大多数单位并不真正需要非常大型的数据库,因此一个很关键的问题是:对于大多数企业来说,TPC-C基准测试的实际意义并不是很大。

三、价格比较

和DB2 Universal Database v8.1相比,Microsoft SQL Server 2000一个主要的优势是价格很便宜,另一个优点是在Enterprise Edition中已经作为标准功能包含了联机分析处理(OLAP,Online analytical processing)以及数据挖掘(Data Mining),因此对于要使用OLAP和数据挖掘功能的用户来说,SQL Server 2000可以节省几倍的投资。

下面的价格比较基于微软的IBM DB2 Version 8.1和SQL Server 2000价格比较资料。

比较SQL Server 2000 Standard Edition和DB2 v8.1 Workgroup Edition的价格:

CPU数量

IBM DB2 v8.1 Workgroup Edition

SQL Server 2000 Standard Edition

1

$7,500

$4,999

2

$15,000

$9,998

4

$30,000

$19,996

8

$60,000

$39,992

16

$120,000

$79,984

32

$240,000

$159,968

比较SQL Server 2000 Enterprise Edition(已包含OLAP和Data Mining)和IBM DB2 v8.1 Enterprise Edition加上OLAP、Data Mining:

CPU数量

IBM DB2 v8.1 Enterprise Edition

IBM DB2 v8.1 Enterprise Edition加上 OLAP和Data Mining

SQL Server 2000 Enterprise Edition

1

$25,000

$113,000

$19,999

2

$50,000

$126,000

$39,998

4

$100,000

$252,000

$79,996

8

$200,000

$504,000

$159,992

16

$400,000

$1,008,000

$319,984

32

$800,000

$2,016,000

$639,968

注意:上面对SQL Server 2000和DB2 Universal Database v8.1的价格比较并不完整,只是一个摘要的比较。实际可能有折扣,而且将来价格可能上升或下降。详情请访问IBM和Microsoft的网站。

四、特色比较

SQL Server 2000和IBM DB2 Universal Database v8.1都支持ANSI SQL-92 Entry Level,但都不支持ANSI SQL-92 Intermediate Level。下面简单比较一下Transact-SQL和DB2 SQL dialect的特点,随后说明SQL Server 2000和DB2 Universal Database v8.1的一些限制。

4.1 SQL语言

SQL Server 2000支持的SQL方言叫做Transact-SQL(T-SQL),IBM DB2 v8.1支持的SQL方言叫做DB 2 SQL dialect。DB2 SQL dialect要比T-SQL强大得多。下表简要比较了DB2 SQL dialect和T-SQL:

功能

DB2 SQL dialect

T-SQL

关系表,对象表,临时表

关系表,临时表

触发器

BEFORE触发器,AFTER触发器,INSTEAD OF触发器

AFTER触发器,INSTEAD OF触发器

存储过程

DB2 SQL dialect语句,Java方法,第三代语言(3GL)过程。

T-SQL语句

用户定义函数

外部标量函数,外部表函数,OLE DB外部表函数,临时函数,SQL标量、表和行函数

标量函数,嵌入式表-值函数,多语句表-值函数

数组

支持

不支持

4.2 限制

下表比较了SQL Server 2000和DB2 v8.1的限制:

功能

SQL Server 2000

IBM DB2 v8.1

列名称长度

128

128

索引名称长度

128

128

表名称长度

128

128

视图名称长度

128

128

游标名称长度

128

18

约束名称长度

128

18

密码长度

128

32

SQL变量长度

128

64

用户名称长度

128

30

max char()大小

8000

254

max varchar()大小

8000

32672

每个表的最大列数

1024

1012

每个索引的最大列数

16

16

每个表的最大索引数

250

32767

最长的SQL语句

16777216

65535

每个SELECT的列数

4096

1012

每个INSERT语句的列数

1024

1012

存储过程嵌套深度

32

16

五、结束语

一定要说SQL Server 2000比DB2 Universal Database v8.1优秀是不切实际的,反过来也一样。无论是使用SQL Server 2000还是使用DB2 Universal Database v8.1,都可以构造出稳定、高效的系统,应用和数据库的稳定性、高效性与其说依赖于数据库管理系统的类型,不如说依赖于数据库开发者和管理员的经验。然而,当我们比较SQL Server 2000和DB2 Universal Database v8.1时,SQL Server 2000确实显示出一些独特的优势,DB2 Universal Database v8.1也一样。

SQL Server 2000的优势是:

SQL Server 2000要比DB2 v8.1廉价。

在TPC-C性能和价格/性能测试中,SQL Server 2000超过了DB2 v8.1。

一般认为,SQL Server 2000更容易安装、使用和管理。

DB2 Universal Database v8.1的优势是:

DB2 Universal Database v8.1支持所有已知的平台,而不仅仅是Windows平台。

DB2 SQL dialect要比T-SQL强大。

可以通过启动参数调整的配置项目较多。



分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: