企业级应用系统中的数据库访问优化策略探析
2017-04-08吴挺
吴挺
摘要:企业级数据库应用系统不仅数据量较大,同时对并行访问的需求也比较高,因此访问数据库过程中不可避免的会面临一些问题,因此如何快速处理数据成为人们关注的问题。文章主要介绍了几种JDBC访问类型,并在其分析与对比基础上提出了使用过程中的选择协议,利用JDBC建立数据库连接的同时提出了連接池技术,就如何提升企业级应用系统数据库访问率提出了一些见解,供大家参考。
关键词:企业级应用系统;数据库访问;优化策略
中图分类号:TP311.13 文献标识码:A 文章编号:1007-9416(2017)02-0234-01
1 数据库设计概述
数据库设计具体包括逻辑与物理设计两方面内容,其中逻辑设计主要是指利用数据库组件进行数据建模,不需要考虑在哪里存储数据,物理设计是指将逻辑映射到媒体上,利用软硬件加强对数据库的物理访问和维护。
1.1 逻辑数据库设计
逻辑设计的主要目的在于产生一个数据模型与数据库模式,该模式一定要满足数据库在一致性、完整性等方面的用户需求,将冗余数据去除,同时提升数据的吞吐量,充分保证数据的完整性,将数据元素清楚的表达出来。通常情况下数据库逻辑设计应遵循规范化前三级标准,第一范式需要除去任何多值属性,第二范式中每个非关键字字段都要依赖于关键字,而第三范式则是在第二范式的基础上对关键字段函数进行传递。
1.2 物理数据库设计
大部分情况下系统使用的数据库管理技术一旦被选定,那么就确定了很多物理数据库设计的问题。在物理设计中为了避免降低系统性能,开发人员必须遵循以下几方面策略:①为每个属性选择合理的数据类型,以达到存储空间最小、性能最佳;②将数据库分区,将大表拆成不同的小表,在提升查询速度的同时使任务更快得到执行和维护;③利用文件组放置数据,将相似的结构放在同一文件组中,在文件组创建索引,利用控制器和物理驱动器提升性能;④优化数据库日志,具体来说可以从下面几方面进行考虑:第一,在单独磁盘上创建日志,第二,将文件初始设置值设计为最小,需要更多日志空间时可以进行自动扩展,第三,利用手工方式收缩日志文件。
2 数据库访问的优化策略
在实际应用过程中可以总结出很多改进数据库的方法,促进数据库执行效率的提升,下面以自行开发的企业管理系统为例,结合变成经验进行论述和分析。
2.1 选择合适的驱动程序
企业级应用系统驱动程序层中共有四种类型的驱动类型,在访问数据库方面不同类型驱动程序各有优劣势:①JDBC——ODBC桥驱动程序,ODBC规范都是活的DBMS支持的,它的配置非常简单,因此可以将其作为具体开发应用中的一个选择,但是它也有一定的不足,比如执行效率比较低,对于存取应用大数据量是不适合的,同时还必须在客户端上安装ODBC驱动,和远程数据库访问不适合;②本地API驱动程序,和类型一相比这种类型充分借鉴并利用了客户端本地代码率,数据访问执行也得到了加速,但是这种类型有效摒除了ODBC标准,为厂商自己指定的性能扩展提供支持,和类型三相比,这种类型利用多层结构,跨平台应用非常有利,下层可以改成本地代码,可以有效加速执行速度,和类型四相比,这种类型可以和数据库实现紧密结合,大大提升了数据库性能;③网络协议驱动协议,提供了对多种数据库的支持,灵活性非常强,还提供了很多企业级特征,例如支持分布式事物处理、集中管理等;④本地协议驱动程序,可以为数据库提供应用类型驱动程序接口,其优势在于可以和数据库紧密结合,是企业级应用系统的首选。
2.2 使用连接池
在数据库访问模式中,需要利用JDBC建立数据库连接,因此对连接的管理直接决定了应用性能,现阶段对连接最有效的管理策略就是连接池技术。如果用户需要对数据库进行操作,而连接池中又没有可用的连接对象,那么用户必须等待,直到有连接对象。
2.3 使用预处理
当数据库发送一个语句,数据库中的解释器就会将其生成底层的内部命令,然后对该命令进行执行,通过这样的过程将相关数据操作完成,如果不停的将语句发给数据库,数据库解释器的负担必然会加重,进而对其执行速度造成不利影响,这样就需要应用程序针对数据库,实现将接收的语句解释成数据库底层的命令,再对该命令进行执行,这样一来不仅可以使数据库的负担得到减轻,同时数据库的访问速度也会得到提升。
3 结语
综上所述,针对企业级应用系统来说,恰当的选择驱动程序,合理的使用连接池和预处理等方式非常重要,可以有效优化数据访问,提高数据库的访问效率。纵观当前的企业级应用系统数据库,各方面还存在一定问题,还需要在未来的工作中不断完善,同时这也是后续工作的重点所在。
参考文献
[1]张德胜,冯登国,陈驰.一种面向空间数据库矢量数据的授权模型与实现方法[J].计算机研究与发展,2011,08:1524-1533.
[2]仰燕兰,叶桦,费树岷.车辆定位监控系统数据库的设计与优化[J].东南大学学报(自然科学版),2010,S1:43-47.
[3]刘树军,毕利.J2EE应用系统中EJB分布式组件性能优化的研究[J].宁夏工程技术,2010,04:322-325.
[4]张孝斌,王超.基于PL/SQL的批量处理应用的性能优化策略[J].计算机系统应用,2016,05:1-7.