基于Oracle的移动公司渠道管理系统数据库优化

摘 要:移动公司的渠道管理系统是为了满足复杂的酬金结算、考核表上报、渠道信息管理等而建设的.随着业务量增大,数据库在运行一段时间后会出现一定的性能问题,因此,对数据库系统的性能调整变得尤为重要.文章通过对移动渠道管理系统所使用的Oracle数据库进行优化实践的分析,讨论了优化的几种有效方法.

关 键 词 :Oracle数据库;索引;硬解析

引言

Oracle数据库以支持大数据量、多用户、高并发事务处理等优势,越来越多的被应用在大型企业,如电信、银行、电力等部门,随着高访问量所带来的压力逐渐增大,系统会出现吞吐量低,响应时间长等性能问题,为了解决这个问题有必要对数据库进行优化,数据库的优化可从两方面进行分析研究,制定出优化策略.

1.影响Oracle数据库系统性能的因素

Oracle数据库性能问题受到多方面因素影响,包括硬件环境,网络I/O,应用程序规范,数据库参数配置,行迁移等

(1)数据库服务器硬件环境:cpu,内存,网络传输状况等方面均会影响oracle的性能.

(2)数据库参数配置:Oracle数据库为用户提供了大量的参数配置,根据具体的应用环境,调整参数配置,可以使数据库达到更优,相反,错误的参数配置可能令数据库性能低下.

(3)网络I/O:计算机的输入输出(I/O)是很耗时的系统行为,I/O优化就是通过一定的措施减少I/O消耗时间.

(4)应用程序的实现:对于程序员而言,不合理的sql语句书写直接影响到Oracle数据库的性能,且后期更改难度大.如书写sql语句不使用绑定变量,会使数据库出现大量的硬解析,从而影响数据库性能.

(5)行迁移:表中存在的数据,在update操作过程中,行可能会变长,此时,行会使用数据块内的剩余空间,当数据块内没有剩余空间的时候,数据会选择新的数据块进行存放,行头会保留在原数据块中,指针指向新的数据块内的行,造成读取数据的时候产生两次I/O,下降了数据库的性能.

2.数据库优化

2.1 内存区调整

(1)在Oracle 10g以及以上版本,提供了内存的自动管理,Oracle会根据应用的特点和服务器本身环境自动调整内存,SGA_TARGET参数就决定了是否使用SGA自动管理,该参数不为0时为自动管理,该参数为动态管理.

(2)将数据常驻内存:在生产数据库中,有些经常被访问的小表,可以将其常驻在内存中,以避免对该表访问时频繁产生磁盘I/O,以空间换时间,使响应速度增大.具体方法:

SQL> alter system set db_keep_cache_size 等于 200M;//开辟出200M的常驻区域;

SQL> alter table t1 storage (buffer_pool keep);//把表t1常驻在内存中.

2.2 磁盘I/O调整

(1)分开存储数据文件和索引文件.Oracle数据库在提取数据的时候会去索引和数据文件里读数据,将这两个文件分开存放在不同的硬盘上可以增加读取速度以提高性能.

(2)日志文件的存放位置.日志文件写操作比较频繁,可以选择存储在固态硬盘等高速存储上.

(3)使用分区来避免磁盘争用.当一个表很大的时候,如:1GB(具体和环境有关),可以考虑分区,把一个表的分区存放在不同的磁盘上,吞吐量可以大大增加.分区的类型有多种,如范围分区、哈希分区、组合分区、列表分区.

2.3 回滚段设置

回滚段保存着数据更新的前映像,当事物回滚时会用到此前映像,原则上讲,建议每个回滚段能同时进行4个事物处理,但也应该根据系统需求来设定回滚段的数目.

2.4 碎片整理

SQL> ALTER TABLE T1 ENABLE ROW MOVEMENT;//允许表T1 可以在线回收碎片

SQL> ALTER TABLE T1 SHRINK SPACE;//进行空间回收

2.5 处理行迁移

利用移动表的存放位置来消除行迁移,操作语句为:

SQL> ALTER TABLE T1 MOVE TABLESPACE tablespace_name;

此操作会使T1表在数据库中重新码放,但是索引会失效,注意要重建索引.

2.6 绑定变量

