项目一:某移动公司 BOSS系统数据库优化

 

项目简介(功能与用途):

某移动公司 BOSS系统数据库的优化。BOSS系统是移动公司的核心业务系统,包括营业和帐务两部分。BOSS系统的数据库采用Oracle RAC架构,有两个节点。数据量巨大,并发访问量大。数据量达到3-5TB,并发访问数在1500个左右。数据库优化以前,数据库经常在业务高峰期间出现INSTANCE崩溃,引起业务在全省范围的大面积中断。优化后,数据库的性能有大幅度的提高,业务高峰期间的INSTANCE崩溃现象在优化以后不在出现。

 

项目难点与解决方案:

1.  项目的难点在于找到引起数据库问题的根本原因,并精确定位。通常情况下,应用开发厂商不承认数据库的问题是由于应用开发的问题造成的。需要找到应用开发问题对数据库影响的具体原因,找到引起数据库问题的相关应用代码,并协助应用开发厂商修改代码。本项目数据库问题的根本原因是应用开发厂商有些SQL语句没有绑定变量,引起的数据库内存问题。在优化过程中,首先找到相应的SQL语句,并提交数据库崩溃与这些SQL语句之间关系的报告给相关负责人。然后,提交应用修改建议书给应用开发厂商,要精确到修改哪些应用的哪些SQL语句,并给出修改的优先级,以及明确的修改方案。

2.  优化操作系统平台,从操作系统级别进行数据库I/O,内存,及其通信的优化。不同的UNIX有各自不同的特性,数据库系统要充分利用操作系统的特性来优化数据库系统。本项目使用HP UNIX,修改异步I/O的设置的相关参数后,I/O竞争明显降低。

3.避免RAC架构的缺点。使用业务分割来避免Cache fusion引起的性能问题。

 

项目成功与失败的经验归纳:

1.数据库管理人员与开发人员之间的沟通是项目成败的关键。数据库管理人员要让开发人员知道什么样的应用是高效的数据库应用,以及要让开发人员知道在开发过程中需要注意哪些问题。

 

 

你在项目中岗位与贡献:

  

责任描述:作为项目主要人员完成

1、  数据库调优、SQL语句调优及系统平台优化

2、  数据库规划设计及备份策略

3、  对应用开发人员的技术支持

 

 

 


 


项目二:某专业通信厂商移动网管系统


 

项目简介(功能与用途):

Integrated Network Management System, 移动网管系统。移动网管系统主要是对移动网络进行管理。具体来讲,就是通过对网络运行状况的监测,保证网络能够有效、平稳、安全地运行。并通过对网络设备数据的采集和分析,给网络管理人员提供充足、完整的运行数据,供管理人员根据网络运行状况制定合适的运行策略,使网络运行在最高效的状态下。目前有十多个省市的移动运营商使用该系统。

 

项目难点与解决方案:

移动网管系统在数据库方面的难点主要有两个:

1.  大数据量的数据装载及其计算和维护。移动网管系统的数据采集时间间隔是30分钟,每30分钟有几十万至上百万条数据被装载到数据库,并使用存储过程进行性能数据计算和告警分析计算。该项目充分使用oracle的特性来实现应用的需求。使用Sql*loader装载数据,使用分区表来提高数据计算的性能和简化大数据量表的维护。

 

2.  数据的实时性。移动网管系统要对网络进行监控,所以数据的实时性非常重要。在数据库端如何提高数据装载、计算的性能是该项目的难点。数据装载时,要通过优化操作系统及其数据库的I/O操作来提高装载性能,Sql*Loader工具参数优化也可以大幅度提高装载性能。数据表可以使用NOLOGGING设置来减少数据库日志的产生。数据计算时,要充分利用分区表的特性来降低数据的访问,并且可以大量使用临时表来存储大量数据计算的中间值。SQL语句的优化是数据计算的重点,要在性能测试阶段跟踪所有的SQL语句,并逐一进行优化。

 

3.  多点实施后数据库的维护。该项目在多个省市实施运行,每个点没有专门的数据库维护人员,实施后数据库的维护也是项目的难点。该项目中,数据库的大部分的日常维护工作通过程序来自动完成,例如,表空间和数据库进程的自动监控和报警,根据数据字典自动维护分区表, 创建,删除分区表的分区等等。

 

项目成功与失败的经验归纳:

项目成功经验:

1.  充分利用数据库的特性来实现应用的功能。

2.  在应用架构阶段就定义性能目标,让每一个开发人员在编码之前知道这个目标,并且明确要实现这个目标需要在编码过程中需要注意的问题。测试阶段要对性能目标进行测试。

 

你在项目中岗位与贡献:

责任描述:独立完成

1、数据库架构,设计及调优

2、数据库端开发编码

3、对应用开发人员的技术支持

 

                                         



 


项目三:Oracle Service

项目简介(功能与用途):

 

XX移动、XX电信、XX邮政及XX联通XX系统、XX保险公司核心业务系统等等多个大型生产数据库ORACLE服务。

数据库 Oracle9i、8i、7….RAC/OPS架构,操作系统 HP Unix、Compaq Tru64 Unix、IBM AIX…数据量 50G---5T

 

项目难点与解决方案:

在数据库服务中,经常会遇到各种各样的难点及其问题,比较常见的主要有以下几点

1.  硬件资源不足,CPU使用90-100%。解决办法是找出最耗费资源的进程,看看它在做什么,从业务逻辑及其SQL语句方面进行优化。去掉不必要的业务逻辑,优化SQL语句。

2.  数据库响应慢。解决办法是通过分析等待事件找出数据库的资源瓶颈,然后根据不同的情况进行解决。

3.  容灾数据库无法正常切换,备份出来的数据无法恢复数据库。解决办法是制定备份方案时要测试备份数据的可恢复性,模拟各种灾难场景,进行恢复测试。

 

项目成功与失败的经验归纳:

1.  在数据库维护工作中,制定规范的Process是保证数据库正常运行的最重要一步。

2.  一个好的Health Check Item,可以预防大部分的数据库问题。在问题发生之前,就把它解决。“上工不治已病,治未病”。

 

 

你在项目中岗位与贡献:

责任描述:独立完成

1、数据库方案设计及备份策略

2、数据库规划、安装、配置

3、数据库调优及SQL调优

4、数据移植

5、对应用开发人员的技术支持

6、故障排除、疑难解答

7、客户培训

8、长期技术支持

 

 




 

 

 

说明:斜体字均为填写范例和说明,文字题写不受篇幅限制,请尽量详尽。