大数据时代档案信息资源共享平台性能优化的研究.docx
《大数据时代档案信息资源共享平台性能优化的研究.docx》由会员分享,可在线阅读,更多相关《大数据时代档案信息资源共享平台性能优化的研究.docx(8页珍藏版)》请在冰豆网上搜索。
大数据时代档案信息资源共享平台性能优化的研究
大数据时代档案信息资源共享平台性能优化的研究
摘要:
互联网与档案信息资源共享平台进行深度融合,需要在服务器、Web客户端、移动客户端等不同平台之间进行数据处理。
随着档案信息资源共享平台使用用户数量的增长,系统的性能要求也需要相应的提升,不仅要使平台能够适应现有的网络环境,而且还要使数据处理响应有效控制,平台的并发服务处理能力得到增强。
为此,从档案信息资源共享平台功能实现中的数据网络传输层面、数据库层面、平台服务架构层面等三个方面着手对共享平台的性能进行优化,优化后的平台可满足大数据时代系统的性能需求,提升系统使用的流畅程度,并能最大限度满足用户使用平台过程中的体验。
关键词:
大数据时代;档案信息资源;共享平台;性能优化;数据库优化
Abstract:
Internetandarchivalinformationresourcessharingplatformisbeingintegrateddeeply.Itisneedtoprocessdatabetweenserver,Webclient,mobileclientandotherplatforms.Withtheincreaseofthenumberofusers,theperformancerequirementsofthesystemshouldbeimprovedwiththeuseofthefileinformationresourcessharingplatform.Notonlyshouldtheplatformbeabletoadapttotheexistingnetworkenvironment,butalsotomakethedataprocessingresponsetofavorablycontrol,theplatform'sconcurrentserviceprocessingabilityhasbeenenhanced.Therefore,wecanoptimizetheperformanceofthesharedplatformfromthreeaspectsofthefunctionofthefileinformationresourcessharingplatform,thedatanetworktransmissionlevel,thedatabaselevel,theplatformservicearchitecturelevelandsoon,Optimizedplatformcanmeettheperformancerequirementsoftheeraofbigdataandpromotetheuseofthesystemfluency,andtomaximizetheuserexperienceintheuseoftheplatform.
Keywords:
Bigdataera;archivesinformationresources;sharingplatform;performanceoptimization;databaseoptimization
档案信息作为一种重要的信息资源,其有效开发和合理利用,不仅是社会技术进步的需要,更重要的是关系到档案信息创新成果能否充分运用到社会生产和各项活动中。
档案信息资源共享平台的构建便于档案机构向外部提供公开的各种档案信息资源[1],而大数据具有大量、高速、多样、价值等特征,它正在以一种独特的方式和手段对海量数据集进行深入挖掘和分析[2],将互联网技术与档案信息进行创新融合将成为未来发展的必然趋势。
当前互联网技术,尤其是移动互联网技术的发展,为档案信息资源共享平台的实现提供了新的实现,其中将传统的Web平台上的资源共享于移动平台的性能瓶颈成为打通平台互联互通的难点。
在大数据时代,针对档案信息资源共享平台,从实际使用平台用户的体验方面入手,在数据传输、后台数据处理方式和应用服务架构等三个方面对档案信息资源共享平台进行优化,为档案信息资源共享平台的性能优化提供了综合的解决方案参考。
1大数据时代档案信息资源共享平台性能需求
大数据时代来临之前,档案信息一般采用档案网站进行发布,用户群体也仅限于普通的计算机用户,这种方式存在档案信息资源匮乏,服务方式单一,资源利用效率不高[3]。
大数据时代背景下,随着移动互联网技术的发展,用户除了可以通过电脑进行档案信息的检索利用外,还能够随时随地通过移动设备接入档案信息资源共享平台进行检索利用,这就对档案信息资源共享平台提出了性能需求,在现有的网络条件与设备配置条件下,能够运用移动设备进行档案信息的检索、上传、下载及评论等相关操作,在实际的操作过程中由于各种限制,应用会出现卡顿现象,这就对档案信息资源共享平台在性能方面提出更高的要求。
1.1平台能够适应现有的网络环境。
档案信息资源共享平台在大数据时代应用的最大的特点是支持移动客户端,移动设备可以支持的网络已发展到今天的3G、4G,但仍存在大量的只支持2G的移动设备,这就限制了使用移动客户端进行检索利用的效果,主要表现为数据传输速度慢。
另一方面,4G网络虽然网络速度可以满足要求,但是使用现有的平台进行检索利用,需要耗费大量的流量,由于目前流量资费的限制,会使用户转向采用移动互联网进行学术研究的习惯转变带来障碍。
由于以上用户实际体验及网络环境实际的限制,就需要对档案信息资源共享平台做实质性的优化,目标是优化数据网络传输及提升后端处理的效率。
1.2平台的数据处理响应有效控制。
档案信息资源共享平台是面向终端用户的应用,平台上线应用后随着用户量的增长,档案信息的利用量也会快速增长。
用户使用档案信息资源共享平台最多的是档案信息的检索与档案信息的处理,在实际的档案信息处理中需要一体化、便捷化、知识化的数字化融合服务[4],这就要求平台的检索效率有较大提升。
现实情况是对于数据量非常大的表,其检索效率随着数量的增长会变得越来越低。
同时,平台对于档案信息的操作比较频繁,比如上传、审核、编辑数字化的档案信息等操作,在实际的档案信息处理过程中会出现数据丢失的情况。
因此,平台在数据处理响应方面要求系统能够满足高效检索、实时处理信息的能力。
1.3平台的并发服务处理能力增强。
随着移动互联网技术的发展,大数据档案信息资源共享平台会出现终端用户同时对平台进行操作,这就会产生很多的并发数据请求,遇到该情况系统的服务会出现死锁现象,同时会影响后继用户正常使用系统。
档案信息资源共享平台的优化后需要能够有效提升用户体验,做到用户同时使用平台不会出现请求得不到有效处理,进一步改变用户使用该平台进行检索利用的方式,做到随时随地采用移动客户端进行档案信息的实时交互。
2数据网络传输层面优化
数据网络传输层面的优化目标主要有最大限度减少档案信息数据中间传输过程中的数据量,另外对于档案信息资源共享平台,对超长信息上传与浏览操作产生的传输数据量压缩至最低,并使系统能够适应用户实际的网络环境。
2.1采用JSON提升数据传输效率。
对于档案信息资源共享平台首先要解决的是传输效率问题,使用户在操作的过程中能够正常使用系统,从系统开发与实践的角度看,主要是减少平台在数据交互中的传输的数据量。
档案信息资源共享平台在数据传输前会将需要传输的数据转换成JSON(JavaScriptObjectNotation),它是一种轻量级独立于编程语言的文本型数据传输格式[5],相对于传统的XML格式数据传输,JSON数据格式比较简单,易于读写,格式都是压缩的,占用带宽小[6],实际的平台中会将需要传输的原始信息转换为JSON格式,到达目标后将JSON数据再次转换成需要操作的数据类型,具体的方式如图1所示:
通过JSON方式进行数据压缩后,由于传输的档案信息数据量的减少而提升了系统的传输效率,用户在实际的档案信息检索过程中可以大大加快档案信息数据中间传输的时间,从而使用户的系统使用体验得到有效改善。
2.2采用GZIP进行传输数据压缩。
档案信息资源共享平台上传与下载的档案信息量,在传输过程中需要占用大量的网络资源,因此系统操作员在实际的浏览与上传档案信息过程中会出现卡顿现象。
针对大信息容量的数据传输,可以采用GZIP压缩的方式进行优化。
该方式最早由Jean-loupGailly和MarkAdler创建,一般对纯文本内容可压缩到原大小的40%[7],这样文件的体积就缩减很多,传输速度相应提高,采用gzip虽然可以取得较好的压缩比,但它在分析和压缩编码的过程需要进行大量的计算[8],档案信息资源共享平台采用.NET提供的GZipStream类进行压缩与解压处理,此类在.NETFramework2.0版中是新增的,提供用于压缩和解压缩流的方法和属性,用户完成档案信息资源的上传下载压缩解压过程如图2:
采用GZIP压缩可以大大节省服务器的网络带宽,内容压缩后可以大大提升用户使用平台的体验。
2.3采用CDN解决相关传输问题。
我国目前档案信息资源共享平台用户使用的网络环境包括电信、移动、联通等网络,如果档案信息资源共享平台仅部署在某个网络环境下,其它网络环境的用户使用平台由于跨运营商的原因访问平台就会比较慢,这样很容易造成不同网络环境的用户使用系统的体验不同,从而最终导致部分非平台部署网络环境用户的流失。
另外,当系统在某个瞬间有大量用户同时使用系统时,仅靠一台服务器来提供服务也会出现传输性能问题。
针对以上性能问题,可以采用CDN技术来解决相关传输问题。
CDN的全称是ContentDeliveryNetwork,即内容分发网络[9],它是一种基于Web的网络体系结构,能够更加快速有效地传送Web内容。
其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定[10]。
使用CDN技术后档案信息资源共享平台数据访问与传输的方式如图3所示:
通过以上方式对数据传输方面进行优化,数据中间传输过程可以有效减少传输的信息量,有效减少无效的数据传输,同时在另网络层面减轻带宽压力。
3数据库层面优化
数据库层面优化主要处理档案信息资源共享平台数据操作指令到达数据库服务器后进行的优化,主要目的是让数据层面的检索与操作均在数据库上进行处理,仅传入数据处理需要的信息,在处理后也仅输出用户需要的数据信息,包括采用存储过程、检索服务加索引,大表数据采用分离加分区的处理方式。
3.1采用存储过程技术减少网络流量。
档案信息资源共享平台用户在实际的系统使用过程中,数据操作是最频繁的动作,在实际的网络中进行数据交互时如果采用大量的SQL语句,主要存在如下问题:
一是随着用户量的增长,数据的频繁操作会使数据库的执行效率变差;二是复杂的SQL的传输会使网络的通信量增加,通信速率会降低。
为了避免以上面临的性能瓶颈,档案信息资源共享平台在实际的数据操作过程中采用存储过程技术,在使用存储过程时只需用提供存储过程名和必要的参数信息,这样在一定程度上也可以减少网络流量、减轻网络负担。
由于存储过程在创建时即在数据库服务器上进行了编译并存储在数据库中,所以档案信息资源共享平台数据处理采用存储过程运行要比单个的SQL语句块要快。
3.2采用索引技术提升数据检索效率。
快速检索档案信息是平台用户最基本的需求,平台上线之初,由于用户数据量有限,档案信息检索效率较高,随着用户数据量的增长,用户需求的档案信息也会出现爆炸式增长,信息检索的效率会随着数据量的增长而降低。
针对检索效率性能瓶颈,档案信息资源共享平台采用了索引技术来提升数据检索效率。
索引分为聚簇索引和非聚簇索引两种,聚簇索引是按照数据存放的物理位置为顺序的,而非聚簇索引就不一样了;聚簇索引能提高多行检索的速度,而非聚簇索引对于单行的检索很快,根据数据库的功能有唯一索引、主键索引和聚集索引。
档案信息资源共享平台在实际的应用中将表的主键作为惟一索引,对于索引列是选择数据类型较小且常作为检索条件的字段作为索引字段。
3.3采用分区表技术提高访问速度。
档案信息资源共享平台存储档案信息的表随着用户新增信息的增加会变得十分庞大,此时需要将大型表拆分为多个较小的表,表数据会按指定的规则分放到不同的文件里,把一个大的数据文件拆分为多个小文件,还可以把这些小文件放在不同的磁盘下由多个CPU进行处理。
通过使用数据分区技术可以大大提高访问速度,分区可以显著提高访问大表时的性能,并且分区的存在对应用系统是透明的[11]。
对于档案信息资源共享平台大数据量的数据表进行分区后,除了可以提高查询效率,还可以对历史数据进行区分存档。
4平台服务架构层面优化
平台服务架构层面优化主要解决多用户及并发用户使用平台时调用服务的瓶颈问题,档案信息资源共享平台终端用户使用客户端进行数据操作都离不开对服务的调用,如何使用户的体验达到最佳,即用户使用系统过程中能够使用最快的方式完成一次服务调用,这部分优化具体思路为采用WCF架构,并对WCF进行优化,同时对于档案信息的存储与转发采用MSMQ(微软MessageQueue)技术,数据库服务与应用服务采用独立布置的方式。
4.1采用数据库连接池规避平台崩溃。
档案信息资源共享平台终端用户的包括传统的个人计算机、平板及移动终端,从系统开发与实现角度,这部分的优化需要将数据操作部分进行集中管理,所有平台涉及到的基础操作均采用调用一个集中服务集群,可以采用WCF(WindowsCommunicationFoundation)技术作为系统的整体架构。
WCF是由微软开发的一系列支持数据通信的应用程序框架,在具体使用过程中,WCF自身最频繁的操作为数据库的访问与操作,传统的WCF的数据处理方式是调用数据库操作类,每次调用服务需要进行一次数据库连接操作,数据库连接操作是比较耗费网络的操作,采用该方式影响了整个应用程序的伸缩性和健壮性,当同时有大量用户使用平台并进行数据库操作时,就会出现平台卡死直至退出的现象,因此需要对该模块进行优化。
现有数据库连接池的参数配置都是在初始化时一次设定,连接池在运行过程中其值不会改变[12]。
本系统采用的方式为将数据库连接部分用连接池技术解决,数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个。
连接池初始化后,档案信息资源共享平台终端用户在实际调用WCF进行数据操作时,并非建立一个新的连接,而是从连接池中取出一个已建立的空闲连接对象,使用完毕后,用户也并非将连接关闭,而是将连接放回连接池中,以供下一个请求访问使用。
采用该技术后,平台在涉及到数据库操作部分不会因为数据连接资源紧张而导致平台崩溃的情况出现。
4.2采用MSMQ减少用户等待时间。
随着档案信息资源共享平台用户数量的增长,其并发请求会越来越多。
如果采用传统的同步技术,同一操作的下一个请求的开始需要等待上一个请求的结束,现有的平台用户真实的需求是对系统性能的体验,同步方式需要长时间的等待,从而影响了系统的用户体验过程。
对于档案信息资源共享平台,采用MSMQ技术(MSMQ全称是MicrosoftMessageQueue,即微软消息队列)是一种利用队列机制实现部件间或者是应用程序间通信的技术,其工作原理如下图所示:
由图4可以看出,消息的发送者把自己想要发送的信息放入一个容器,然后把它保存到一个系统公用空间的消息队列中,采用消息队列机制,发送方不必要担心接收方是否启动,是否发生故障等因素,只要消息成功发送出去,就可以认为处理完成,本地或异地的消息接收程序再从该队列中取出发给它的消息进行处理。
采用该技术可以大大减少用户的等待时间,由于采用了异步通信,无论是发送方还是接收方都不同等待对方返回成功消息,就可以执行余下的代码,大大提高了处理的能力,在信息传递过程中,具有故障恢复能力,MSMQ的消息传递机制使得通信的双方具有不同的物理平台成为可能。
4.3采用服务集群来提升平台的整体服务能力。
随着移动互联网应用的广泛普及以及档案信息资源共享平台用户数量的增长,完成应用程序自身与数据库方面的优化后,需要从硬件部署方面来提升档案信息资源共享平台的性能。
该部分的优化思路为采用WCF服务集群来提升平台的整体服务能力,同时在数据处理上采用主备数据库的架构来完善数据库服务能力以及确保数据库服务的稳定性,具体的部署方式如下图所示:
如图5所示,在软件优化完成后,通过增加硬件资源的方式来优化平台是最有效的性能优化方式之一,该方式可以有效提升服务的分布式处理与并发处理能力。
经过对档案信息资源共享平台架构层面的优化,采用WCF技术集中处理数据[13],在服务器层面优化了服务的处理效率,在数据传输过程中,采用JSON方式进行数据传输,对于文件资料的传输经过gzip压缩后进行传输方式,大大减少了传输过程中的信息量,所有的应用在实际的操作过程中均采用存储过程的方式,既减少了调用服务传输的信息量,又加快了数据处理的效率。
在经常使用的平台档案信息检索方面,数据库层面关键字段加上了索引,从而大大提升了信息检索的效率。
多层面、全方位的平台优化使系统满足了大数据时代的信息系统对性能的需求,在此基础上更是满足了终端用户对平台体验的需求,从而使平台能够真正满足用户对于档案信息资源共享平台的性能需求,真正实现档案信息资源整合、信息发布、数据加工和提供档案信息的检索利用的一体化建设[14]。