移动渠道管理系统是OLTP(On-Line Transaction Processing联机事务处理)系统,绑定变量是OLTP很受关注的一个技术点,OLTP数据库系统中大量的sql语句并发执行,速度飞快,内存效率极高,绑定变量后会减少大量的sql语句解析消耗,从而减少数据库压力.

2.7 索引的建立与维护

索引是将无序的数据有序化,这样可以在查询数据的时候减少数据块的读取,实现快速定位数据.数据库自动维护索引,但随着大量的增删改操作,索引会产生许多空洞,可以采用合并或重建索引的方法进行优化,以提高访问速度.操作命令为:

SQL> ALTER index index1 coalesce;//合并索引的空洞

SQL> ALTER index index1 rebuild;//索引的重建

合并并不释放索引段所拥有的空间,不处理正在变化的行,重建只能在没有事物的情况下进行,如果有未提交的事物,则会报错.

3.Oracle常用优化工具

(1)Oracle数据库数据字典和动态性能视图,Oracle动态性能视图能反映出Oracle动态运行情况,对于数据库的性能调整很有帮助. (2)Oracle Statspack是DBA用来诊断数据库的工具,在Oracle8i已经被引入,并经过多次调整增加的许多强有力功能,可以帮助DBA迅速定位数据库瓶颈所在.此工具脚本存放在$ORACLE_HOME/RDBMS/ADMIN目录下,spcreate.sql为建立用户和表脚本,以后采集的数据库信息会放在这个用户和表内.spreport.sql为收集快照脚本.

(3)Oracle AWR(automatic workload repository自动工作负载信息库),Oracle建议用户用这个取代statspack,AWR实质是Oracle的一个内置工具,它采集与性能相关的统计数据,并从那些统计数据中导出性能量度,以跟踪潜在问题.它产生两种类型的输出,文本格式和HTML格式,提供了非常友好的用户报表.此工具脚本存放在$ORACLE_HOME/RDBMS/ADMIN目录下,名字为awrrpt.sql.在sqlplus下可以直接执行,如:SQL>@$ORACLE_HOME/RDBMS/ADMIN/awrrpt.sql


(4)Oracle ASH(Active Session History),此工具从Oracle10gR2开始引入,和AWR相比,ASH侧重于当前活动回话的信息分析,Oracle每秒钟会对数据库中活动的回话信息进行采样,这些信息被存放在一个动态循环使用的内存区域中(位于SGA区),此区域是循环使用的,数据库活动越频繁,老的数据越会被快速覆盖掉.软件包也存放在$ORACLE_HOME/RDBMS/ADMIN目录下,名字为ashrpt.sql.

4.结束语

文章针对移动渠道管理系统数据库性能调整的实践经验,总结了导致数据库性能下降的原因和优化方法,数据库性能问题在最近几年越来越受到DBA的关注,只有在实践中反复实验调整,才能使数据库系统获得最优性能.

类似论文

我国企业***公司财务管理制度体系优化

一、引言 海外公司财务管理是根据企业海外生产经营财务活动的特点,对其资金筹集、运用、收入分配所进行的预测、决策、计划。
更新日期:2024-5-2 浏览量:13765 点赞量:4869

电力公司应急培训管理系统的开发

摘 要:介绍了国网湖北省电力公司应急培训管理系统的结构、功能和使用特点 根据电力公司应急培训需求和课程设计的特点,。
更新日期:2024-11-7 浏览量:21073 点赞量:6149

交通文书管理系统数据库设计

【摘 要】本文针对交通文书管理系统的系统设计,给出了数据库的设计结构,并对数据库的设计进行了分析 【关 键 词】交。
更新日期:2024-4-16 浏览量:57002 点赞量:13202

交通文书管理系统数据库设计

【摘 要 】本文针对交通文书管理系统的系统设计,给出了数据库的设计结构,并对数据库的设计进行了分析 【关。
更新日期:2024-5-1 浏览量:12291 点赞量:4165

移动公司营销渠道管理策略

[摘 要]营销渠道是企业与客户之间沟通的桥梁,是联系客户的重要纽带,随着电信业市场竞争的日益激烈,如何实现营。
更新日期:2024-1-2 浏览量:7024 点赞量:2957

A公司财务管理信息系统的与设计

摘 要:信息技术的飞速发展,企业信息化对于企业管理发挥着不可忽视的作用 本文对A公司财务管理现状进行了分析,运用内部。
更新日期:2024-10-16 浏览量:131329 点赞量:28465