WEB开发网
开发学院数据库Sybase Sybase与Oracle的十二场性能比拼 阅读

Sybase与Oracle的十二场性能比拼

 2006-12-27 21:27:01 来源:WEB开发网   
核心提示: 10、数据完整性控制 Oracle(大型网站数据库平台)具有一套完整的数据库完整性控制机制,这些控制也是直接嵌入Oracle(大型网站数据库平台)核心中实现的,Sybase与Oracle的十二场性能比拼(4),如:实体完整性约束、自动对表中字段的取值进行正确与否的判断、自动的引用完整性约束、可自动对多张表进行相互制约

10、数据完整性控制

Oracle(大型网站数据库平台)具有一套完整的数据库完整性控制机制,这些控制也是直接嵌入Oracle(大型网站数据库平台)核心中实现的。如:实体完整性约束、自动对表中字段的取值进行正确与否的判断、自动的引用完整性约束、可自动对多张表进行相互制约的控 制等。实体完整性以及引用完整性均为申明式的,就是说,只要简单地建立或修改表的定义完整性规则,以后Oracle(大型网站数据库平台) DBMS会自动实施这些约束。这样把应用开发和维护成本降到了最低(因为没有代码),也改善了应用可靠性(由DBMS 来确保实施),并且降低实施开销(Oracle(大型网站数据库平台)优化约束实施操作)。

另外,Oracle(大型网站数据库平台)还提供用PL/SQL书写的存储过程的触发器,在多个层次上实施很复杂的商业规则。存储过程及触发器可以包含一条或多条SQL语句, 也可以包含多个PL/SQL程序块,它们经编译后存储在Oracle(大型网站数据库平台)中。存储过程 可以被其他Oracle(大型网站数据库平台)工具调用,并支持远程客户的调用,这就是远过程调用。触发器则会在每次对数据进行插入、更新、删除时,自动被触发。Oracle(大型网站数据库平台)触发器有很强的功能,如每当一种特定部件的库存下降超过一定界限时,一个触发器可以自动生成一个新的定单,触发器可用于维护导出数据,执行基于内容的审计,以及执行同步的表副本复制。触发器可在触发语句之前或之后执行(或称事前触发及事后触发);既可以是由一条语句也可以是由每一行触发执行。Oracle(大型网站数据库平台)强有力的触发器严格遵从ANSI SQL中的标准定义。

在Sybase中,由Adaptive Server集中实现数据完整性控制。支持申明 定义完整性约束。用Datatype、Default、Rule等来提供字段完整性及字段与表的关系,用触发器实现参照完整性。

Sybase中的数据完整性控制相对Oracle(大型网站数据库平台)来说显得非常有限。实体完整性提供的功能显得非常不足,往往需要用户在程序中加入很多有关实体完整性的控制代码,执行效率不高,系统可适应性不好,如加或减一个实体约束往往需要修应用程序。其触发器实现的是事后回退方式,如果一个事务引进一连串的事务回退,势必降低事务的处理能力。

11、数据库安全控制

Oracle(大型网站数据库平台)的安全控制机制,是由系统权限、数据权限、角色权限这三级体系结构组成的。所谓系统权限,是指对数据库系统及数据结构的操作权,例如 :创建/删除数据链路、同义词、审计、索引、存储过程、触发器等等。所谓数据权限,是指用户对数据的操作权,如查询、更新、完整性约束、运行存储过程等等。所谓角色权限,是把几个相关的权限组织成角色,角色之间可以进一步组合而成为多层次的树型结构,这是Oracle(大型网站数据库平台)把现实世界中的行政管理方式融入RDBMS中。角色权限除了限制操作权、控制权外,还能限制执行某些应用程序的权限。这样安全控制体系,使得整个系统的管理人员及程序开发人员能控制系统命令的运行、数据的操作以及应用程度的执行。这一安全体系已通过了美国计算机(NCSC)C2级标准的测试。实际上,对命令运行权及应用执行权的控制,已超出了C2级标准。在一些安全级别达到B1级标准的操作系统平台上, Oracle(大型网站数据库平台)还有以B1级标准建立的Oracle(大型网站数据库平台)产品,B1级产品的主要特点是除了以对象名(表名、列名、索引等)为基础来限制存取的离散型安全管理外,还有以数据安全程度为基础来限制存取的强制型安全管理。

Oracle(大型网站数据库平台)还提供了虚拟私有数据库(Virtual Private Database), 实现了行级加密。不同的用户访问同一张表将是不同的数据集,再也无需在应用里作任何控制。

另外,Oracle(大型网站数据库平台)可按系统和用户的要求,可对表及视图进行各种审计,完成对数据库系统的审计追踪,如:什么用户参与了哪些操作,操作的对象,操作数据的记录及操作成功与否等。以此可以检测异常或可疑用户的操作,以及未授权的访问。

