当前位置:文档之家› Oracle-SQLServer-MySQL-MongoDB数据库比较

Oracle-SQLServer-MySQL-MongoDB数据库比较

Oracle-SQLServer-MySQL-MongoDB数据库比较
Oracle-SQLServer-MySQL-MongoDB数据库比较

主流数据库比较

目录

前言 (3)

1. 数据库安装对硬件的要求 (3)

1.1. Oracle (3)

1.2. SQL Server (4)

1.3. MySQL (4)

2. 数据类型对比 (5)

2.1. Oracle数据类型 (5)

2.2. SQL Server 数据类型 (6)

2.3. MySQL 数据类型 (7)

3. 三大关系型数据库比较 (8)

4. 应用场景 (12)

4.1. Oracle的一般应用 (12)

4.2. MySQL的应用场景 (13)

4.3. SQL Server的应用 (13)

5. MongoDB-非关系型数据库 (13)

5.1. MongoDB的应用场景 (13)

5.2. MongoDB与MySQL性能比较 (14)

5.2.1. 测试目的 (14)

5.2.2. 测试环境 (14)

5.2.3. 测试结果1:插入速率 (14)

5.2.4. 测试结果2:插入稳定性 (15)

5.2.5. 测试结果3:读取性能测试 (17)

5.2.6. 测试结论 (19)

5.3. MongoDB的优势和缺陷 (20)

5.3.1. MongoDB的优势 (20)

5.3.2. MongoDB的缺陷 (20)

前言

数据库流行度排行榜来自于美国数据库知识网站DB-engines,在本月(2014-10)的榜单中,前三甲依然是Oracle、MySQL和Microsoft SQL Server。前十名中文档型数据库MongoDB 和列式数据库Cassandra作为仅有的两个NoSQl数据库分别位列第五和第十名。

下面就对排名前三甲的关系型数据库(Oracle、MySQL、SqlServer)进行一下对比、以及最受欢迎的非关系型MongoDB。

1.数据库安装对硬件的要求

1.1. Oracle

以Oracle 11g为例,系统是Windows:

硬件要求

配置组件最低配置

------------------------- -----------------------------------

Physical memory (RAM) 1 GB minimum

Virtual memory Double the amount of RAM

Disk space Total: 4.76 GB

Video adapter 256 colors

Processor 550 MHz minimum

(On Windows Vista, 800 MHz minimum) 磁盘空间要求

Oracle组件最低要求

------------------------ -----------------------------------

TEMP Space 200 MB

C:\Program Files\Oracle 3.1 MB

Oracle Home 2.96 GB

Datafiles * 1.60 GB

------------------------ ----------------------------------

Total 4.76 GB

1.2.SQL Server

MS SQL Server在安装 SQL Server 2008 R2 的过程中,Windows Installer 会在系统驱动器中创建临时文件。在运行安装程序以安装或升级 SQL Server 之前,请检查系统驱动器中是否有至少 3.6 GB 的可用磁盘空间用来存储这些文件。即使在将 SQL Server 组件安装到非默认驱动器中时,此项要求也适用。

实际硬盘空间需求取决于系统配置和安装的功能。

下表提供了 SQL Server 2008 R2 各组件对磁盘空间的要求:

1.3. MySQL

MySQL 体积小、速度快,对硬件配置上基本没有限制。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余。而且它是开源的可以定制的,采用了GPL协议,MySQL的用户可以修改源码来开发自己的Mysql系统。具体的内存和磁盘的大小由用户的需求和配置决定。

以下是MySQL 5.6对Windows系统的一些要求。

MySQL 5.6可以在Windows Vista, Windows 7, Windows 8, Windows Server 2008,以及 Windows Server 2012上运行。支持 32-bit 和 64-bit系统。TCP/IP协议支持。

需要用管理员权限的账户进行安装,否则可能会发生环境参数配置的异常。另外,在windows上安装MySQL还有一些其他要求:

可以读取.zip文件的工具,以解压分发文件

硬盘上有足够的空间保证根据你的需求来解包、安装和创建数据库(一般建议至少有200兆字节)

如果你计划通过ODBC连接MySQL服务器,你还需要一个连接器/ODBC驱动程序。

如果你计划通过.NET连接MySQL服务器,你还需要一个连接器/.NET驱动程序

如果表需要占用的空间大于4GB,则在NTFS或更新的文件系统上安装MySQL。当创建表时不要忘记使用MAX_ROWS和AVG_ROW_LENGTH

2.数据类型对比

对于三大关系型数据库的比较,首先从它们本身的基本数据类型做一个了解:

2.1. Oracle数据类型

2.2. SQL Server 数据类型

2.3. MySQL 数据类型

以上表格分别介绍了三者的数据类型,从对sql语言的支持方面来说,也许它们的共同点多余它们的差异,但是对于一个完整的项目,尤其是对于那些准备同时支持三种数据库的大型项目来说,数据类型的差异是必须要保证三者可以兼容的。

3.三大关系型数据库比较

首先,从三大关系型数据库的本身架构方面做一下对比:

Oracle:

数据文件包括:控制文件、数据文件、重做日志文件、参数文件、归档文件、密码文件。所有文件都是二进制编码后的文件

并行服务器通过使一组结点共享同一簇中的工作来扩展windowns的能力,提供高可用性和高伸缩性的簇的解决方案。如果windowsNT不能满足需要,用户可以把

数据库移到UNIX中

多层次网络计算,支持多种工业标准,可以用ODBC,JDBC,OCI等网络客户连接。

操作简便

MySQL:

最大的一个特色,就是自由选择存储引擎。每个表都是一个文件,都可以选择合适的存储引擎。常见的引擎有 InnoDB、 MyISAM、 NDBCluster等。但由于这种开放插件式的存储引擎,比如要求数据库与引擎之间的松耦合关系。从而导致文件的一致性大大降低。在SQL 执行优化方面,也就有着一些不可避免的瓶颈。在多表关联、子查询优化、统计函数等方面是软肋,而且只支持极简单的HINT。

SQL Server :

数据架构基本是纵向划分,分为:Protocol Layer(协议层), Relational Engine (关系引擎), Storage Engine(存储引擎), SQLOS。SQL执行过程就是逐层

解析的过程,其中Relational Engine中的优化器,是基于成本的(CBO),其工

作过程跟Oracle是非常相似的。在成本之上也是支持很丰富的HINT,包括:连接

提示、查询提示、表提示

SQL Server只能在windows上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。windows平台的可靠性,安全性和伸缩性是非常有限的。

它不象unix那样久经考验,尤其是在处理大数据

并行实施和共存模型并不成熟。很难处理日益增多的用户数和数据卷。伸缩性有限 多用户时性能不佳

其次,对Oracle、SqlServer、MySQL三大主流关系型数据库的授权价格、平台支持、功能、以及性能等方面做了一个详细比较。请参考下表:

数据库比较表:

4. 应用场景

关于“大型数据库”,并没有严格的界定,有说以数据量为准,有说以恢复时间为准。如果综合数据库应用场景来说,大型数据库应用有以下特点:海量数据、高吞吐量;复杂逻辑、高计算量,以及高可用性。从这点上来说,Oracle就是比较典型的大型数据库,SQL Server 也算是吧。下面分别说明之前三种数据库的应用场景。

