某大中型企业采用Oracle数据库建立一个经济信息统计方面的大型数据库应用系统。尽管配置了比较良好的硬件和网络环境,但该数据库应用系统实施后的整体性能表现较差。特别是随着业务量与信息量的迅速扩大,数据库系统的存取速度显著减慢,存储效率也明显下降。
该企业通过反复实践与摸索,并邀请数据库专家一起会诊,认为可以从以下4个方面进一步优化数据库应用系统。
(1)由于数据库应用中最主要的查询与修改数据操作大多需通过I/O来完成,因此需要通过调整服务器配置(即对硬件设备进行升级)、操作系统配置与数据库管理系统的有关参数,优化系统的I/O性能,尤其是改进磁盘I/O的效率与性能。
(2)优化“索引”的建立与使用机制,尽可能提高数据查询的速度或效率。
(3)合理使用聚类(Culster),改进查询响应时间和系统的综合性能。其中,“聚类”是指把单独组织的,但在逻辑上经常需要连接的,较为稳定的几个基本表聚集在一起(在物理上实现邻近存放),可以显著减少数据的搜索时间,从而提高性能。
(4)对应用系统中使用的SQL语句进行调优,针对每条SQL语句都建立对应的索引等。
许多开发技术人员由于缺乏经验,通常在建立实体(如基本表、索引或表空间等)时,都习惯于使用DBMS提供的“缺省参数”,结果常常会引起数据库应用系统性能较差的隐患。结合你的系统架构设计经验,请用200字以内的文字简要说明使用DBMS缺省参数的缺点。
参考答案:①若使用默认参数,在进行查询时会产生大量不必要的记录项。在进行数据传输和处理时,由于数据过多可能会导致I/O阻塞。
②在合理分布各类存储空间时,由于默认参数导致记录分配不均匀,将降低存储空间的利用度。
解析:目前,大多数的大、中型信息系统都使用数据库作为数据存储,而信息系统的性能优化是一个综合性的问题,需要综合考虑硬件设备、操作系统、数据库和应用系统。基于数据库的业务系统,一般在进行调优时,需要具体问题具体分析。全面的分析方案应该包括以下3方面的内容。
(1)对系统中的业务数据进行搜集,判断当前硬件设备是否足够。判断数据库管理系统和操作系统的相应参数设置是否合理。例如数据库中SGA中的参数、操作系统中共享内存等参数、数据库中数据与索引物理存储的分离等。
(2)对应用系统进行分析,对业务系统的类型进行确认,如联机事务处理和数据仓库对数据库的要求差异很大。OLTP和OLAP的类型也有很大的差异。
(3)对应用系统中的SOL语句和索引等进行分析。
题干中数据库专家已指出,系统I/O经常会成为制约数据库应用系统性能的瓶颈。减少I/O资源的争用,以及合理分布各类存储空间,通常能有效地提高全系统的运行效率。例如,可以使应用系统的存储空间与系统表空间分离;在不同的盘驱动器上设立数据表空间与索引表空间:自动整理与减少空间碎片等。
若使用DBMS的默认参数,在进行查询时会产生大量不必要的记录项。在进行数据传输和处理时,可能由于小数据文件过多而导致I/O阻塞。另外在合理分布各类存储空间时,由于默认参数导致记录分配不均匀,降低存储空间的利用率。