SCI论文(www.lunwensci.com):
摘要:Oracle是目前最常见的关系型数据库,支持多种业务形态的融合,执行多种操作。随着数据库的用户并发量的增加,系统在响应时,往往面临响应时间长等问题,而医院信息系统作为主要活动的平台,在医院业务发展中起着重要的作用。同时,医院数据库经过几年的读写,也面临着严重的性能和稳定性问题。因此,优化数据库性能并避免性能使用问题,是确保医院信息系统良好运作的基础。
关键词:基于Oracle;医院信息系统;性能优化;研究与实现
Research and Implementation of Performance Optimization of Hospital Information System Based on Oracle
WANG Zhiguo,ZHOU Xiaoyu
(The 963rd Hospital of the Joint Logistics Support Force of the Chinese People's Liberation Army,Jiamusi Heilongjiang 154002)
【Abstract】:Oracle is the most common relational database at present.It supports the integration of multiple business forms and performs multiple operations.With the increase of the number of concurrent users in the database,the system often faces problems such as long response time when responding.As the main activity platform,hospital information system plays an important role in the development of hospital business.At the same time,after several years of reading and writing,the hospital database is also facing serious performance and stability problems.Therefore,optimizing database performance and avoiding performance problems are the basis to ensure the good operation of hospital information system.
【Key words】:Oracle based;hospital information system;performance optimization;research and implementation
1 Oracle信息系统性能优化概述部分
Oracle数据库是广泛应用于各个领域的关系型数据库系统,其性能对业务效率起着重要的作用。随着数据库的增大、结构的复杂化,以及业务运作并发连接用户数的增加,就会出现一定的延迟响应问题,导致性能的降低。因此,需要优化和配置数据库,以控制性能并约束系统范围的规范使用。数据库优化需要分配资源,深入了解组件架构,在了解架构的基础上优化数据库性能。系统结构由样本和数据库组成,主要包括物理、逻辑和内存结构。
1.1物理结构
创建数据库操作的物理文件,是架构中最重要的部分。物理结构中的文件,根据其功能分为数据、控制、日志、参数文件。数据文件是存储数据的文件,通过Oracle数据块将数据缓冲区中的内容持久化该类文件中。控制文件是在数据库创建的二进制文件,记录数据库相关的物理信息,如果控制文件出现故障或者被误删后,数据库将会无法正常运行。日志文件分为联机日志文件和归档日志文件,联机日志文件是为了确保数据的一致性,在数据库操作者发出命令时,会将有关更改信息写入日志,一个数据库实例必须至少有两组日志文件组,一组写日志,一组重放日志。归档日志文件是指,当联机日志重写前,通过归档将之前的日志写入磁盘。如果数据库处于归档模式,会自动再次使用归档完成日志归档,并复制到指定位置成为归档文件。归档日志的作用是,当数据库运行出现错误时,可以使用归档日志恢复数据库,从而减少数据丢失并提高数据可用性。参数文件决定了数据库结构,包括控制文件的名称和路径,以及一些默认值。
1.2逻辑结构
逻辑结构包括表空间、数据段、区域、数据块。表空间是数据库中最大的单元,逻辑结构组合在表空间。表空间包含物理数据文件,是逻辑和物理结构的相合。数据库由多个表空间组成,在表空间中的对象称为段,如索引段、时间段和回滚段等。区域是一个预留的空间,而段是通过增加区域来获得,面积是数据块的整数倍。块是数据库逻辑结构中最基本的存储单位,在建立数据库时被指定。
1.3内存结构
内存结构分为系统域和进程域。当数据库启动时,系统会自动分配内存。将内存分配为共享池、数据缓冲区和日志缓冲区。数据缓冲区用于存储数据,共享池用于对SQL相关语句进行解析和编译,最后执行。日志缓冲区用于将事务日志进行缓冲,并最终被写入到日志文件中。
2医院信息系统特点
医院信息系统在业务中起着非常重要的作用,在诊疗中,数据依赖业务系统进行对于数据库层的增加、删除、修改、查询。为此,信息系统必须不间断的提供服务,当系统陷入异常或崩溃时,诊疗就会出现停滞。同时,在实际业务中,大量用户需要同时访问数据库,比如,医务处等相关部门需要了解医院床位占用数和门诊量,医护人员需要发药、下诊断、开处方等。随着医院规模扩大和医疗服务体系的增加,并发访问的用户数量就会大大增加,导致数据库性能使用负载极大,资源占用率极高,系统性能就会不断降低。另一方面,随着医院信息查询的复杂性扩大,决策者需要对医疗以及诊断病历进行深入的分析,以统计相关的收入。对质控科室来说,对诊断以及病历的分析,有助于改善病历质量,改进诊疗质量,提升患者的满意度。所以,我们不难看出,医院信息系统是一个混合的系统。随着程序的扩展,用户数不断增长,数据规模扩大,系统性能也会呈现下降趋势,难以满足用户需求。因此,性能优化对于医院信息系统运作具有重要的意义[1]。
3数据库建模及设计规范
3.1规范化设计优化
标准化数据库设计是使用信息系统定义数据与数据库的元素关系。根据关系理论概念,在设计中额外的数据加载独立于主键表。根据实际需要,信息系统数据库必须满足具体的业务使用要求。医院信息系统管理数据和信息量大,数据应用范围广,因此,医院信息系统的数据库必须根据业务的发展,不断部署扩展,并收集数据。医院信息系统是分布式程序系统,由于信息系统的相关程序,如电子病历等,是面向用户的操作,所以在设计之初,就必须做好关于权限控制等,同时在程序设计时,就必须满足程序运行的要求,如电子病历系统,就必须满足系统信息、支持病历的模板和系统配置等操作需求[2]。因此,在数据库设计之初,就必须对其进行规范化的设计,重视权限控制、数据结构等问题。
3.2优化器选择
优化器决定了执行查询的策略,决定了查询是否使用索引以及合并表时的聚合操作,优化器经过精心科学的设计,以确保良好的运行性能。在Oracle数据库中,优化器分为三种:基于规则的优化器、基于成本的优化器和选择性优化器,其中,Oracle默认的优化器为选择性优化器。基于规则的优化器是,当在执行SQL语句时,根据在Oracle设计之初的一系列规则来执行SQL语句。其缺陷是,无论将要查询的数据量多大、语句多复杂,其语句的执行顺序总是一致的,在通过优化器转换SQL的过程中,已经将执行该SQL的执行路径给设定好,从而导致即使通过SQL书写来改善该情况,如果使用基于规则的优化器,还是会按照设定好的规则来执行。基于成本的优化器是指,当执行SQL时,会在数据字典中缓存当前一部分的系统信息,比如当前系统中CPU的性能,网络资源的消耗情况,以及内存的开销等,此时优化器就会根据这些指标参数,进行相应的执行计划。Oracle在默认调用选择器时选择的选择性优化器,其优点是会根据语句的开销来选择相应的优化器,当相应的表中的列存在索引时,就会选择基于规则的优化器,反之则会选择基于成本的优化器。在医院信息系统中进行查询时,建议选择适合场景的优化器,从而加快对于数据的查询效率,降低服务器的性能开销。
3.3索引技术的优化
索引是Oracle数据库中非常重要的一项技术,索引类似于目录,在数据库中使用索引,可以大大降低数据库查询时需要消耗的资源[3]。比如,当表中没有索引而展开搜索时,会自动进行全表查询,这样就会大大的降低效率,而如果表中存在相应数据的索引的话,由于索引在建立之初,就会根据该列的排序结果,自动建立相应的索引条目,存储到相应的索引段中。由此我们可以看出,索引技术优化是优化执行表达式效率的最佳方式,是减轻负载的最佳方法之一。索引根据分类,可以分为以单列索引、复合索引、函数索引、位图索引、聚簇索引等。单列索引只有一列,顺序是有序的,而且列不应与其顺序匹配,也不彼此相邻,其底层是B+树。复合索引也称为组合索引,复合索引在使用时必须注意,如果第一个条件不是复合索引的第一列,那么该索引将不会被使用。如果函数或表达式包含一行或多行,可以创建函数索引,函数索引基于函数的索引计算函数或表达式,并将结果存储在结构中,允许索引跨越多表空间,提高可管理性。分区索引于拆分表中,为每个表分创建索引分区,提高可管理性,根据结构不同提供了多种目录,最常见的是树目录,树目录采用倒置树来加快访问。顶部是包含指向索引,下一层为分支块,表示索引下一层块。最底层是表块,索引值和对应的端节点也有双链表,当大部分表块被填充时,分成两部分,块放置在原始,另一个在新表块中,重复这个过程,服务器添加新的分支块,所以索引越深,性能越低。位图索引适用于不频繁进行数据存取的列,当采用位图索引时,键值对中的一个键会对应成百上千个列,如果重新设定该索引的话,对于数据库性能的影响是非常大的,所以位图索引只适用于不进行频繁更改的数据列。聚簇索引是一种特殊的索引,将一些密切相关的表且经常连接进同一磁盘区块的表进行链接,此时对于这些表进行查询时,会大大的加快其存取的效率。在医院信息系统中,必须根据相应用户下的表,建立索引,从而加快数据的查询效率,降低服务器开销,优化性能。
3.4硬件优化
硬件是系统正常运行的基础,如果硬件过时,Oracle数据库运行上限就会降低。很多数据工程师只关注于对于软件和内存等方面的研究,而忽略了硬件问题。硬件优化也有很多措施,比如对于服务器的接口落灰问题,可以清洁设备内部中的部分线性接口,防止因硬件接触不良而导致对于数据传输的影响;对于服务器的散热问题,可以尝试更换新的冷却风扇并润滑,以确保设备在运行中不会出现高温。对于服务器硬盘响应过慢的问题,可以尝试修复硬盘中存在的坏道,并在必要情况下,考虑更换硬盘。关于硬件维护的问题,虽然较为简单,但却是不容忽视的环节。而且,由于医院信息系统性能数据量大,同时为众多用户提供服务,对服务器性能使用要求很高。因此,主服务器的性能必须够高,以确保数据的安全性和稳定性。医院数据库记录患者信息和其他管理信息。如果发生异常,导致数据丢失,造成的负面影响将是巨大的。因此,为了医院信息系统的正常使用,建议必须至少配置两台相同性能的服务器,及时进行数据备份操作。当服务器出现问题时,可以使用副服务器接管主服务器,以保证了整个医院信息系统的正常运行。
4结语
本文讨论了医院信息系统中的数据存储,分析了基于Oracle数据库中对于医院信息系统的性能优化,改善医院信息系统反应效率低下的问题。通过数据优化来提高系统的整体性能,提升数据库的响应速度,在未来的应用中具有广阔的发展前景。
参考文献
[1]陈洁.基于Oracle的医院信息系统性能优化研究与设计[J].自动化与仪器仪表,2018(12):105-107.
[2]谢梅源,何耀平.混合构架下医院信息系统的ORACLE性能优化[J].中国医疗器械信息,2013,19(1):8-11+28.
[3]胡丽英.医院信息系统数据库sqlserver性能优化措施[J].科技传播,2012(2):153+139.
关注SCI论文创作发表,寻求SCI论文修改润色、SCI论文代发表等服务支撑,请锁定SCI论文网!
文章出自SCI论文网转载请注明出处:https://www.lunwensci.com/jisuanjilunwen/38857.html