4.1. Oracle的一般应用

Oracle的应用,主要在传统行业的数据化业务中,比如:银行、金融这样的对可用性、健壮性、安全性、实时性要求极高的业务;零售、物流这样对海量数据存储分析要求很高的业务。此外,高新制造业如芯片厂也基本都离不开Oracle;电商也有很多使用者,如京东(正在投奔Oracle)、阿里巴巴(计划去Oracle化)。而且由于Oracle对复杂计算、统计分析的强大支持,在互联网数据分析、数据挖掘方面的应用也越来越多。

一个典型场景是这样的:

某电信公司(非国内)下属某分公司的数据中心,有4台Oracle Sun的大型服务器用来安装Solaris操作系统和Oracle并提供计算服务,3台Sun Storage磁盘阵列来提供Oracle数据存储,12台IBM小型机,一台Oracle Exadata服务器,一台500T的磁带机用来存储历史数据,San连接内网,使用Tuxedo中间件来保证扩展性和无损迁移。建立支持高并发的Oracle数据库,通过OLTP系统用来对海量数据实时处理、操作,建立高运算量的Oracle数据仓库,用OLAP系统用来分析营收数据及提供自动报表。总预算约750万美金。

4.2. MySQL的应用场景

MySQL基本是生于互联网,长于互联网。其应用实例也大都集中于互联网方向,MySQL 的高并发存取能力并不比大型数据库差,同时价格便宜,安装使用简便快捷,深受广大互联网公司的喜爱。并且由于MySQL的开源特性,针对一些对数据库有特别要求的应用,可以通过修改代码来实现定向优化,例如SNS、LBS等互联网业务。一个典型的应用场景是:

某互联网公司,成立之初,仅有PC数台,通过LAMP架构迅速搭起网站框架。随着业务扩张、市场扩大,迅速发展成为6台Dell小型机的中型网站。现在花了三年,终于成为垂直领域的最大网站,计划中的数据中心,拥有Dell机架式服务器40台,总预算20万美金。

4.3. SQL Server的应用

windows生态系统的产品,好处坏处都很分明。好处就是,高度集成化,微软也提供了整套的软件方案,基本上一套win系统装下来就齐活了。因此,不那么缺钱,但很缺IT人才的中小企业,会偏爱 MS SQL Server 。例如,自建ERP系统、商业智能、垂直领域零售商、餐饮、事业单位等等。

5. MongoDB-非关系型数据库

5.1. MongoDB的应用场景

对开发者来说,如果是因为业务需求或者是项目初始阶段,而导致数据的具体格式无法明确定义的话,MongoDB的鲜明特性就脱颖而出。相比传统的关系型数据库,它非常容易被扩展,这也为写代码带来了极大的方便。不过MongoDB对数据之间事务关系支持比较弱,如果业务这一方面要求比较高的话,MongoDB还是并不适合此类型的应用。

5.2.MongoDB与MySQL性能比较

5.2.1. 测试目的

MongoDB与MySQL作为两种不同类型的数据库,当其中存放的记录越来越多的时候,其插入效率将会受到怎样的影响,是本次实验所关注的对象。

在这里,我们将本次实验数据库中数据存储的规模定在1亿条。

5.2.2. 测试环境

机器配置: CPU:Intel(R) Xeon(R) CPU E5-2620 @ 2.00GHz

内存:65954040 KB

操作系统: Linux version 2.6.32_1-8-0-0 (gcc version 4.4.4 20100726 (Red Hat

4.4.4-13) (GCC) )

MongoDB版本: 2.2.3,无任何优化配置,单机测试

MySQL版本: 5.1.49,无任何优化配置,单机测试

测试语言: Python 2.7.1

数据库接口驱动:

MongoDB : PyMongo 2.1.1

MySQL: MySQLdb 1.2.3

5.2.3. 测试结果1:插入速率

图1:横坐标是平均每插入1000条数据所需要的时间,单位是秒。

总结:

数据库的平均插入速率:MongoDB不指定_id插入> MySQL不指定主键插入> MySQL指定主键插入> MongoDB指定_id插入

MongoDB在指定_id与不指定_id插入时速度相差很大,而MySQL的差别却小很多分析:

在指定_id或主键时,两种数据库在插入时要对索引值进行处理,并查找数据库中是否存在相同的键值,这会减慢插入的速率

在MongoDB中,指定索引插入比不指定慢很多,这是因为,MongoDB里每一条数据的_id值都是唯一的。当在不指定_id插入数据的时候,其_id是系统自动计算生

成的。MongoDB通过计算机特征值、时间、进程ID与随机数来确保生成的_id是唯

一的。而在指定_id插入时,MongoDB每插一条数据,都需要检查此_id可不可用,

当数据库中数据条数太多的时候,这一步的查询开销会拖慢整个数据库的插入速度 MongoDB会充分使用系统内存作为缓存,这是一种非常优秀的特性。我们的测试机的内存有64G,在插入时,MongoDB会尽可能地在内存快写不进去数据之后,再将

数据持久化保存到硬盘上。这也是在不指定_id插入的时候,MongoDB的效率遥遥

领先的原因。但在指定_id插入时,当数据量一大内存装不下时,MongoDB就需要

将磁盘中的信息读取到内存中来查重,这样一来其插入效率反而慢了 MySQL不愧是一种非常稳定的数据库,无论在指定主键还是在不指定主键插入的情况下,其效率都差不了太多

5.2.4. 测试结果2:插入稳定性

插入稳定性是指,随着数据量的增大,每插入一定量数据时的插入速率情况。

在本次测试中,我们把这个指标的规模定在10w,即显示的数据是在每插入10w条数据时,在这段时间内每秒钟能插入多少条数据。

1.MongoDB指定_id插入:

2.MongoDB不指定_id插入:

3.MySQL指定PRIMARY KEY插入:

4.MySQL不指定PRIMARY KEY插入:

总结:

整体上的插入速度还是和上一回的统计数据类似:MongoDB不指定_id插入>

MySQL不指定主键插入> MySQL指定主键插入> MongoDB指定_id插入 从图中可以看出,在指定主键插入数据的时候,MySQL与MongoDB在不同数据数量

级时,每秒插入的数据每隔一段时间就会有一个波动,在图表中显示成为规律的毛

刺现象。而在不指定插入数据时,在大多数情况下插入速率都比较平均,但随着数

据库中数据的增多,插入的效率在某一时段有瞬间下降,随即又会变稳定 整体上来看,MongoDB的速率波动比MySQL的严重,方差变化较大

MongoDB在指定_id插入时,当插入的数据变多之后,插入效率有明显地下降。在

其他三种的插入测试中,从开始到结束,其插入的速率在大多数的时候都固定在一

个标准上

分析:

毛刺现象是因为,当插入的数据太多的时候,MongoDB需要将内存中的数据写进硬

盘,MySQL需要重新分表。这些操作每当数据库中的数据达到一定量级后就会自动

进行,因此每隔一段时间就会有一个明显的毛刺

MongoDB毕竟还是新生事物,其稳定性没有已应用多年的MySQL优秀

