WEB开发网
开发学院数据库Oracle 调整Oracle应用系统性能的原则和方法 阅读

调整Oracle应用系统性能的原则和方法

 2007-05-06 12:07:36 来源:WEB开发网   
核心提示: 2.1、使用Oracle数据库的完整约束性当为应用建表时,应当为一些有特殊要求的数据加上适当的完整性约束,调整Oracle应用系统性能的原则和方法(6),这样就能实现由数据库本身而不是应用程序来约束数据符合一定的条件,数据库服务器端的完整约束的执行操作是在比SQL语句级别更低的系统机制上优

2.1、使用Oracle数据库的完整约束性

当为应用建表时,应当为一些有特殊要求的数据加上适当的完整性约束,这样就能实现由数据库本身而不是应用程序来约束数据符合一定的条件。数据库服务器端的完整约束的执行操作是在比SQL语句级别更低的系统机制上优化,它与客户端无关,只在服务器中运行,不需在Client 端和Server端之间传递SQL语句,有效地减轻网络I/O负担。

2.2、使用数据库触发器

完整约束性只能实现一些较简单的数据约束条件,对一些较复杂的事物处理规则就无能为力,这时最好不要在应用程序中实施复杂的程序控制,而是应当采用数据库触发器来实施复杂的事物规则。数据库触发器能实现由数据库本身,而不是应用程序,来约束数据符合复杂的事物处理规则,并且容易创建,便于管理,避免大量的网络I/O。

例如:将当前表A中成为历史的记录从A表中转储到历史表B中,表示为Lsbs。

在应用程序中实现:

Beign
 Update A set lsbs='T'; 
 Insert into B
 Select * from A where lsbs='T'; 
 Delete A where lsbs='T'; 
End;

用数据库触发器实现:

Create trigger delete1
After update of lsbs on A
For each row
Insert into B
select * from A where :new.lsbs='T';
Delete A where :new.lsbs='T';
End delete1;

在应用程序中实现时,所有的SQL命令请求传送的数据都要通过网络在Client端和Server端进行交换,而不像数据库触发器一样,SQL本身在Server端,不需要通过网络传输数据。当进行操作的数据量相当大时,并且多个用户同时操作时,通过在应用程序中实现复杂的控制,必将增大网络I/O的负荷,使整个系统的性能降低,而用数据库触发器能完全避免这种情况发生。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:调整 Oracle 应用系统

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