除了保障数据库一级的安全性外,Oracle(大型网站数据库平台)公司还提供了安全的网络服务。通过Oracle(大型网站数据库平台)安全网络服务,在网络上传递的SQL语句、查询结果、存储过程调用、数据复制、用户口令等所有信息,都可以经RC4或DES加密传递,使数据在传送过程中,不被泄密。同时,Oracle(大型网站数据库平台)公司的安全网络服务还支持带有序列号的校验和算法(MD5),保证数据在传送过程中不被非法修改;数据包不被重发,漏发。Oracle(大型网站数据库平台)的安全网络服务是通过纯软件的方式实现,具有成本低、硬件无关、协议无关的特点。Oracle(大型网站数据库平台)公司是唯一一家提供安全网络服务的数据库公司。

Sybase对数据库的安全性控制是比较初级的。其主要特性有 :明确的登录识别、加密的口令和口令的截止日期、命名的系统管理员以及系统是否登录成功、用户在数据库中的活动等等。Sybase的安全控制定位于NCSC的C2级安全标准。

12、数据仓库的支持

对数据仓库的支持是Oracle(大型网站数据库平台)数据库的传统的应用领域,也有许多成功的范例。数据仓库应用一般体现为操作比较复杂,涉及到的数据量比较大,但并发工作的程度不太多,对速度的要求也不太强烈,这类应用除了要求数据库系统有较强的数据管理手段,如:完整性控制、安全性控制、 可靠性保障等之外,还特别要求数据库系统能支持大数据量,支持有效的语句优化,强有力的统计功能以及较强的批处理能力等,在分布式环境的应用中,还要求数据库能支持较强的穿透查询(透明查询)等。Oracle(大型网站数据库平台)对数据库对于数据完整性控制、安全性、可靠性等,均有较完善的技术。分布式透明查询,表和索引的分区也是Oracle(大型网站数据库平台)的长处,针对决策支持系统,Oracle(大型网站数据库平台)还有许多相适应的机制,保证决策支持系统的成功及效率。

Oracle(大型网站数据库平台)能支持大型及超大型数据库系统,在应用实例中,Oracle(大型网站数据库平台)支持的最大数据库为几十个TB。从技术的角度上着,Oracle(大型网站数据库平台)所支持的数据库最大容量的限制为512PB(1PB=1024TB),所以实际上只取决于硬盘空间。

当数据库需要扩充时,Oracle(大型网站数据库平台)只需要一条命令就可扩充数据库,而不需要引起整个数据库的重构。另外,Oracle(大型网站数据库平台)还提供了丰富的数据分区技术,使对大量历史数据的管理更加方便,处理更有效率。对于超大规模数 据量的支持,以及有效的数据分区手段,为决策支持应用系统奠定了坚实的基 础。

决策支持系统一般会涉及到许多不同要求的统计以及科学计算等,Oracle(大型网站数据库平台)提供的SQL语句,在满足了SQL评议的标准要求之外,还有丰富的函数及计算功能,如单值函数(数字型、字符型等等)、强有力的集合运算、日期函数 ,Cube和Rollup, Rank (Top-N ), Rate, Sample(取样)等等,这些函数的灵活运用,不仅能大大简化应用程序的编程,并且可以直接在Oracle(大型网站数据库平台)的内存缓冲区直接计算,减少了大量数据在数据库及应用程序之间的交换,加快运行的效率。

另外,Oracle(大型网站数据库平台)还有灵活的查询优化机制,确保查询操作的快速完成。对涉及到较大的数据量,可能需要较长时间来处理的查询语句,Oracle(大型网站数据库平台)能自动将其分解成几个部分,利用Oracle(大型网站数据库平台)核心的多线索多进程结构,进行多线索的并行处理。同时,对于大数据量的I/O操作,Oracle(大型网站数据库平台)也能充分利用并行的I/O处理,把较浪费时间的I/O,操作利用并行的方式降低系统等待的时间。Oracle(大型网站数据库平台)已申请专利的位图索引,星型并行查询技术尤其适用于数据仓库的查询。

Oracle(大型网站数据库平台)还具有支持极强的批处理能力,如数据库核心中的SQL*Loader,提高了数据库批量加截的速度,SQL*Plus也具有极强的处理能力,能以批处理方式进行数据访问,及数据更新。

Sybase支持大型及超大型数据库的能力很差,完整性约束依靠事后触发回退、复制服务器、多功能通用网关以及用户编程一起协调实现;分布式处理条件下的查询和修改均不是以自动透明方式进行,复制无法利用两阶段提交技术,只能采用异步方式;查询 优化单一,语句的分解优化过重依赖于用户来提高性能;并行处理能力以及批处理能力都很弱。从这些数据仓库应用的关键技术来说,可以说Sybase ASE的数据仓库支持能力是非常差的。

所以Sybase购买了一个产品来弥补这方面的缺陷,并改名为Sybase IQ. 但这个产品与Sybase ASE并不兼容,不能象访问ASE一样通过T-SQL访问。它通过建立基于位的索引加快查询。但它只能用于查询,而且当数据量超过GB级以后性能会有明显的下降。并发访问的用户很有限,因为每个连接都会消耗大量内存。所以Sybase IQ的可伸缩性较差,不适用于大规模的数据仓库。

上一页  1 2 3 4 

Tags:Sybase Oracle 十二

编辑录入:coldstar [复制链接] [打 印]
赞助商链接