MongoDB在指定_id插入的时候,其性能的下降还是很厉害的

5.2.5. 测试结果3:读取性能测试

测试方法:

先在1-100, 000, 000这一亿个数中,分别随机取1w, 5w, 10w, 20w, 50w个互不相同的数字,再计算其md5值,并保存。

在上述带主键插入的两个数据库里,分别以上一步生成的md5源为输入进行查询操作。同样,每查询1000条数据在日志文件中将当前系统时间写入。

测试结果:

以下三张图的纵坐标是每查询1000条数据所需要的时间,单位为s;横坐标是查询的规模,分为1w, 5w,10w, 20w, 50w五个等级。

图1

图2

图3

总结:

在读取的数据规模不大时,MongoDB的查询速度真是一骑绝尘

在查询的数据量逐渐增多的时候,MySQL的查询速度是稳步下降的,而MongoDB的查询速度却有些起伏

分析:

如果MySQL没有经过查询优化的话,其查询速度就不要跟MongoDB比了。MongoDB 可以充分利用系统的内存资源,我们的测试机器内存是64GB的,内存越大MongoDB 的查询速度就越快,毕竟磁盘与内存的I/O效率不是一个量级的

本次实验的查询的数据也是随机生成的,因此所有待查询的数据都存在MongoDB 的内存缓存中的概率是很小的。在查询时,MongoDB需要多次将内存中的数据与磁盘进行交互以便查找,因此其查询速率取决于其交互的次数。这样就存在这样一种可能性,尽管待查询的数据数目较多,但这段随机生成的数据被MongoDB以较少的次数从磁盘中取出。因此,其查询的平均速度反而更快一些。这样看来,MongoDB 的查询速度波动也处在一个合理的范围内

5.2.

6. 测试结论

相比较MySQL,MongoDB数据库更适合那些读作业较重的任务模型。MongoDB能充分利用机器的内存资源。如果机器的内存资源丰富的话,MongoDB的查询效率会快

很多

在带”_id”插入数据的时候,MongoDB的插入效率其实并不高。如果想充分利用MongoDB性能的话,推荐采取不带”_id”的插入方式,然后对相关字段作索引来

查询

5.3. MongoDB的优势和缺陷

5.3.1. MongoDB的优势

1. MongoDB适合那些对数据库具体数据格式不明确或者数据库数据格式经常变化的需求模型,而且对开发者十分友好。

2. MongoDB官方就自带一个分布式文件系统,可以很方便地部署到服务器机群上。MongoDB里有一个Shard的概念,就是方便为了服务器分片使用的。每增加一台Shard,MongoDB的插入性能也会以接近倍数的方式增长,磁盘容量也很可以很方便地扩充。

3. MongoDB还自带了对map-reduce运算框架的支持,这也很方便进行数据的统计。

4. 不用逻辑关心的水平切分

5.不用对齐的数据结构

5.3.2. MongoDB的缺陷

1. 事务关系支持薄弱。这也是所有NoSQL数据库共同的缺陷,不过NoSQL并不是为了事务关系而设计的,具体应用还是要看需求。

2. 稳定性有些欠缺,这点从上面的测试便可以看出。

3. MongoDB一方面在方便开发者的同时,另一方面对运维人员却提出了相当多的要求。业界并没有成熟的MongoDB运维经验,MongoDB中数据的存放格式也很随意,等等问题都是对运维人员的考验。

三大主流数据库对比 哪个更有优势

三大主流数据库对比哪个更有优势 Oracle Oracle 能在所有主流平台上运行(包括Windows)。完全支持所有的工业标准。采用完全开放策略。可以使客户选择最适合的解决方案。对开发商全力支持,Oracle并行服务器通过使一组结点共享同一簇中的工作来扩展Windows NT的能力,提供高可用性和高伸缩性的簇的解决方案。如果Windows NT不能满足需要,用户可以把数据库移到UNIX中。Oracle 的并行服务器对各种UNIX平台的集群机制都有着相当高的集成度。Oracle获得最高认证级别的ISO标准认证.Oracle性能最高,保持开放平台下的TPC-D和TPC-C的世界记录Oracle多层次网络计算,支持多种工业标准,可以用ODBC、JDBC、OCI等网络客户连接。 Oracle 在兼容性、可移植性、可联结性、高生产率上、开放性也存在优点。Oracle产品采用标准SQL,并经过美国国家标准技术所(NIST)测试。与IBM SQL/DS,DB2,INGRES,IDMS/R等兼容。Oracle的产品可运行于很宽范围的硬件与操作系统平台上。可以安装在70种以上不同的大、中、小型机上;可在VMS、DOS、UNIX、WINDOWS等多种操作系统下工作。能与多种通讯网络相连,支持各种协议(TCP/IP、DECnet、LU6.2等)。提供了多种开发工具,能极大的方便用户进行进一步的开发。Oracle良好的兼容性、可移植性、可连接性和高生产率是Oracle RDBMS具有良好的开放性。 Oracle价格是比较昂贵的。据说一套正版的Oracle软件早在2006年年底的时候在市场上的价格已经达到了6位数。所以如果你的项目不是那种超级大的项目,还是放弃Oracle 吧。 SQL Server SQL Server 是Microsoft推出一套产品,它具有使用方便、可伸缩性好、与相关软件集成程度高等优点,逐渐成为Windows平台下进行数据库应用开发较为理想的选择之一。SQLServer是目前流行的数据库之一,它已广泛应用于金融、保险、电力、行政管理等与

常用数据库对比

常用数据库对比 目前,常用于OLAP分析的数据库软件有Oracle、DB2、Teradata、Greenplum、Netezza、Exdata 几种。 1、Oracle 提起数据库,第一个想到的公司,一般都会是Oracle(甲骨文)。该公司成立于1977年,最初是一家专门开发数据库的公司。Oracle在数据库领域一直处于领先地位。1984年,首先将关系数据库转到了桌面计算机上。然后,Oracle5率先推出了分布式数据库、客户/服务器结构等崭新的概念。Oracle 6首创行锁定模式以及对称多处理计算机的支持……最新的Oracle 8主要增加了对象技术,成为关系—对象数据库系统。目前,Oracle产品覆盖了大、中、小型机等几十种机型,Oracle数据库成为世界上使用最广泛的关系数据系统之一。

2、DB2 DB2是IBM公司的产品,起源于System R和System R*。他支持从PC到UNIX,从中小型机到大型机;从IBM到非IBM(HP及SUN UNIX系统等)各种操作平台。他既可以在主机上以主/从方式独立运行,也可以在客户/服务器环境中运行。其中服务平台可以是OS/400,AIX,OS/2,HP-UNIX,SUN-Solaris等操作系统,客户机平台可以是OS/2或Windows, Dos, AIX, HP-UX, SUN Solaris等操作系统。

3、Greenplum Greenplum的架构采用了MPP(大规模并行处理),公司专注于OLAP系统数据引擎开发,有世界级的研发团队进行高性能计算和数据库系统的前沿开发工作,宗旨是向客户提供高性能的超级数据引擎,并将强大的并行计算能力融入到大规模数据仓库分析领域中。公司具有发展趋势超前的视野和洞察力,为全球很多最大规模的数据仓库提供推动力;公司最先将SQL 和Map Reduce的功能整合到统一的数据处理框架中。

三大数据库的区别

1.ORACLE oracle能在所有主流平台上运行(包括 windows)。 Oracle 一般只有一个数据库,可以通过不同 不同用户(模式)的数据库对象名可以相同 2. SQLSERVER SQL Server 是Microsoft推出一套产品,它具有使用方便、可伸缩性好、与相关软件集成程度高等优点,逐渐成为Windows平台下进行数据库应用开发较为理想的选择之一。SQLServer 是目前流行的数据库之一,它已广泛应用于金融,保险,电力,行政管理等与数据库有关的行业.而且,由于其易操作性及友好的界面,赢得了广大用户的青睐,尤其是SQLServer与其它数据库,如Access,FoxPro,Excel等有良好的ODBC接口,可以把上述数据库转成SQLServer的数据库,因此目前越来越多的读者正在使用SQLServer. 3. MYSQL MySQL是开源的,不支持事务处理,没有视图,没有存储过程和触发器,没有数据库端的用户自定义函数,不能完全使用标准的SQL语法。 从数据库行家听说的第一件事就是MySQL缺乏transactions,rollbacks,和subselects的功能。如果你计划使用MySQL写一个关于银行、会计的应用程序,或者计划维护一些随时需要线性递增的不同类的计数器,你将缺乏transactions功能。在现有的发布版本的MySQL 下,请不要有任何的这些想法。(请注意,MySQL的测试版 3.23.x系列现在已经支持transactions了)。 在非常必要的情况下,MySQL的局限性可以通过一部分开发者的努力得到克服。在MySQL中你失去的主要功能是subselect语句,而这正是其它的所有数据库都具有的。换而言之,这个失去的功能是一个痛苦。 MySQL没法处理复杂的关联性数据库功能,例如,子查询(subqueries),虽然大多数的子查询都可以改写成join 另一个MySQL没有提供支持的功能是事务处理(transaction)以及事务的提交(commit)/撤销(rollback)。一个事务指的是被当作一个单位来共同执行的一群或一套命令。如果一个事务没法完成,那么整个事务里面没有一个指令是真正执行下去的。对于必须处理线上订单的商业网站来说,MySQL没有支持这项功能,的确让人觉得很失望。但是可以用MaxSQL,一个分开的服务器,它能通过外挂的表格来支持事务功能。 外键(foreignkey)以及参考完整性限制(referentialintegrity)可以让你制定表格中资料间的约束,然后将约束(constraint)加到你所规定的资料里面。这些MYSQL没有的功能表示一个有赖复杂的资料关系的应用程序并不适合使用MySQL。当我们说MySQL不支持外键时,我们指的就是数据库的参考完整性限制--MySQL并没有支持外键的规则,当然更没有支持连锁删除(cascadingdelete)的功能。简短的说,如果你的工作需要使用复杂的资料关联,那你还是用原来的Access吧。 你在MySQL中也不会找到存储进程(storedprocedure)以及触发器(trigger)。(针对这些功能,在Access提供了相对的事件进程(eventprocedure)。)

常见数据库及其特点

常见数据库及其特点 目前,商品化的数据库管理系统以关系型数据库为主导产品,技术比较成熟。面向对象的数据库管理系统虽然技术先进,数据库易于开发、维护,但尚未有成熟的产品。 (免费,体积小,速度快,成本低,开源,适用于中小型网站) MySQL是最受欢迎的开源SQL数据库管理系统,它是一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用。MySQL具有以下优势: (1)MySQL是一个关系数据库管理系统。(2)MySQL是开源的。 (3)MySQL服务器是一个快速的、可靠的和易于使用的数据库服务器。 (4)MySQL服务器工作在客户/服务器或嵌入系统中。 Server(流行于Web) SQL Server是由微软开发的数据库管理系统,是Web上最流行的用于存储数据的数据库,它已广泛用于电子商务、银行、保险、电力等与数据库有关的行业。SQL Server 提供了众多的Web和电子商务功能,如对XML和Internet标准的丰富支持,通过Web对数据进行轻松安全的访问,具有强大的、灵活的、基于Web的和安全的应用程序管理等。而且,由于其易操作性及其友好的操作界面,深受广大用户的喜爱。(功能齐全,大型,专业,企业级,其开发工具全部用JAVA来写的) 目前,Oracle产品覆盖了大、中、小型机等多种机型,Oracle成为世界上使用最广泛的关系数据系统之一。 (1)可联结性:Oracle能与多种通讯网络相连,支持客户机/服务器方式和各种协议(TCP/IP、DECnet、等)。 (2)开放性:Oracle良好的兼容性、可移植性、可连接性和高生产率使Oracle RDBMS具有良好的开放性。 (3)名符其实的大型数据库:ORACLE建立的数据库,最大数据量可达几百GB; (4)共享SQL和多线索服务器体系结构:这两个特性的结合,减少ORACLE的资源占用,增强处理能力,能支持成百甚至上千个用户。 (5)跨平台能力:ORACLE数据库管理系统可以运行在100多个硬件和软件平台上,这一点为其它PC平台上的数据库产品所不及。 (6)分布式数据库:可以使物理分布不同的多个数据库上的数据,被看成是一个完整的逻辑数据库。

多种数据库性能比较

