CN104331477B - 基于联邦式检索的云平台并发性能测试方法 - Google Patents

基于联邦式检索的云平台并发性能测试方法 Download PDF

Info

Publication number
CN104331477B
CN104331477B CN201410614018.0A CN201410614018A CN104331477B CN 104331477 B CN104331477 B CN 104331477B CN 201410614018 A CN201410614018 A CN 201410614018A CN 104331477 B CN104331477 B CN 104331477B
Authority
CN
China
Prior art keywords
cloud platform
test
retrieval
layer
testing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410614018.0A
Other languages
English (en)
Other versions
CN104331477A (zh
Inventor
张展
左德承
封威
刘宏伟
罗丹彦
冯懿
董剑
舒燕君
王帅
薛利兴
吴娜
胡泽
李文浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harbin Institute of Technology
Original Assignee
Harbin Institute of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Harbin Institute of Technology filed Critical Harbin Institute of Technology
Priority to CN201410614018.0A priority Critical patent/CN104331477B/zh
Publication of CN104331477A publication Critical patent/CN104331477A/zh
Application granted granted Critical
Publication of CN104331477B publication Critical patent/CN104331477B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web

Abstract

基于联邦式检索的云平台并发性能测试方法,属于云平台性能测试技术领域。本发明是通过获得基于联邦式检索的云计算平台在不同并发用户数情况下的评测指标,来实现对云计算平台的性能评测。它首先基于云平台环境构建联邦式检索系统,该云平台环境下构建的联邦式检索系统由下向上依次包括物理资源层、虚拟资源层、数据访问层、对外服务层、安全链路层、业务功能层和系统表示层;测试方法分别测试云平台的查询事务响应时间、最大并发用户数和查询事务每秒事务数,用来评价云平台并发性能。本发明用于测试云平台的并发性能。

Description

基于联邦式检索的云平台并发性能测试方法
技术领域
本发明涉及基于联邦式检索的云平台并发性能测试方法,属于云平台性能测试技术领域。
背景技术
检索系统是互联网的主要入口之一,而检索系统的处理数据是来自于整个互联网,因此,如何使检索系统快速从海量的数据中检索到用户需要的信息,已经成为学术界和工业界的研究热点。
传统的检索平台构建在小型服务器中,它在管理、部署上比较繁琐,同时整个系统的动态扩展性较差,当检索集群机器数量较少,并且访问用户数量大幅增加时,系统的响应时间会增加,整个系统运行速度缓慢,会导致用户体验度降低。为了应对突发访问用户,通常通过增加集群的规模的形式,来提高集群的性能。然而这种解决方案会造成资源的大量浪费,导致计算资源的严重浪费,并使系统的使用性能降低。
联邦式检索是一种集成检索,又称平行检索或跨库检索,它通过一个统一的界面让用户在多个本地或网络数据库中实现信息检索,它是对分布在网络中多种信息资源的集成,联邦式检索由于整合了多个数据源,因此可以同时对多数据源进行检索。联邦式信息检索同时也区别于通用的搜索引擎Google、Yahoo、百度,而主要应用于一些专业机构与部门,并提供“一站式”信息检索服务。目前,联邦式检索系统普遍应用在各大高校的图书馆、信息情报部门及大型企业等,其所能够处理的信息资源包括文本、图片、音频、视频及应用程序等各种格式的数据。其中实际应用最广泛的还是图书馆的图书检索与数字出版平台的文献检索。
随着目前数据量的规模不断增长,传统的单机检索系统的检索能力已经无法满足日益增长的使用需求,为了满足可扩展性、高并发性等需求,目前,检索系统也由传统的单机系统逐渐转移到云计算平台上。由于在云计算环境下,可以满足用户对检索数据的高可用性、高并发性、高扩展性的需求,因此,不论是学术界还是相关的互联网公司均致力于不断优化信息检索系统在云计算平台下的性能表现。
发明内容
本发明目的是通过获得基于联邦式检索的云计算平台在不同并发用户数情况下的评测指标,来实现对云计算平台的性能评测,提供了一种基于联邦式检索的云平台并发性能测试方法。
本发明所述基于联邦式检索的云平台并发性能测试方法,该测试方法基于云平台环境下构建的联邦式检索系统实现,该云平台环境下构建的联邦式检索系统由下向上依次包括物理资源层、虚拟资源层、数据访问层、对外服务层、安全链路层、业务功能层和系统表示层,其中物理资源层采用云平台环境下的物理资源实现,该物理资源包括若干台服务器、网络设备以及存储设备;虚拟资源层采用云平台环境下的云计算虚拟资源池实现,云计算虚拟资源池由云平台环境下的物理资源虚拟化而来;数据访问层、对外服务层、安全链路层和业务功能层采用云平台环境下的软件平台实现;
该测试方法分别测试云平台的查询事务响应时间、最大并发用户数和查询事务每秒事务数,用来评价云平台并发性能,具体如下:
查询事务响应时间的测试方法为:首先由负载发生端向云平台环境下构建的联邦式检索系统发起检索请求,记录此发起时间t1,所述联邦式检索系统接收到检索请求后,按照负载发生端的请求数据,进行相应计算,然后将计算结果作为检索结果返回给负载发生端,并记录下负载发生端获得检索结果的时间t2,计算获得当前查询事务响应时间t2-t1;计算预设置时间段内的当前查询事务响应时间的平均值,将该平均值作为预设置时间段内的查询事务响应时间;
最大并发用户数的测试方法为:在云平台的测试场景中,使负载发生端的并发用户数按照梯度递增方式,依次在每△t时间段内增加m个,对云平台环境下的联邦式检索系统发起压力测试,在当前△t时间段内增加m个并发用户数后的测试过程中,有超过5%的关键字检索事务的响应时间大于1s,并持续△t1时间段,其中△t>△t1,则将该当前△t时间段内的所有并发用户数作为云平台的最大并发用户数;
查询事务每秒事务数的测试方法为:在测试场景中,使当前关键字检索事务占查询事务的比例为65%,统计每秒通过的当前关键字检索事务数作为查询事务每秒事务数。
所述负载发生端包括多个负载模拟客户端,该多个负载模拟客户端以并发的方式与云平台进行信息交互。
所述联邦式检索系统对检索请求的处理方法为:
联邦式检索系统接收到检索请求后,首先根据检索请求的查询关键词和检索数据类型从当前所有能提供检索服务的数据源中选择检索服务源;
在调用语义冲突调解Web服务处理用户的检索请求后,将检索请求转发给选定的检索服务源;
各个分布式检索Web服务依据本地数据库及索引文档完成单个节点的信息检索,并将检索结果的部分信息返回给联邦式检索系统;
联邦式检索系统将分布式检索Web返回的结果集排序后,以统一标准的Web格式进行显示。
所述负载发生端采用分布式的负载发生集群实现,该负载发生集群采用主从模式进行管理;在进行压力测试前制作相应的测试脚本,负载发生端按照相应的规则执行该测试脚本;所述主从模式的主节点进行测试场景的定义,并设定虚拟用户数及增长模式;在进行测试的过程中,负载发生端收集测试过程中的各项测试数据;测试结束后,将测试数据发送给主节点进行处理,获得测试结果。
在云平台性能测试过程中,首先进行测试脚本的制作,以定义虚拟用户在测试过程中的具体操作;脚本制作完成后进行回放,并为不同的事务设置不同的事务名称,配置脚本执行逻辑;然后进行测试场景的定义,用于确定脚本执行规范,该规范包括虚拟用户的初始化、需要定义的虚拟用户数量、启动规则、测试持续时间及虚拟用户的结束规则;最后将测试中的虚拟用户平均分配到负载发生端并启动测试。
本发明的优点:本发明构建了一套联邦式信息检索系统,作为在云计算平台下的一个应用。云环境下能够实现一站式获取多个分布式异构数据源的信息资源,以为用户提供更好的检索方式。它能够满足用户对高并发、低响应时间、高扩展性的需求。本发明通过模拟不同的并发用户数,观察云计算平台在不同并发用户数的相应评测指标,来对云计算平台进行性能评测。
附图说明
图1是本发明所述联邦式检索系统的总体层次架构图;
图2是云平台环境下构建联邦式检索系统的总体框图;
图3是联邦式检索系统的数据流程图;
图4是联邦式检索系统的平台主界面;
图5是数据空间中对象关联的构建框图;
图6是云平台环境下构建的联邦式检索系统的LoadRunner测试体系结构图;
图7是LoadRunner测试集群对本发明所述云平台的测试流程图。
具体实施方式
具体实施方式一:下面结合图1和图2说明本实施方式,本实施方式所述基于联邦式检索的云平台并发性能测试方法,该测试方法基于云平台环境下构建的联邦式检索系统实现,该云平台环境下构建的联邦式检索系统由下向上依次包括物理资源层、虚拟资源层、数据访问层、对外服务层、安全链路层、业务功能层和系统表示层,其中物理资源层采用云平台环境下的物理资源实现,该物理资源包括若干台服务器、网络设备以及存储设备;虚拟资源层采用云平台环境下的云计算虚拟资源池实现,云计算虚拟资源池由云平台环境下的物理资源虚拟化而来;数据访问层、对外服务层、安全链路层和业务功能层采用云平台环境下的软件平台实现;
该测试方法分别测试云平台的查询事务响应时间、最大并发用户数和查询事务每秒事务数,用来评价云平台并发性能,具体如下:
查询事务响应时间的测试方法为:首先由负载发生端向云平台环境下构建的联邦式检索系统发起检索请求,记录此发起时间t1,所述联邦式检索系统接收到检索请求后,按照负载发生端的请求数据,进行相应计算,然后将计算结果作为检索结果返回给负载发生端,并记录下负载发生端获得检索结果的时间t2,计算获得当前查询事务响应时间t2-t1;计算预设置时间段内的当前查询事务响应时间的平均值,将该平均值作为预设置时间段内的查询事务响应时间;
最大并发用户数的测试方法为:在云平台的测试场景中,使负载发生端的并发用户数按照梯度递增方式,依次在每△t时间段内增加m个,对云平台环境下的联邦式检索系统发起压力测试,在当前△t时间段内增加m个并发用户数后的测试过程中,有超过5%的关键字检索事务的响应时间大于1s,并持续△t1时间段,其中△t>△t1,则将该当前△t时间段内的所有并发用户数作为云平台的最大并发用户数;
查询事务每秒事务数的测试方法为:在测试场景中,使当前关键字检索事务占查询事务的比例为65%,统计每秒通过的当前关键字检索事务数作为查询事务每秒事务数。
本实施方式中,联邦式检索系统的总体架构分为七个层次,如图1所示,系统表示层为用户提供统一的检索入口,为此需要设计统一标准的信息检索前端界面和统一格式的检索结果显示页面;该检索系统为用户提供的业务功能主要有信息上传、联邦式信息检索、资源获取、资源下载等。对服务层的访问,使用的是安全链路层的简单对象访问协议SOAP,分布式的检索Web服务通过数据访问层完成对本地索引文档的检索,云平台虚拟层提供了整个平台开发所需要的虚拟机,网络基础设施位于最底层,为平台的构建提供基础硬件设施的支撑。
本实施方式将联邦式检索系统构建在云计算虚拟环境中,将传统的服务器进行虚拟化,把现有的计算资源进行池化,将基础架构资源,如计算、内存及磁盘等整合成虚拟数据中心资源池,使得用户可以按需索取这些资源。它使用虚拟化技术,将传统的单个服务器,虚拟化为多个虚拟机,然而每个虚拟机又可以单独的作为一个服务器对外提供服务。
物理资源层为检索系统提供了硬件资源支撑,云计算虚拟资源池中包括按照不同需求定制的虚拟机,这些虚拟机具有传统物理服务器响应的功能。软件平台能够满足用户对联邦式检索的需求。
查询事务响应时间的定义:该指标指虚拟用户从发起查询请求到获得查询结果所消耗时间,其中包含了从负载发生端到云计算平台的网络通信时间。该指标用于评价云计算平台处理查询请求的处理能力,从响应时间的角度来评价被测云计算平台的性能。
最大并发用户数的定义:该项指标对云计算平台进行压力测试,当查询事务中当出现某个比例的查询事务响应时间大于预定指标时,获得该评价指标。该指标用于评价云计算平台的并发能力。
查询事务每秒事务数的定义:该指标表示被测云计算平台处理查询事务的能力,在测试场景中,查询事务所占的比例是一定的。通过统计该指标来评价被测云计算平台的事务处理能力。
为获取云平台最大性能,测试采用多个负载模拟客户端并发访问云平台的方式进行;同时,为避免测试工具本身性能瓶颈的限制,采用分布式数据采集的解决方案来搭建负载发生集群,并使用Master-Slaves模式来管理整个集群。即:主-从模式,也就是:总控机-多个负载发生端。
在进行压力测试前应当制作相应的测试脚本,所有负载发生端Slaves都按照相应的规则执行该测试脚本。在进行测试的过程中,负载发生端负责收集测试过程中的各项测试数据,在测试结束后,统一发送给总控计算机Master,由Master进行分析处理测试数据,并得出最终的测试结果。
本测试方法是为了评测目标云计算平台的性能,云计算平台通过封装底层基础设施细节,管理IT基础架构,实现IT能力的服务化,是云应用运行的基础。而联邦式检索系统作为在云计算平台下的一个典型应用,通过对联邦式检索系统施加压力测试,并使用上述指标体系来衡量云计算平台的性能。
具体实施方式二:本实施方式对实施方式一作进一步说明,所述负载发生端包括多个负载模拟客户端,该多个负载模拟客户端以并发的方式与云平台进行信息交互。
具体实施方式三:下面结合图1说明本实施方式,本实施方式对实施方式二作进一步说明,所述联邦式检索系统对检索请求的处理方法为:
联邦式检索系统接收到检索请求后,首先根据检索请求的查询关键词和检索数据类型从当前所有能提供检索服务的数据源中选择检索服务源;
在调用语义冲突调解Web服务处理用户的检索请求后,将检索请求转发给选定的检索服务源;
各个分布式检索Web服务依据本地数据库及索引文档完成单个节点的信息检索,并将检索结果的部分信息返回给联邦式检索系统;
联邦式检索系统将分布式检索Web返回的结果集排序后,以统一标准的Web格式进行显示。
本实施方式的工作流程是:分布式异构数据源对本地的数据资源构建倒排索引,发布成Web服务,并在服务管理中心完成服务的注册。具体为:
用户输入查询关键词、选择检索数据类型,从当前所有能提供检索服务的数据源中选择服务源;在调用语义冲突调解Web服务处理用户的查询请求后,将其转发给用户指定的检索服务源;各个分布式检索Web服务依据本地数据库、索引文档完成单个节点的信息检索,并将检索结果的部分信息返回;平台将分布式检索源返回的结果集在排序后,以统一标准的Web格式显示在用户面前;在用户点击感兴趣的某一条记录后,系统通过调用资源获取服务得到对应记录的详细信息;用户可以在线预览此条信息,也可以选择下载此条信息。
具体实施方式四:本实施方式对实施方式三作进一步说明,所述负载发生端采用分布式的负载发生集群实现,该负载发生集群采用主从模式进行管理;在进行压力测试前制作相应的测试脚本,负载发生端按照相应的规则执行该测试脚本;所述主从模式的主节点进行测试场景的定义,并设定虚拟用户数及增长模式;在进行测试的过程中,负载发生端收集测试过程中的各项测试数据;测试结束后,将测试数据发送给主节点进行处理,获得测试结果。
具体实施方式五:下面结合图1至图7进行说明,本实施方式对实施方式四作进一步说明,构建LoadRunner测试集群对云平台进行性能测试,LoadRunner测试集群中控制节点采用Dell Optiplex780计算机实现,分析节点采用HP Compaq dc7900计算机实现,负载发生端采用15台HP T505瘦客户机实现,Dell Optiplex780计算机用于实现测试脚本的制作、测试场景的定义、测试结果的收集与统计;15台HP T505瘦客户机依据DellOptiplex780计算机指定的脚本产生虚拟用户及数量;
在云平台性能测试过程中,首先进行测试脚本的制作,以定义虚拟用户在测试过程中的具体操作;脚本制作完成后进行回放,并为不同的事务设置不同的事务名称,配置脚本执行逻辑;然后进行测试场景的定义,用于确定脚本执行规范,该规范包括虚拟用户的初始化、需要定义的虚拟用户数量、启动规则、测试持续时间及虚拟用户的结束规则;最后将测试中的虚拟用户平均分配到负载发生端并启动测试。
检索系统作为云计算平台下的一个典型应用,为了全方位的对云计算平台进行评测,在VMware企业级私有云环境中构建了基于SOA的联邦式信息检索平台。在实现了基本的信息管理与共享外,通过VMware提供的Iaas云计算服务进一步提高了企业内软硬件的使用率、数据的安全性、服务的质量,同时使用LoadRunner发生负载,对整个云计算平台进行性能评测。
从全局的角度来看,联邦式检索构建的是用户查询关键词与被检索数据集之间的相关度关系。本检索系统中用于被检索的都是分布式的异构数据源,并为每个异构数据源引入了元数据标准,各分布式数据中心将本地异构实体数据以元数据标准存放在元数据库中,元数据规范的制定方便了单个数据中心对本地数据的集成与管理。元数据描述是指分布式数据源将本地多种类型的元数据标准上传到主节点的元数据管理中心,数据源的管理与分类是对所有的分布式数据中心的统一组织与管理。
另外,分布式的数据中心通过元数据集成将本地的部分数据信息以统一的元数据标准存放在主节点的元数据目录库中,在提供联邦式检索的同时,通过事先定义好的领域规则对元数据目录库进行对象与对象关联的抽取,以提供关联搜索,用户通过检索结果之间的关联性便可以对某一主体有一个很全面的了解。不管是分布式数据中心的元数据还是主节点元数据目录库中的数据都需要对其都建索引,而对中文信息构建索引必须指定有效的中文分词策略,本发明采用基于匹配与基于统计的分词策略。使用开源检索框架Lucene构建索引文件。联邦式检索是调用各数据中心的检索Web服务实现的,所以在索引构建完毕后,需要对各分布式数据中心构建检索Web服务,并在服务管理中心进行服务注册,这也解决了元数据的发布与发现问题,因为服务使用者只要在服务管理中心发现了相应的检索Web服务,便相当于发现了元数据。
对于用户的查询关键词首先需要进行预处理,比如一些语法错误、多余空格等等。在预处理后还要调用语义冲突调解服务进行数据层与模式层的语义冲突调解,之后才把用户的查询请求转发给用户指定的检索Web服务。对于各个数据中心返回的检索结果,还需要经过一些结果融合机制的处理才能将最满足用户需求的记录排在结果集的前面,以节省用户的查找时间。
元数据的定义与异构性屏蔽:
元数据通常被称为“关于数据的数据”,是一种对各种类型数据资源的结构化描述工具。为了检索文本、图像、声像这些非结构化数据,本发明引入了元数据规范对非结构化数据进行描述。表1是对某个数据中心文档类型数据的元数据描述片段。
表1 某节点文档数据的元数据描述片段
分布式数据中心将各类型的数据以元数据规范存储在本地的数据库中心,不仅方便了管理员充分了解信息资源的相关特征,也实现了节点内数据的集中管理,为信息的共享构建了基础。不同的数据类型不一定需要统一的元数据格式,同一数据类型在不同的数据中心也可以定义不同的元数据格式。而这种不同数据中心对不同数据类型的元数据定义必然会带来分布式数据源的异构性。为了实现在多个分布式数据中心的联邦式信息检索,同一种数据类型必须满足统一的元数据标准。所以,本发明中为文档、图像、声像分别设计了各自统一的元数据格式,实现了各分布式元数据标准到联邦式信息检索的统一元数据映射。在统一元数据标准的定义过程中,一般选择此类型数据在多个分布式元数据中的公有属性作为其元数据属性字段,表2是本发明对文档类型数据的统一元数据描述。其中重要级别是信息录入者在录入信息时手工对一条记录重要级别的判定,作为后面联邦式检索中自适应综合排序算法里的一个排序因子。
表2 文档型数据的统一元数据描述
在本检索系统中检索Web服务返回的数据格式采用的是JSON(JavaScript ObjectNotation)轻量级的数据交互格式,JSON的语法规则不仅方便人的阅读与编辑,同时也便于机器的解析,表3是一个简单的JSON语句,每个“{}”内对应一条记录,每条记录都有name、description、id三个属性及其对应的属性值。所以,将各种数据的统一元数据标准通过JSON语法规则以Web服务的形式进行接口的封装,拟消除分布式数据源的异构性。
表3 JSON语句
本检索系统提供了三种数据格式的检索,文本、图像、声像,如图4所示。检索服务一、服务二、服务三是来源于服务管理中心UDDI当前可用且已通过管理员审核的检索Web服务,结合用户的服务选择,便可以最终确定需要调用的检索服务源。
联邦式检索Web服务第一次返回的仅仅是统一元数据规范所对应的每条记录公共属性的集合,用户在点击自己感兴趣的链接后,联邦式检索平台再通过调用服务管理中心的资源获取Web服务以获取此记录的详细信息。
中文分词:
信息检索不同于在数据库中的查找,一般认为文档、网页标题、正文中的多个词语或者短语与用户查询关键词Query一样,便可以判定此文档或网页与Query是相关的,这涉及到文档标题、内容以及Query的分词处理。这在检索结果排序策略中,文档之间的相关度计算中会使用到。
基于中文是由一个个汉字组成这一特点,比较原始的分词是把句子分成一个个的汉字,再或者依据汉语中词语一般是由两个汉字组成这一特点,将句子按照两个汉字单元进行划分。这种分词思路操作起来简单,划分的粒度太细,分出来的词片集Term与句子原来所表达的意义出入太大。中文的汉字属性使得中文分词成为了众多语言中的一个难点。目前中文分词比较典型的算法分为三类:基于词典匹配方法,基于统计的方法,基于规则的方法,本发明采用基于匹配与统计的轻量级分词工具IKAnalyzer。
相关度评价模型:
相关度评价模型表示的是文档Document、查询关键词Query以及查询与文档的相关度R(qi,dj)大小的框架Frame,可用一个四元组模型[D,Q,F,R(qi,dj)]表示。现在研究的最多的是布尔模型,向量模型,概率模型。Lucene的最新版本4.x的一些相关度计算算法已经实现了这些主流的相关度计算模型,开发者可以直接通过API接口选择适合其项目的评价模型。
数据空间技术:
数据空间是最早由Frankli在2005年提出的一种抽象数据管理模型,其主要由三个部分组成:主体、数据集、服务。主体是数据的拥有者,可以是个人也可以是一个组织;数据集是所有与主体相关的数据集合,主要包含主体中的对象及对象之间的关联属性;服务对应的是数据空间中的各种功能,主体通过这些服务完成对数据集的管理,比如查询、插入、索引、删除等。
当用户检索到主体中的某一对象时,通过数据空间构建的对象关联,便可以实现一种发散、广度的信息检索。用户在不需要多次检索交互的条件下,一次检索后,直接点击与此记录相关的记录便可以对此对象的相关信息有一个全面的了解。
本发明对军事领域的模型定义如下,这里总共定义了5个对象,括号内的是对象的属性值,其中带“*”表示不可缺省属性,“of”表示此属性是被其它属性所拥有,“has”表示此属性拥有其它属性,二者一起体现了属性之间的相互关联。
War(*hasCountry,*hasLocation,*hasWeapon,year,death,hasPeople);
Country(*Country_Name,warOf,hasWeapon);
Locality(Name,happenOf);
People(*Name,Age,countryOf,warOf);
Weapon(Cruiser,Aircraft carrier,Warcraft,Warship);
图5中最底层的是数据来源,有结构化的数据,也有非结构化的异构数据,如PDF、Word、Excel等。其上层的是各种文件所对应的解析器,PDF文件采用的解析工具是开源架包PDFBox,Word文件采用解析工具是开源架包POI,Excel采用的解析工具是开源架包XLS,主要的解析字段包含文档路径、内容、最后修改时间、文档标题、文件大小。然后对象生成器与关联生成器会依据用户定义的初始规则与领域模型进行对象与关联的抽取。比如,文档内容中包含“战争”信息时,则可以构建一个主体对象,同时依据战争参与国与参战地点定义关联属性“hasCountry”与“hasLocation”。最后采用数据融合工具Jena将主体的对象及其关联定义转换为RDF(Resource Description Framework)文件存储在本地,RDF是一种用来描述Web资源的标记语言。
联邦式检索系统在云环境下的部署:
本发明的用于构建VMware vCloud的硬件基础设施为30台浪潮英信NF5240M3服务器和一个HP Storage Works HSV300存储服务器。虚拟化计算资源由浪潮NF5240M3提供,虚拟化存储资源由浪潮NF5240M3和HP Storage Works HSV300共同提供。在VMware vCloud平台上的配置与操作都是通过其虚拟化管理工具客户端VMware vSphere Client实现。
每一个虚拟机在创建时必须选择宿主服务器,只有同一宿主服务器上的虚拟机才能共享CPU和内存资源,所谓虚拟计算资源共享仅仅是针对同一服务器而言的,并不能跨越实体服务器。但是存储虚拟资源的共享却是可以跨服务器的,一台服务器上的虚拟机可以访问其他服务器上的存储资源,甚至在一台虚拟机定义好了以后,也可以追加存储容量。在确定了宿主服务器以后,用户还需要配置的信息有虚拟机名称、存储位置和大小、虚拟机版本、操作系统类型(Windows/Linux)、虚拟插槽数、每个插槽的内核数、内存大小、网卡个数及适配器类型、SCSI控制器类型等。定义好虚拟机后,从控制台启动虚拟机并进行操作系统的安装。之后用户便可以通过SSH协议(Linux)或者RDP协议(Windows)来远程操控已建立好的虚拟机。由于vSphere Client是在一个局域网内构建虚拟机群,所以基本上不存在网络通信延迟的问题,用户可以像操作本机一样远程操作其自定义的虚拟机,并在此虚拟机上安装开发平台进行应用程序的开发。
LoadRunner并发测试:
为了对本发明云平台的各项功能进行性能上的负载测试,构建了LoadRunner测试集群,LoadRunner是惠普公司的推出的系统性能测试工具,其通过模拟成千上万的虚拟用户在同一时刻访问某一系统,以实现对云计算平台的性能测试需求。监控检索系统的最大并发数、查询响应时间、系统吞吐量以及每秒点击数,同时获取云平台系统的cpu利用率、每秒钟进程切换数、每秒中断数、内存使用量、磁盘传输速率、网络流量等系统性能指标。
测试集群中控制节点LoadRunner Controller采用的是一台Dell Optiplex780计算机,分析节点Analysis采用的是一台HP Compaq dc7900计算机,负载发生器LoadGenerator采用的是15台HP T505瘦客户机Thin Client。传统的LoadRunner测试方法,将控制器和负载发生器安装在同一宿主主机上,这种模式在大量用户并发测试时很容易因自身测试工具的性能因素而错误的低估了被测试平台的性能。本发明构建的LoadRunner测试集群实现了控制器与负载发生器的分离,使得控制器只负责测试脚本Script的制作、测试场景Scenario的定义、测试结果的收集Collection与统计Statistical。而负载发生器则依据控制器指定的脚本产生特定的虚拟用户Virtual User及数量。
在LoadRunner测试过程中,第一步就是测试脚本的制作,脚本定义的是虚拟用户在测试过程中的具体操作,其本质是一段代码,定义的是多个有序动作Action的集合,在LoadRunner测试工具中,通过绑定浏览器Internet Explorer可以轻易的实现脚本的自动录制,即直接将用户在网页中的操作转换为脚本代码,脚本录制的模式模拟了在正常条件下用户对一个系统的访问行为。脚本制作完成后进行回放,并为不同的事务设置不同的事务名称,配置脚本执行逻辑。第二步就是场景的制作,测试场景就是脚本执行规范,主要有虚拟用户的初始化,需要定义的虚拟用户数量,启动规则,即每秒启动几个,整个测试的持续时间,虚拟用户的结束规则,即每秒结束几个。第三步就是将测试中的虚拟用户平均分配到多个负载发生器并启动测试。LoadRunner控制器会实时的回收测试结果,并动态的绘制成测试曲线图。

Claims (5)

1.一种基于联邦式检索的云平台并发性能测试方法,该测试方法基于云平台环境下构建的联邦式检索系统实现,该云平台环境下构建的联邦式检索系统由下向上依次包括物理资源层、虚拟资源层、数据访问层、对外服务层、安全链路层、业务功能层和系统表示层,其中物理资源层采用云平台环境下的物理资源实现,该物理资源包括若干台服务器、网络设备以及存储设备;虚拟资源层采用云平台环境下的云计算虚拟资源池实现,云计算虚拟资源池由云平台环境下的物理资源虚拟化而来;数据访问层、对外服务层、安全链路层和业务功能层采用云平台环境下的软件平台实现;其特征在于,
该测试方法分别测试云平台的查询事务响应时间、最大并发用户数和查询事务每秒事务数,用来评价云平台并发性能,具体如下:
查询事务响应时间的测试方法为:首先由负载发生端向云平台环境下构建的联邦式检索系统发起检索请求,记录此发起时间t1,所述联邦式检索系统接收到检索请求后,按照负载发生端的请求数据,进行相应计算,然后将计算结果作为检索结果返回给负载发生端,并记录下负载发生端获得检索结果的时间t2,计算获得当前查询事务响应时间t2-t1;计算预设置时间段内的当前查询事务响应时间的平均值,将该平均值作为预设置时间段内的查询事务响应时间;
最大并发用户数的测试方法为:在云平台的测试场景中,使负载发生端的并发用户数按照梯度递增方式,依次在每△t时间段内增加m个,对云平台环境下的联邦式检索系统发起压力测试,在当前△t时间段内增加m个并发用户数后的测试过程中,有超过5%的关键字检索事务的响应时间大于1s,并持续△t1时间段,其中△t>△t1,则将该当前△t时间段内的所有并发用户数作为云平台的最大并发用户数;
查询事务每秒事务数的测试方法为:在测试场景中,使当前关键字检索事务占全部事务的比例为65%,统计每秒通过的当前关键字检索事务数作为查询事务每秒事务数。
2.根据权利要求1所述的基于联邦式检索的云平台并发性能测试方法,其特征在于,所述负载发生端包括多个负载模拟客户端,该多个负载模拟客户端以并发的方式与云平台进行信息交互。
3.根据权利要求2所述的基于联邦式检索的云平台并发性能测试方法,其特征在于,所述联邦式检索系统对检索请求的处理方法为:
联邦式检索系统接收到检索请求后,首先根据检索请求的查询关键词和检索数据类型从当前所有能提供检索服务的数据源中选择检索服务源;
在调用语义冲突调解Web服务处理用户的检索请求后,将检索请求转发给选定的检索服务源;
各个分布式检索Web服务依据本地数据库及索引文档完成单个节点的信息检索,并将检索结果的部分信息返回给联邦式检索系统;
联邦式检索系统将分布式检索Web服务返回的结果集排序后,以统一标准的Web格式进行显示。
4.根据权利要求3所述的基于联邦式检索的云平台并发性能测试方法,其特征在于,
所述负载发生端采用分布式的负载发生集群实现,该负载发生集群采用主从模式进行管理;在进行压力测试前制作相应的测试脚本,负载发生端按照相应的规则执行该测试脚本;所述主从模式的主节点进行测试场景的定义,并设定虚拟用户数及增长模式;在进行测试的过程中,负载发生端收集测试过程中的各项测试数据;测试结束后,将测试数据发送给主节点进行处理,获得测试结果。
5.根据权利要求4所述的基于联邦式检索的云平台并发性能测试方法,其特征在于,
在云平台性能测试过程中,首先进行测试脚本的制作,以定义虚拟用户在测试过程中的具体操作;脚本制作完成后进行回放,并为不同的事务设置不同的事务名称,配置脚本执行逻辑;然后进行测试场景的定义,用于确定脚本执行规范,该规范包括虚拟用户的初始化、需要定义的虚拟用户数量、启动规则、测试持续时间及虚拟用户的结束规则;最后将测试中的虚拟用户平均分配到负载发生端并启动测试。
CN201410614018.0A 2014-11-04 2014-11-04 基于联邦式检索的云平台并发性能测试方法 Active CN104331477B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410614018.0A CN104331477B (zh) 2014-11-04 2014-11-04 基于联邦式检索的云平台并发性能测试方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410614018.0A CN104331477B (zh) 2014-11-04 2014-11-04 基于联邦式检索的云平台并发性能测试方法

Publications (2)

Publication Number Publication Date
CN104331477A CN104331477A (zh) 2015-02-04
CN104331477B true CN104331477B (zh) 2017-08-25

Family

ID=52406204

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410614018.0A Active CN104331477B (zh) 2014-11-04 2014-11-04 基于联邦式检索的云平台并发性能测试方法

Country Status (1)

Country Link
CN (1) CN104331477B (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104794007A (zh) * 2015-04-29 2015-07-22 中国电力科学研究院 一种基于电力大数据平台海量数据并行处理的测试方法
CN106708818A (zh) * 2015-07-17 2017-05-24 阿里巴巴集团控股有限公司 一种压力测试方法和系统
CN106470133B (zh) * 2015-08-20 2019-12-03 菜鸟智能物流控股有限公司 系统压力测试方法及装置
CN106649057A (zh) * 2015-10-28 2017-05-10 北京国双科技有限公司 一种服务器压力测试的方法及装置
CN105930260B (zh) * 2015-12-23 2018-12-28 中国银联股份有限公司 一种系统可用性测试方法及装置
CN106908258A (zh) * 2015-12-23 2017-06-30 阿里巴巴集团控股有限公司 性能测试的方法及装置
TWI606349B (zh) 2016-12-21 2017-11-21 財團法人工業技術研究院 線上雲端服務處理系統與線上評測方法及其電腦程式產品
CN106845781A (zh) * 2016-12-22 2017-06-13 中信银行股份有限公司 用于业务测试的场景及流程的生成系统和方法
CN106815324B (zh) * 2016-12-27 2020-08-04 中电万维信息技术有限责任公司 一种基于云计算对象存储快速检索系统
CN106934031B (zh) * 2017-03-14 2020-03-13 中国银行股份有限公司 实时处理系统中热点记录的监测和处理方法及装置
CN107547261B (zh) * 2017-07-24 2020-10-27 华为技术有限公司 云平台性能测试方法及装置
CN109934060A (zh) * 2017-12-15 2019-06-25 航天信息股份有限公司 一种指纹比对系统的关键性能指标的测评系统和方法
CN109460354B (zh) * 2017-12-28 2021-09-24 南京邮电大学 一种基于rdf推理进行测试用例约简的方法
CN108845914A (zh) * 2018-06-29 2018-11-20 平安科技(深圳)有限公司 性能测试报告的生成方法、电子装置及可读存储介质
CN109684196B (zh) * 2018-11-01 2024-01-09 北京中清龙图网络技术有限公司 一种测试方法及装置
CN111435344B (zh) * 2019-01-15 2023-03-21 中国石油集团川庆钻探工程有限公司长庆钻井总公司 一种基于大数据的钻井提速影响因素分析模型
CN110362457B (zh) * 2019-05-08 2023-03-28 阜阳师范学院 一种基于休假排队的三值光学计算机性能评价方法及系统
CN110245147B (zh) * 2019-06-19 2021-08-13 腾讯科技(深圳)有限公司 区块链数据处理方法、装置、可读存储介质和计算机设备
CN110716875A (zh) * 2019-09-26 2020-01-21 北京计算机技术及应用研究所 一种国产办公环境下基于反馈机制的并发测试方法
CN112765014B (zh) * 2021-01-04 2024-02-20 光大兴陇信托有限责任公司 一种用于多用户同时操作的自动测试系统及工作方法
CN114500349B (zh) * 2021-12-27 2023-08-08 天翼云科技有限公司 一种云平台混沌测试方法及装置
CN114036184A (zh) * 2022-01-11 2022-02-11 杭州涂鸦信息技术有限公司 联邦分布式查询方法、系统及计算机可读存储介质
CN116016255B (zh) * 2022-12-29 2023-08-15 天津大学 一种基于动态代理和智能合约的通用区块链性能评测方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101576846A (zh) * 2008-05-09 2009-11-11 北京世纪拓远软件科技发展有限公司 软件的性能检测方法
CN101882105A (zh) * 2010-06-01 2010-11-10 华南理工大学 一种测试Web网页并发环境下响应时间的方法
CN102541723A (zh) * 2010-12-08 2012-07-04 上海杉达学院 用于软件测试的自动化测试装置
CN103139006A (zh) * 2011-12-05 2013-06-05 上海博腾信息科技有限公司 基于web服务的自动化测试装置及方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4849933B2 (ja) * 2006-03-29 2012-01-11 富士通株式会社 ウェブ負荷試験方法及びウェブ負荷試験プログラム
US20090240759A1 (en) * 2008-03-19 2009-09-24 Takashi Miyamoto Methods and Apparatus for Web Application Testing Using Proxy

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101576846A (zh) * 2008-05-09 2009-11-11 北京世纪拓远软件科技发展有限公司 软件的性能检测方法
CN101882105A (zh) * 2010-06-01 2010-11-10 华南理工大学 一种测试Web网页并发环境下响应时间的方法
CN102541723A (zh) * 2010-12-08 2012-07-04 上海杉达学院 用于软件测试的自动化测试装置
CN103139006A (zh) * 2011-12-05 2013-06-05 上海博腾信息科技有限公司 基于web服务的自动化测试装置及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王倩倩 等.基于HTTP的Web服务响应时间测试.《南京邮电学院学报》.2005,第25卷(第6期),第79-83页. *

Also Published As

Publication number Publication date
CN104331477A (zh) 2015-02-04

Similar Documents

Publication Publication Date Title
CN104331477B (zh) 基于联邦式检索的云平台并发性能测试方法
US9367601B2 (en) Cost-based optimization of configuration parameters and cluster sizing for hadoop
Bakshy et al. Designing and deploying online field experiments
CN104954453B (zh) 基于云计算的数据挖掘rest服务平台
Varghese et al. Container-based cloud virtual machine benchmarking
CN110740079B (zh) 一种面向分布式调度系统的全链路基准测试系统
CN108509453B (zh) 一种信息处理方法及装置
CN109151824A (zh) 一种基于5g架构的图书馆数据服务扩展系统及方法
US20230018975A1 (en) Monolith database to distributed database transformation
Varghese et al. DocLite: A docker-based lightweight cloud benchmarking tool
Bernal et al. Improving cloud architectures using UML profiles and M2T transformation techniques
JP2023542380A (ja) プライベートクラウドコンテナクラスタ遺伝子情報の取得方法及び装置
CN106257447B (zh) 云存储服务器的视频存储及检索方法、视频云存储系统
Wrzeszcz et al. Towards trasparent data access with context awareness
Kharb et al. A contingent exploration on big data tools
US11960488B2 (en) Join queries in data virtualization-based architecture
Bashir et al. A survey of grid-based searching techniques for large scale distributed data
Ma A survey of big data for IoT in cloud computing
Ribeiro et al. A scalable data integration architecture for smart cities: implementation and evaluation
Riazi et al. GraphFlow: Workflow-based big graph processing
Aldailamy et al. Distributed indexing: performance analysis of solr, terrier and katta information retrievals
Dai et al. GraphTrek: asynchronous graph traversal for property graph-based metadata management
Chen et al. Analysis of memory constrained live provenance
Ren et al. Distributed data mining in grid computing environment
Peltomaa Elasticsearch-based data management proof of concept for continuous integration

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant