目录
摘要 1
第一章:确定研究对象 2
1 数据库的基本知识 2
1.1数据库和数据库管理系统 2
1.2关系数据库 3
1.3大型数据库 4
2 流行数据库 5
3研究对象的确定 5
第二章:Oracle数据库介绍 7
1 简介 7
2市场分析 7
4 Oracle的优缺点 11
第三章:SQL Server数据库介绍 15
1简介 15
2市场分析 16
4 SQL Server的优缺点 18
第四章:DB2数据库介绍 21
1简介 21
2市场分析 21
4 DB2的优点 24
第五章:比较与总结 26
1 三大流行数据库总体比较 26
2总结 26
因为课程作业的要求写了这篇文章,本人并不懂技术,所以本文相当于对网上资料的整理,没有什么新东西。
摘要
本文以流行大型关系型数据库为研究对象进行研究,首先介绍了数据库的基本知识,包括:数据库和数据库管理系统的概念,关系数据库的概念,大型数据库的概念;然后,根据市场占有率排名选定三个数据库产品作为研究对象,分别是Oracle、SQL Server、DB2,并分别对这三个数据库产品从简介、市场分析、主要技术手段、优点、缺点五个方面作了介绍;最后,针对三个数据库产品进行各方面的比较,并探讨了国内的“去IOE化”。
关键词:Oracle SQL Server DB2 大型数据库
为了更好的说明研究对象,需要解释关于研究对象的基本知识。
数据库,顾名思义就是存放数据的仓库,它是存储在计算机存储设备上的相互关联的数据集合,数据库的基本特征如下:
以上的这些特性是靠管理或支持数据库的系统软件——数据库管理系统(DataBase Management System,DBMS)提供的,数据库管理系统的功能有:
而本文要讨论的数据库产品,则是数据库和数据库管理系统的集合。
关系式数据库系统是支持关系数据模型的数据库系统。
关系模型的理论基础是数学的集合论。支持一对一、一对多和多对多关系性。
关系数据库模型的组成元素是:
1数据结构:数据的组成方式,以关系数据库模型来说,就是行和列组成表格的关系表
2数据操作或运算:数据的相关操作是关系型算术和 关系型计算。
3完整性约束:维护数据完整性的条件,其目的是确保储存的数据是合法和正确的数据。
在20世纪60-70年代广泛使用的数据库管理系统主要是层次数据库(如IMS)和网状数据库(如CODASYL),而现在普遍使用的数据库管理系统都是关系数据库管理系统。
目前,关系数据库系统早已从实验室走向了社会,出现了很多性能良好、功能卓越的数据库管理系统,在国内使用比较普遍的数据库管理系统有IBM DB2,Sybase,Oracle和MS SQL Server等,还有在个人计算机上广泛使用的FoxPro、Access等。
本文要讨论的数据库产品,主要是基于关系模型的关系型数据库产品。
1.3.1超大型数据库的定义
超大型数据库(very-large database)没有标准的定义,单纯的大小不再是唯一的评判标准,而只是一个因素。
1.3.2大型数据库的应用与优势
大型数据库的优势是:
1达到PB级的海量数据,处理的用户数一般都超过百万,有的还超过千万,数据库的数据量一般超过1TB。
2高吞吐量,在单位时间内通过某个网络(或信道、接口)的数据量比较高。
大型数据库应用在各行各业,包括但不限于金融、通信、生产制造、快速消费品零售、物流运输、医疗、互联网、政府,覆盖了中型、大型、巨型企业,可谓与我们的生活息息相关。
根据DB-Engines 发布了2018年9月份的全球数据库排名,排名前六的一如既往还是 Oracle、MySQL、Microsoft SQL Server、PostgreSQL、MongoDB 和 DB2。
本文的研究对象是流行大型数据库,所以选取2018年市场占有率前六中的三个大型数据库产品:Oracle、Microsoft SQL Server、DB2作为大型数据库产品的代表进行研究。
Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。
Oracle数据库的市场占有率排名第一,面向全球中高端市场。在中国,Oracle为中国的业务发展提供了强有力的支持。由他们开发的数百个基于Oracle平台的商品化应用软件包,已经广泛应用于国内的政府部门、电信、邮政、公安、金融、保险、能源电力、交通、科教、石化、航空航天、民航等各行各业。
主要在传统行业的数据化业务中,比如:银行、金融这样的对可用性、健壮 性、安全性、实时性要求极高的业务;零售、物流这样对海量数据存储分析 要求很高的业务。此外,高新制造业如芯片厂也基本都离不开Oracle;电商也 有很多使用者,如京东(正在投奔Oracle)、阿里巴巴(计划去Oracle化)。
根据DB-Engines 发布了2018年9月份的全球数据库排名,Oracle位居第一位。
Oracle 的优点:
1开放性高
Oralce采用完全开放策略,能在所有主流平台上运行,包括windows、unix等。
2兼容性出色
Oracle完全支持所有的工业标准。(工业标准通俗的说就是生产产品的某些群体,通过科学的实践计算后,并且得到大部分行内人群的认同,确定的一种可以作为参照物来对比的量值,以方便生产流程中的统一性,普遍性)
另外,Oracle拥有长时间的开发经验,完全向下兼容,得到广泛的应用,完全没有风险。可以安全的进行数据库的升级,在企业、政府中得到广泛的应用。并且如果在WINNT上无法满足数据的要求,可以安全的把数据转移到UNIX上来。
3安全性高
获得了最高认证级别的ISO标准认证,Oracle在KuppingerCole《领导者指南:数据库安全性》报告中 被评为领导者。Oracle的安全措施主要有三个方面,一是用户标识和鉴定,最外层的安全性措施是让用户标识自己的名字,然后由系统进行核实。Oracle允许用户重复标识三次,如果三次未通过,系统自动退出。;二是授权和检查机制;三是审计技术(是否使用审计技术可由用户灵活选择);除此之外,Oracle还允许用户通过触发器灵活定义自己的安全性措施。
4性能最高、效率高
Oralce曾经保持开放平台下的TPC-D和TPC-C的世界记录。(TPC-C是交易处理性能委员会(TPC)开发的联机交易处理(OLTP)基准测试。TPC-C基准测试为计算性能和性价比定义了严格的标准,它分别用每分钟交易数(tpmC)和美元/tpmC来衡量性能和性价比。)
从下图可见,Oracle数据库的性能可谓一骑绝尘。2018年,Oracle数据库11g标准版1实现了每分钟10.2454万次交易,性价比为0.73美元/tpmC,在性价比类基准测试中,Oracle数据库11g比最接近的竞争性产品的性能高47%,同时成本低20%。
5采用多层次网络计算
支持终端-主机、C\S、B\S等多种网络计算模式,可以用ODBC,JDBC,OCI等网络客户连接。
6可伸缩性、并行性好
并行服务器通过使一组结点共享同一簇中的工作来扩展Window NT的能力,提供高可用性和高伸缩性的簇的解决方案。如果Windows NT不能满足需要, 用户可以把数据库移到UNIX中,具有很好的伸缩性。Oracle的并行服务器对各种UNIX平台的集群机制都有着相当高的集成度。
Oracle缺点:
1操作复杂,Oracle数据库同时提供GUI和命令行,在Windows NT和Unix, Linux 下操作相同。对数据库管理人员要求较高。
2 使用成本高,oracle产品及服务都是付费的,而且价格不菲,且不易用。
3 oracle在OLTP领域非常强,在OLAP邻域较弱。
4 oracle在中国销售的数据库只能达到中国国家二级安全标准。
SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS),它最初是由Microsoft、Sybase和 Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。Microsoft SQL Server近年来不断 更新版本,1996年,Microsoft 推出了SQL Server 6.5版本;1998年,SQL Server 7.0版本和用户见面;SQL Server 2000是Microsoft公司于2000年推出,目前最新版本是SQL SERVER 2017。
SQL Server的版本主要包括以下几种。
Enterprise Edition,即企业版,能够对SQL Server 2000 的所有功能予以支持。使用的主要对象为大中型的产品类数据库服务器,对于大型网站要求的性能,对于企业的联机处理事务要求具备的相关性能,对于大型的OLAP要求的联机处理分析性能,本版本都能够实现并满足需求。
Standard Edition,即标准版,主要适用于规模较小的部门或者工作组。对于SQL Server2000的多数主要功能都能够支持到,但多大型的数据库则支持不到,同时,对所有关系数据库的引擎不具备不支持的性能。
Personal Edition,即个人版,使用的主要对象为移动用户,因为这类用户常常断开网络,但应用程序的持续运行却需要SQL Server 2000给予大力支持。基本上对SQL Senrer 2000具备的标准性能都可以予以支持,但是处理事物的复制功能则不能实现。
SQL Server的主机操作系统为windows,主要用于web网站的建设,承载中小型web后台数据,在租赁的虚拟主机中一般会预安装SQL Server作为数据库软件。SQL SERVER面向全球中低端市场,服务于政务、电力、企业、网站等中低端用户。很多人把SQL Server看作是比较低端的数据库,不适合支撑关键业务,但由于Windows Server的大面积使用,也使得SQL Server的普及率大大提升。
SQL Server应该是从2005版本开始真正进入人们视野的,虽然一直在中低端的应用中徘徊,但目前越来越多的企业级应用已经部署在SQL Server平台上了。
根据DB-Engines 发布了2018年9月份的全球数据库排名,SQL Server位居第三位。
SQL Server的优点:
1与Windows紧密结合,增加了易用性
SQL Server可以与Windows操作系统紧密集成,不论是应用程序开发速度还是系统事务处理运行速度,都能得到较大的提升;与Windows NT完全集成,利用了NT的许多功能,如发送和接受消息,管理登录安全性等。 SQL Server也可以很好地与Microsoft BackOffice产品集成。
2操作简便
图形化用户界面,使系统管理和数据库管理更加直观、简单。
3良好的性价比
SQL Server的价格与Oracle、DB2相比最低,SQL Server提供数据仓库( 为需要业务智能的企业,提供指导业务流程改进、监视时间、成本、质量以及控 制)功能,这个功能只在Oracle和其他更昂贵的DBMS中才有。
4良好的伸缩性
可跨越从运行Windows 95/98的小型电脑到运行Windows 2000的大型多处理器等多种平台使用。
5对Web的支持
SQL Server对Web技术的支持,使用户能够很容易地将数据库中的数据发布到Web页面上。
SQL Server的缺点:
1 开放性差
SQL Server只能在windows上运行。
2 可伸缩性有限
SQL Server并行实施和共存模型并不成熟,很难处理日益增多的用户数和数据卷,伸缩性有限。
3 使用风险
SQL Server完全重写的代码,经历了长期的测试,不断延迟,许多功能需要时间来证明。并不十分兼容早期产品。使用需要冒一定风险。
4性能不稳定
SQLServer当用户连接多时性能会变的很差,并且不够稳定。
5客户端支持及应用模式
SQL Server只支持C/S模式。
DB2是IBM著名的关系型数据库产品,DB2系统在企业级的应用中十分广泛。曾经,截止2003年,全球财富500强(Fortune 500)中有415家使用DB2,全球财富100强(Fortune100)中有96家使用DB2,用户遍布各个行业。2004年IBM的DB2就获得相关专利239项,而Oracle仅为99项。
IBM DB2 是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBM i(旧称OS/400)、z/OS,以及Windows服务器版本。最适合于海量数据。
在功能和性能上,IBM 的DB2一直是高端产品,它在高端市场的地位很牢固,微软和Oracle无法与之抗衡。国内使用DB2的主要是金融业和巨型企业,因为银行、大型企业多用IBM大型机,其软件是一般是IBM成套提供,数据库多采用DB2,IBM对其有硬件上的优化。
根据DB-Engines 发布了2018年9月份的全球数据库排名,DB2位居第六位。
DB2的优点:
1开放性
能在所有主流平台上运行(包括windows)。最适于海量数据。
2 可伸缩性,并行性
具有很好的并行性。DB2把数据库管理扩充到了并行的、多节点的环境。数据库分 区是数据库的一部分,包含自己的数据、索引、配置文件、和事务日志。数据库分区有时被称为节点。
3 安全性
获得最高认证级别的ISO标准认证。
4 客户端支持及应用模式
跨平台,多层结构,支持ODBC,JDBC等客户。
5 操作简单
DB2操作简单同时提供GUI和命令行,在windowsNT和unix下操作相同。
6使用风险低
在巨型企业得到广泛的应用,向下兼容性好,风险小。
7性能卓越
DB2性能较高适用于数据仓库和在线事物处理。DB2 超大型数据库,数据仓库和数据挖掘相当的不错,特别是集群技术可以使DB2的可扩性能达到极致。
DB2的缺点:
1价格昂贵
2与IBM主机捆绑
|
开放性 |
可伸缩性、并行性 |
安全性 |
截止2018年9月市场占有排名 |
Oracle |
高 |
好 |
好 |
1 |
Miscroft SQL Server |
低 |
一般 |
一般 |
3 |
DB2 |
高 |
好 |
好 |
6 |
|
性能 |
操作难度 |
客户端支持及应用模式 |
使用风险 |
价格 |
Oracle |
最高 |
高 |
都支持 |
低 |
高 |
Miscroft SQL Server |
一般 |
低 |
只支持C\S |
高 |
低 |
DB2 |
同Oracle,适合处理海量数据 |
低 |
都支持 |
低 |
高 |
本文选取三种流行的大型数据库进行介绍,涉及了Oracle、SQL Server、DB2这三种数据库产品的市场、技术、性能、功能等等方面。
在性能方面,根据TPC-C的实时排名,得出的结论是Oracle 约等于DB2 远大于sSQL Server ,且这三个数据库的性能侧重也不同。Oracle在联机交易处理领域更擅长;DB2的容量很大,最适合处理海量数据,数据仓库和数据挖掘是DB2擅长的领域;SQL Server对Web技术的支持,使用户能够很容易地将数据库中的数据发布到Web页面上,与Windows的紧密集成使不论是应用程开发速度还是系统事务处理运行速度,都得到较大的提升。
在市场方面,Orcale>DB2>SQL Server,大型企业的数据库很多都是混用的,但是核心业务大多跑在Oracle和DB2上。Oracle涉及的行业最多,包括但不限于金融、通信、生产制造、快速消费品零售、物流运输、医疗、互联网、政府;DB2则多用于金融业和巨型企业;SQL Server则运用于政府、生产制造、快速消费品零售、医疗、互联网行业,主要客户是中小企业。
值得注意是,国内正在经历“去IOE化”的变革,“去IOE”是阿里巴巴造出的概念,其本意是,在阿里巴巴的IT架构中,去掉IBM的小型机、Oracle数据库、EMC存储设备,代之以自己在开源软件基础上开发的系统。阿里曾经是甲骨文在亚太地区最大的客户,10年前选择“去IOE”发展自己的云计算业务,成立了阿里云。根据美通社报道,根据Gartner发布的最新报告《数据库的未来就是云》,2018年阿里云在云数据库管理系统(DBMS)收入中排名全球第三。在这份报告中,阿里云的市场份额在DBMS供应商中排名第三,同比增长116%,另一方面,2019年5月7日,媒体大规模曝光甲骨文裁员消息,多位甲骨文员工爆料,“甲骨文中国区首批裁员900余人,其中超500人来自CDC(甲骨文中国区研发中心),而整个CDC共约1600人”。目前,云计算正在冲击传统数据库市场,并且很可能终将替代传统数据库,这是值得注意的趋势。而就在10月2日,数据库领域最权威的国际机构国际事务处理性能委员会(TPC,Transaction Processing Performance Council)在官网发表了最新的TPC-C 基准测试结果。蚂蚁金服自主研发的金融级分布式关系数据库OceanBase以两倍于Oracle(甲骨文)的成绩,打破数据库基准性能测试的世界记录,成为全球数据库演进史的重要里程碑。
在“去IOE”风潮和Oracle性能记录被国产数据库打破的影响下,数据库技术和市场必然面临更大的变迁,我们应该在学习传统数据库技术的同时不断关注这一领域的变化,接触新的技术,多多探讨新旧数据库的优缺,以图在做每个项目的时候总能找到最适合的工具。