多种数据库性能比较 Orcale 数据库美国Orcale 公司研制的一种关系型数据库管理系统,是一个协调服务器和用于支持任务决定型应用程序的开放型RDBMS。它可以支持多种不同的硬件和操作系统平台,从台式机到大型和超级计算机,为各种硬件结构提供高度的可伸缩性,支持对称多处理器、群集多处理器、大规模处理器等,并提供广泛的国际语言支持。 Orcale 是一个多用户系统,能自动从批处理或在线环境的系统故障中恢复运行。系统提供了一个完整的软件开发工具 Developer2000,包括交互式应用程序生成器、报表打印软件、字处理软件以及集中式数据字典,用户可以利用这些工具生成自己的应用程序。Orcale 以二维表的形式表示数据,并提供了SQL(结构式查询语言),可完成数据查询、操作、定义和控制等基本数据库管理功能。 Orcale 具有很好的可移植性,通过它的通信功能,微型计算机上的程序可以同小型乃至大型计算机上的Orcale,并且能相互传递数据。另外Orcale 还具有与C 语言的接电子表格、图形处理等软件。 Orcale 属于大型数据库系统,主要适用于大、中小型应用系统,或作为客户机/服务器系统中服务器端的数据库系统。 DB2 数据库 IBM 公司研制的一种关系型数据库系统。DB2 主要应用于大型应用系统,具有较好的可伸缩性,可支持从大型机到单用户环境,应用于OS/2、Windows 等平台下。 DB2 提供了高层次的数据利用性、完整性、安全性、可恢复性,以及小规模到大规模应用程序的执行能力,具有与平台无关的基本功能和SQL 命令。DB2 采用了数据分级技术,能够使大型机数据很方便地下载到 LAN 数据库服务器,使得客户机/服务器用户和基于 LAN 的应用程序可以访问大型机数据,并使数据库本地化及远程连接透明化。它以拥有一个非常完备的查询优化器而著称,其外部连接改善了查询性能,并支持多任务并行查询。 DB2 具有很好的网络支持能力,每个子系统可以连接十几万个分布式用户,可同时激活上千个活动线程,对大型分布式应用系统尤为适用。 SQL Server 数据库美国Microsoft 公司推出的一种关系型数据库系统。SQLServer 是一个可扩展的、高性能的、为分布式客户机/服务器计算所设计的数据库管理系统,实现了与WindowsNT 的有机结合,提供了基于事务的企业级信息管理系统方案。其主要特点如下: (1)高性能设计,可充分利用WindowsNT 的优势。 (2)系统管理先进,支持Windows 图形化管理工具,支持本地和远程的系统管理和配置。 (3)强壮的事务处理功能,采用各种方法保证数据的完整性。 (4)支持对称多处理器结构、存储过程、ODBC,并具有自主的 SQL 语言。 SQLServer 以其内置的数据复制功能、强大的管理工具、与Internet 的紧密集成和开放的系统结构为广大的用户、开发人员和系统集成商提供了一个出众的数据库平台。 Sybase 数据库美国Sybase 公司研制的一种关系型数据库系统,是一种典型的UNIX 或WindowsNT 平台上客户机/服务器环境下的大型数据库系统。 Sybase 提供了一套应用程序编程接口和库,可以与非Sybase 数据源及服务器集成,允许在多个数据库之间复制数据,适于创建多层应用。系统具有完备的触发器、存储过程、规则以及完整性定义,支持优化查询,具有较好的数据安全性。Sybase 通常与SybaseSQLAnywhere 用于客户机/服务器环境,前者作为服务器数据库,后者为客户机数据库,采用该公司研制的 PowerBuilder 为开发工具,在我国大中型系统中具有广泛的应用。美国Sybase 公司研制的一种关系型数据库系统,是一种典型的 UNIX 或 WindowsNT 平台上客户机/服务器环境下的大型数据库系统。Sybase 提供了一套应用程序编程接口和库,可以与非Sybase 数据源及服务器集成,允许在多个数据库之间复制数据,适于创建多层应用。系统具有完备的触

几种常用数据库的比较

几种常用数据库的比较 目前,商品化的数据库管理系统以关系型数据库为主导产品,技术比较成熟。面向对象的数据库管理系统虽然技术先进,数据库易于开发、维护,但尚未有成熟的产品。国际国内的主导关系型数据库管理系统有Oracle、Sybase、Informix和INGRES。这些产品都支持多平台,如UNIX、VMS、Windows,但支持的程度不一样。IBM的DB2也是成熟的关系型数据库。但是,DB2是内嵌于IBM的AS/400系列机中,只支持OS /400操作系统。 1.MySQL MySQL是最受欢迎的开源SQL数据库管理系统,它由MySQL AB开发、发布和支持。MySQL AB是一家基于MySQL 开发人员的商业公司,它是一家使用了一种成功的商业模式来结合开源价值和方法论的第二代开源公司。MySQL是MySQL AB 的注册商标。 MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass- deployed)的软件中去。

与其他数据库管理系统相比,MySQL具有以下优势: (1)MySQL是一个关系数据库管理系统。 (2)MySQL是开源的。 (3)MySQL服务器是一个快速的、可靠的和易于使用的数据库服务器。 (4)MySQL服务器工作在客户/服务器或嵌入系统中。 (5)有大量的MySQL软件可以使用。 2.SQL Server SQL Server是由微软开发的数据库管理系统,是Web上最流行的用于存储数据的数据库,它已广泛用于电子商务、银行、保险、电力等与数据库有关的行业。 目前最新版本是SQL Server 2005,它只能在Windows上运行,操作系统的系统稳定性对数据库十分重要。并行实施和共存模型并不成熟,很难处理日益增多的用户数和数据卷,伸缩性有限。 SQL Server 提供了众多的Web和电子商务功能,如对XML 和Internet标准的丰富支持,通过Web对数据进行轻松安全的访问,具有强大的、灵活的、基于Web的和安全的应用程序管理等。而且,由于其易操作性及其友好的操作界面,深受广大用户的喜爱。

几种轻量级的数据库对比

Access、SQLite、HSQLDB、Sybase、MySQL、DB4O 一、Access 数据类型有些另类,而且密码太容易被攻破,性能不高,只能用在Windows 程序上。 一般说来,单个表不超过10万少条记录为好,整个数据库不超过100M为好。ACCESS对数据库容量限制为2G,但超过100M后性能便 会有很大折扣。 二、HSQLDB 支持csv,配置分发容易,大数据量情况下性能不佳,这和sql执行效率无关,性能瓶颈在硬盘文件上,毕竟由于hsqldb没有在数 据文件存储上花时间,只是挂个csv。只能用于Java程序中。 三、firebird 数据文件是单一,部署、分发相对简单;用embedded方式,只需要把 icudt30.dll、icuin30.dll、icuuc30.dll、 jaybird21.dll、fbembed.dll五个文件和目录intl(里面有两个文件,是处理字符集的)放在程序启动目录就行了;中文支持的不错 ,但是要在建库的时候使用GB_2312字符集。有.NET、C++、Java多个Binding。 四、Sybase asa 数据能加密,性能不错,需要付费。 五、derby 性能和易用性都不错,但embedded版本完全没有数据认证,导致谁都可以打开数据库执行sql语句,而且数据库是以一个目录存 储的。只能用于Java程序中。 六、sqllite 官方发行版本不支持数据加密,另外,对中文,尤其是用中文order by的时候时常错误;还有就是完全没有用户认证;不过执行 效率不错。几乎稍微流行点的编程语言都有相应的Binding。 七、mysql 虽然mysql也可以不通过安装,直接拷贝就能使用,但是距离embedded还差一块。 八、DB4O 面向对象的数据库,使用DB4O无需ORM工具就可以直接进行对象存储。支持Java和.Net平台。可以自定义数据加密算法,性能优 良,单文件。虽然也支持Server模式,但最适合用于Embedded。

分享三款主流数据库及其特点

分享三款主流数据库及其特点 1.Oracle数据库 Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库解决方案。 基本介绍: ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。比如SilverStream就是基于数据库的一种中间件。ORACLE数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。但它的所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用它。Oracle数据库最新版本为Oracle Database12c。Oracle数据库12c引入了一个新的多承租方架构,使用该架构可轻松部署和管理数据库云。此外,一些创新特性可最大限度地提高资源使用率和灵活性,如Oracle Multitenant可快速整合多个数据库,而Automatic Data Optimization和Heat Map能以更高的密度压缩数据和对数据分层。这些独一无二的技术进步再加上在可用性、安全性和大数据支持方面的主要增强,使得Oracle数据库12c成为私有云和公有云部署的理想平台。

几种数据库常用函数比较

一、DB2、ACCESS、ORACLE的常用函数比较:

ORACLE中的应为:SUBSTR(字符串1,LENGTH(字符串1) -位数1 + 1,位数1) 或:SUBSTR(字符串1,-位数1,位数1) 二、SQL语句的差异: 1、Select:(三种数据库基本相同) 基本相同语句: Select * from 表名where 条件 特殊语句:(三种数据库都可执行) Select * from (Select 字段1,字段2,字段3 from YH_User) 2、Insert: (三种数据库基本相同) 基本相同语句: Insert into 表名(字段列表)V alues(表达式1,…表达式n) | select 字段列表from 表名Where 条件

DB2:存在特殊语句: INSERT INTO ND2000.XS_PARAM(PARAM_ID,SHOWIF,PARAM_NAME,PARAM_V ALUE,COMMENT1) (V ALUES(5,0,'销帐最大零头','1','单位为元。'),(6,0,'滞纳月','1','本参数和滞纳日期同时使用。说明见滞纳日期。'),(7,0,'滞纳日','1','电费计算后的第N个月的M号时,如果用户电费仍未缴清,则开始计算滞纳金。其中N为滞纳期限,M为滞纳日期。')); 3、Delete: (三种数据库基本相同) 基本相同语句: Delete from 表名Where 条件 4、Update: 基本相同语句: update 表名set 字段1=表达式,字段2=表达式.. 字段n=表达式where 条件 DB2、Oracle类似,Access不一样 Access: Update bb_temp,bb_param set bb_temp.c1=bb_param.c1, bb_temp.c2=bb_param.c2 where bb_temp.c0=bb_param.c0; DB2: Update bb_temp set (c1,c2)= (select C1,c2 from bb_param where C0=bb_temp.c0) Oracle: update xs_param1 set (param_name,param_value)= (select param_name,param_value from xs_param where xs_param.param_id=xs_param1.param_id ) 特别说明:

知网、万方、维普三种主流数据库比较

知网、万方和维普三种主流数据库比较 中国知网(CNKI) 简介:中国知识资源总库(CNKI)《中国知识资源总库》是由清华大学主办、 中国学术期刊(光盘版)电子杂志社出版、清华同方知网(北京)技术有限公司发行、数百位科学家、院士、学者参与建设,精心打造的大型知识服务平台和数字化学习系统。目前,《总库》囊括了自然科学、人文社会科学及工程技术各领域知识,拥有期刊、报纸、博硕士培养单位的博士和优秀硕士学位论文、全国重要会议论文、中小学多媒体教辅以及1000多个加盟数据库。全文采用CAJ和PDF 格式,必须下载专门的CAJ和PDF浏览器才可阅读。 数据库:《中国期刊全文数据库(CJFD)》截至2007年3月共收录了国内8127 种期刊,全文文献总量已达2272万多篇,收录起始时间一般为1994年,个别追溯到1979年或创刊年,按学科分126个专题,内容每日累增。产品形式有网络形式、光盘形式、《中国期刊专题全文数据库光盘版》。《中国优秀博硕士学位论文全文数据库(CDMD)》收录2000年至今300多个博硕士培养单位的学位论文,内容每日累增。《中国重要报纸全文数据库(CCND)》收录2000年至今1000多种重要报纸,内容每日累增。《中国重要会议论文集全文数据库》(CPCD)收录2000年至今400家学术团体的会议论文,内容每日累增。

搜索界面: 收费方式:

使用步骤: 数据库特点:最全面的中文数据库,内容丰富,更新速度快,收费灵活,价格较万方和维普适中。

万方数据库 简介:集纳了涉及各个学科的期刊、学位、会议、外文期刊、外文会议等类型 的学术论文,法律法规,科技成果,专利、标准和地方志。期刊论文:全文资源。收录自1998年以来国内出版的各类期刊6千余种,其中核心期刊2500余种,论文总数量达1千余万篇,每年约增加200万篇,每周两次更新。 搜索界面: 收费方式:

常见主流数据库的分类与详细比较

常见主流数据库分类 1、IBM 的DB2 DB2是IBM著名的关系型数据库产品,DB2系统在企业级的应用中十分广泛。截止2003年,全球财富500强(Fortune 500)中有415家使用DB2,全球财富100强(Fortune100)中有96家使用DB2,用户遍布各个行业。2004年IBM的DB2就获得相关专利239项,而Oracle 仅为99项。DB2目前支持从PC到UNIX,从中小型机到大型机,从IBM到非IBM(HP及SUN UNIX 系统等)的各种操作平台。 IBM绝对是数据库行业的巨人。1968年IBM在IBM 360计算机上研制成功了IMS这个业界第一个层次型数据库管理系统,也是层次型数据库中最为著名和最为典型的。1970年,IBM E.F.Codd发表了业界第一篇关于关系数据库理论的论文“A Relational Model of Data for Large Shared DataBanks”,首次提出了关系模型的概念。1974年,IBM Don Chamberlin和Ray Boyce通过System R项目的实践,发表了论文“SEQUEL:A Structured English Query Language”,我们现在熟知SQL就是基于它发展起来的。IBM 在1983年发布了DATABASE 2(DB2)for MVS(内部代号为“Eagle”),这就是著名的DB2数据库。2001年IBM以10亿美金收购了Informix的数据库业务,这次收购扩大了IBM分布式数据库业务。2006 DB2 9作为第三代数据库的革命性产品正式在全球发布。 作为关系数据库领域的开拓者和领航人,IBM在1977年完成了System R系统的原型,1980年开始提供集成的数据库服务器——System/38,随后是SQL/DSforVSE 和VM,其初始版本与SystemR研究原型密切相关。 DB2 forMVSV1 在1983年推出。该版本的目标是提供这一新方案所承诺的简单性,数据不相关性和用户生产率。1988年DB2 for MVS 提供了强大的在线事务处理(OLTP)支持,1989 年和1993 年分别以远程工作单元和分布式工作单元实现了分布式数据库支持。最近推出的DB2 Universal Database 6.1则是通用数据库的典范,是第一个具备网上功能的多媒体关系数据库管理系统,支持包括Linux在内的一系列平台。 2、Oracle Oracle 前身叫SDL,由Larry Ellison 和另两个编程人员在1977创办,他们开发了自己的拳头产品,在市场上大量销售,1979 年,Oracle公司引入了第一个商用SQL 关系数据库管理系统。Oracle公司是最早开发关系数据库的厂商之一,其产品支持最广泛的操作系统平台。目前Oracle关系数据库产品的市场占有率名列前茅。 Oracle公司是目前全球最大的数据库软件公司,也是近年业务增长极为迅速的软件提供与服务商。IDC(Internet Data Center)2007统计数据显示数据库市场总量份额如下:Oracle 44.1% IBM 21.3%Microsoft 18.3% Teradata 3.4% Sybase 3.4%。不过从使用情况看,BZ Research的2007年度数据库与数据存取的综合研究报告表明76.4%的公司使用了Microsoft

多种数据库性能比较

Orcale数据库 美国Orcale公司研制的一种关系型数据库管理系统,是一个协调服务器和用于支持任务决定型应用程序的开放型RDBMS。它可以支持多种不同的硬件和操作系统平台,从台式机到大型和超级计算机,为各种硬件结构提供高度的可伸缩性,支持对称多处理器、群集多处理器、大规模处理器等,并提供广泛的国际语言支持。Orcale是一个多用户系统,能自动从批处理或在线环境的系统故障中恢复运行。系统提供了一个完整的软件开发工具Developer2000,包括交互式应用程序生成器、报表打印软件、字处理软件以及集中式数据字典,用户可以利用这些工具生成自己的应用程序。Orcale以二维表的形式表示数据,并提供了SQL(结构式查询语言),可完成数据查询、操作、定义和控制等基本数据库管理功能。Orcale具有很好的可移植性,通过它的通信功能,微型计算机上的程序可以同小型乃至大型计算机上的Orcale,并且能相互传递数据。另外Orcale还具有与C语言的接电子表格、图形处理等软件。Orcale属于大型数据库系统,主要适用于大、中小型应用系统,或作为客户机/服务器系统中服务器端的数据库系统。 DB2数据库 IBM公司研制的一种关系型数据库系统。DB2主要应用于大型应用系统,具有较好的可伸缩性,可支持从大型机到单用户环境,应用于OS/2、Windows等平台下。DB2提供了高层次的数据利用性、完整性、安全性、可恢复性,以及小规模到大规模应用程序的执行能力,具有与平台无关的基本功能和SQL命令。DB2采用了数据分级技术,能够使大型机数据很方便地下载到LAN数据库服务器,使得客户机/服务器用户和基于LAN的应用程序可以访问大型机数据,并使数据库本地化及远程连接透明化。它以拥有一个非常完备的查询优化器而著称,其外部连接改善了查询性能,并支持多任务并行查询。DB2具有很好的网络支持能力,每个子系统可以连接十几万个分布式用户,可同时激活上千个活动线程,对大型分布式应用系统尤为适用。 SQL Server数据库 美国Microsoft公司推出的一种关系型数据库系统。SQLServer是一个可扩展的、高性能的、为分布式客户机/服务器计算所设计的数据库管理系统,实现了与WindowsNT的有机结合,提供了基于事务的企业级信息管理系统方案。 其主要特点如下: (1)高性能设计,可充分利用WindowsNT的优势。 (2)系统管理先进,支持Windows图形化管理工具,支持本地和远程的系统管理和配置。 (3)强壮的事务处理功能,采用各种方法保证数据的完整性。 (4)支持对称多处理器结构、存储过程、ODBC,并具有自主的SQL语言。SQLServer以其内置的数据复制功能、强大的管理工具、与Internet的紧密集成和开放的系统结构为广大的用户、开发人员和系统集成商提供了一个出众的数据库平台。 Sybase数据库

MPP数据库对比分析

1 概述 随着海量数据问题的出现,海量管理能力,多类型,变化快,高可用性,低成本,高端可扩展性等需求给企业数据战略带来了巨大的挑战。企业数据仓库、数据中心的技术选型变得尤其重要!所以在选型之前,有必要对目前市场上各种大数据量的解决方案进行分析。 2 主流分布式并行处理数据库产品介绍 2.1 Greenplum 2.1.1 基础架构 Greenplum 是基于Hadoop 的一款分布式数据库产品,在处理海量数据方面相比传统数据库有着较大的优势。 Greenplum 整体架构如下图: 数据库由Master Severs 和Segment Severs 通过Interconnect 互联组成。 Master 主机负责:建立与客户端的连接和管理;SQL 的解析并形成执行计划;执行计划向Segment 的分发收集Segment 的执行结果;Master 不存储业务数据,只存储数据字典。 Segment 主机负责:业务数据的存储和存取;用户查询SQL 的执行。 2.1.2 主要特性 Greenplum 整体有如下技术特点: Shared-nothing 架构 Network Interconnect ... Master Severs 查询解析、优化、分发 Segment Severs 查询处理、数据存储 External Sources 数据加载

海量数据库采用最易于扩展的Shared-nothing架构,每个节点都有自己的操作系统、数据库、硬件资源,节点之间通过网络来通信。 ◆基于gNet Software Interconnect 数据库的内部通信通过基于超级计算的“软件Switch”内部连接层,基于通用的gNet (GigE,10GigE) NICs/switches在节点间传递消息和数据,采用高扩展协议,支持扩展到1000个以上节点。 ◆并行加载技术 利用并行数据流引擎,数据加载完全并行,加载数据可达到4。5T/小时(理想配置)。并且可以直接通过SQL语句对外部表进行操作 ◆支持行、列压缩存储技术 海量数据库支持ZLIB和QUICKLZ方式的压缩,压缩比可到10:1。压缩数据不一定会带来性能的下降,压缩表通过利用空闲的CPU资源,而减少I/O资源占用。 海量数据库除支持主流的行存储模式外,还支持列存储模式。如果常用的查询只取表中少量字段,则列模式效率更高,如查询需要取表中的大量字段,行模式效率更高。 海量数据库的多种压缩存储技术在提高数据存储能力的同时,也可根据不同应用需求提高查询的效率 2.1.3主要局限 ●列存储模式的使用有限制,不支持delete/update操作。 ●用户不可灵活控制事务的提交,用户提交的处理将被自动视作整体事务,整体提交, 整体回滚。 ●数据库需要额外的空间清理维护(vacuum),给数据库维护带来额外的工作量。 ●用户不能灵活分配或控制服务器资源。 ●对磁盘IO有比较高的要求。 ●备份机制还不完善,没有增量备份。 2.2Vertica 2.2.1基础架构 与以往常见的行式关系型数据库不同,Vertica 是一种基于列存储(Column-Oriented)的数据库体系结构,这种存储机构更适合在数据仓库存储和商业智能方面发挥特长。 常见的RDBMS 都是面向行(Row-Oriented Database)存储的,在对某一列汇总计算的时候几乎不可避免的要进行额外的I/O 寻址扫描,而面向列存储的数据库能够连续进行I/O 操作,减少了I/O 开销,从而达到数量级上的性能提升。 同时,Vertica 支持海量并行存储(MPP)架构,实现了完全无共享,因此扩展容易,

常见主流数据库的分类与详细比较

1、IBM 的DB2 DB2是IBM著名的关系型数据库产品,DB2系统在企业级的应用中十分广泛。截止2003年,全球财富500强(Fortune 500)中有415家使用DB2,全球财富100强(Fortune100)中有96家使用DB2,用户遍布各个行业。2004年IBM的DB2就获得相关专利239项,而Oracle 仅为99项。DB2目前支持从PC到UNIX,从中小型机到大型机,从IBM到非IBM(HP及SUN UNIX 系统等)的各种操作平台。 IBM绝对是数据库行业的巨人。1968年IBM在IBM 360计算机上研制成功了IMS这个业界第一个层次型数据库管理系统,也是层次型数据库中最为著名和最为典型的。1970年,IBM 发表了业界第一篇关于关系数据库理论的论文“A Relational Model of Data for Large Shared DataBanks”,首次提出了关系模型的概念。1974年,IBM Don Chamberlin和Ray Boyce通过System R项目的实践,发表了论文“SEQUEL:A Structured English Query Language”,我们现在熟知SQL就是基于它发展起来的。IBM 在1983年发布了DATABASE 2(DB2)for MVS (内部代号为“Eagle”),这就是著名的DB2数据库。2001年IBM以10亿美金收购了Informix 的数据库业务,这次收购扩大了IBM分布式数据库业务。2006 DB2 9作为第三代数据库的革命性产品正式在全球发布。 作为关系数据库领域的开拓者和领航人,IBM在1977年完成了System R系统的原型,1980年开始提供集成的数据库服务器——System/38,随后是SQL/DSforVSE和VM,其初始版本与SystemR研究原型密切相关。 DB2 forMVSV1 在1983年推出。该版本的目标是提供这一新方案所承诺的简单性,数据不相关性和用户生产率。1988年DB2 for MVS 提供了强大的在线事务处理(OLTP)支持,1989 年和1993 年分别以远程工作单元和分布式工作单元实现了分布式数据库支持。最近推出的DB2 Universal Database 则是通用数据库的典范,是第一个具备网上功能的多媒体关系数据库管理系统,支持包括Linux在内的一系列平台。 2、 Oracle Oracle 前身叫SDL,由Larry Ellison 和另两个编程人员在1977创办,他们开发了自己的拳头产品,在市场上大量销售,1979 年,Oracle公司引入了第一个商用SQL 关系数据库管理系统。Oracle公司是最早开发关系数据库的厂商之一,其产品支持最广泛的操作系统平台。目前Oracle关系数据库产品的市场占有率名列前茅。 Oracle公司是目前全球最大的数据库软件公司,也是近年业务增长极为迅速的软件提供与服务商。IDC(Internet Data Center)2007统计数据显示数据库市场总量份额如下:Oracle % IBM %Microsoft % Teradata % Sybase %。不过从使用情况看,BZ Research的2007年度数据库与数据存取的综合研究报告表明%的公司使用了Microsoft SQL Server,不过在高端领域仍然以Oracle,IBM,Teradata为主。

四种主流数据库的比较

四种主流数据库的比较 四种主流数据库的比较2010-06-11 19 08四种主流数据库的比较目前有 许多DBMS产品如DB2、Oracle、Microsoft SQL Server、Sybase SQL Server、Informix、MySQL等它们在数据库市场上各自占有一席之地。下面 简要介绍几种常用的数据库管理系统。(1)DB2 DB2第一种使用使用SQL的数据 库产品。DB2于1982年首次发布现在已经可以用在许多操作系统平台上它 除了可以运行在OS/390和VM等大型机操作系统以及中等规模的AS/400系统之 外IBM还提供了跨平台(包括基于UNIX的LINUXHP-UXSun Solaris以及 SCO UnixWare还有用于个人电脑的Windows 2000系统)的DB2产品。应用程 序可以通过使用微软的ODBC接口、Java的JDBC接口或者CORBA接口代理来访 问DB2数据库。DB2有不同的版本比如DB2 Everyplace是为移动用户提供的 一个内存占用小且性能出色的版本DB2 for z/OS则是为主机系统提供的版本 Enterprise Server Edition(ESE)是一种适用于中型和大型企业的版本 Workgroup Server Edi on(W SE)主要适用于小型和中型企业它提供除大型机 连接之外的所有ESE特性而DB2 Express则是为开发人员提供的可以免费使 用的版本。IBM是最早进行关系数据库理论研究和产品开发的公司在关系数 据库理论方面一直走在业界的前列所以DB2的功能和性能都是非常优秀的 不过对开发人员的要求也比其他数据库系统更高使用不当很容易造成宕机、 死锁等问题DB2在SQL的扩展方面比较保守很多其他数据库系统支持的SQL 扩展特性在DB2上都无法使用同时DB2对数据的类型要求也非常严格在数 据类型不匹配的时候会报错而不是进行类型转换而且如果发生精度溢出、数 据超长等问题的时候也会直接报错这虽然保证了数据的正确性但是也使得 基于DB2的开发更加麻烦。因此很多开发人员称DB2为"最难用的数据库系统 "。(2)Oracle Oracle是和DB2同时期发展起来的数据库产品也是第二个采 用SQL的数据库产品。Oracle从DB2等产品中吸取到了很多优点同时又避免 了IBM的官僚体制与过度学术化大胆的引进了许多新的理论与特性所以 Oracle无论是功能、性能还是可用性都是非常好的。(3)Microsoft SQL Server Microsoft SQL Server是微软推出的一款数据库产品。细心的读者也 许已经发现我们前面提到了另外一个名字非常相似的Sybase SQL Server这 里的名字相似并不是一种巧合这还要从Microsoft SQL Server的发展史谈起。微软当初要进军图形化操作系统所以就开始和IBM"合作"开发OS/2最终当 然无疾而终但是微软就很快的推出了自己的新一代视窗操作系统而当微软 发现数据库系统这块新的市场的时候微软没有自己重头开发一个数据库系统 而是找到了Sybase来"合作"开发基于OS/2的数据产品当然微软达到目的以 后就立即停止和Sybase的合作了于1995年推出了自己的Microsoft SQL Server 6.0经过几年的发展终于在1998年推出了轰动一时的Microsoft SQL Server 7.0也正是这一个版本使得微软在数据库产品领域有了一席之地。正 因为这段"合作"历史所以使得Microsoft SQL Server和Sybase SQL Server 在很多地方非常类似比如底层采用的TDS协议、支持的语法扩展、函数等等。 微软在2000年推出了Microsoft SQL Server 2000这个版本继续稳固了 Microsoft SQL Server的市场地位由于Windows操作系统在个人计算机领域 的普及Microsoft SQL Server理所当然的成为了很多数据库开发人员的接触 的第一个而且有可能也是唯一一个数据库产品很多人甚至在"SQL Server"和" 数据库"之间划上了等号而且用"SQL"一次来专指Microsoft SQL Server可

各种数据库的优缺点

1.选择一个好的数据库是非常重要的。 2.如何选择一个好的数据库 开放性: SQL Server 只能在windows 上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。Windows9X系列产品是偏重于桌面应用,NT server只适合中小型企业。而且windows 平台的可靠性,安全性和伸缩性是非常有限的。它不象unix那样久经考验,尤其是在处理大数据量的关键业务时. Oracle 能在所有主流平台上运行(包括 windows)。完全支持所有的工业标准。采用完全开放策略。可以使客户选择最适合的解决方案。对开发商全力支持。 DB2 能在所有主流平台上运行(包括windows)。最适于海量数据。DB2在企业级的应用最为广泛,在全球的500家最大的企业中,几乎85%以上用DB2数据库服务器,而国内到97年约占5%. 可伸缩性,并行性 SQL server DB2 并行实施和共存模型并不成熟。很难处理日益增多的用户数和数据卷。伸缩性有限。 Oracle 平行服务器通过使一组结点共享同一簇中的工作来扩展windownt的能力,提供高可用性和高伸缩性的簇的解决方案。 如果windowsNT不能满足需要, 用户可以把数据库移到UNIX中。 DB2 DB2具有很好的并行性。DB2把数据库管理扩充到了并行的、多节点的环境. 数据库分区是数据库的一部分,包含自己的数据、索引、配置文件、和事务日 志。数据库分区有时被称为节点或数据库节点 安全性 SQL server 没有获得任何安全证书。 Oracle Server 获得最高认证级别的ISO标准认证。 DB2 获得最高认证级别的ISO标准认证。

相关主题
文本预览
相关文档 最新文档