数据系统的测试系统和测试方法技术方案

技术编号:18398318 阅读:28 留言:0更新日期:2018-07-08 19:15
本发明专利技术提供了一种数据系统的测试系统和测试方法。数据系统的测试系统包括:用户层,用于为用户提供访问所述测试系统的方式;中间应用层,用于从所述用户层接收所述用户提交的请求,并且对于底层大数据平台协调多个任务进行请求的解析和处理;以及底层大数据平台,为所述数据系统的数据存储层并且包括本地文件系统、分布式文件系统以及数据库,其中,所述中间应用层进一步包括数据访问接口,用于读取和访问各类大数据平台的数据和文件。本发明专利技术面向海量数据加载存储检索,针对大数据软件的特点,提供了全面完善的测试系统。

【技术实现步骤摘要】
数据系统的测试系统和测试方法
本专利技术一般地涉及计算机
,更具体地,数据系统的测试系统和测试方法。
技术介绍
随着开源MapReduce、HDFS、HBase、Spark等技术的商用化,大数据管理技术得到了突飞猛进的发展,随着大数据分析平台的不断建设,越来越多大数据存储计算系统将在用户的信息化系统中使用,如何客观地比较不同大数据系统,即大数据系统的评测,成为一个重要的技术方向。事务性能管理委员会(TPC,TransactionProcessingCouncil)是目前最知名的数据管理系统评测基准标准化组织。在过去二十多年间,该机构发布了多款数据库评测基准,如TPC-A、TPC-D、TPC-H和TPC-DS,在业界得到了广泛应用,最近一次发布的TPC-DS2.X,是业界的第一套面向基于SQL之大数据系统的标准基准测试,其中包括Hadoop以及基于ApacheSpark的各类系统,外加关系型数据库管理系统(简称RDBMS),使用星形模型和雪花模型的混合模型构建成决策支持的数据仓库,使用更具多样性的查询模板来准确模拟决策支持系统面对的各种操作,几乎每个操作都有很高的IO负载和CPU计算需求。现有的一系列评测基准,在研发出来以后的几十年间,没有大的改动,有利于人们的理解和使用,进行不同系统的纵向比较(不同时代的硬件软件系统的性能比较)和横向比较(同一时代的不同厂家的系统之间的比较)。但是,TPC系列评测基准对于评测近几年出现的各类大数据系统是不够用的。因为大数据管理和分析系统(包括各种NoSQL数据库、S3标准)是近几年才研发出来的,在面向的应用、采用的数据模型、一致性约束等方面,和传统的数据库不同。大数据本身以及大数据之上的应用,随着时间不断演化,需要新的大数据评测基准来对不同系统进行客观深入的评测。
技术实现思路
本专利技术针对现有技术中所存在的缺陷,提供了能够解决上述问题的数据系统的测试系统和测试方法。根据本专利技术的一方面,提供了一种数据系统的测试系统,包括:用户层,用于为用户提供访问所述测试系统的方式;中间应用层,用于从所述用户层接收所述用户提交的请求,并且对于底层存储平台协调多个任务进行请求的解析和处理;以及底层大数据平台,为所述数据系统的数据存储层并且包括本地文件系统、分布式文件系统以及数据库,其中,所述中间应用层进一步包括数据访问接口,用于读取和访问各类大数据平台的数据和文件。优选地,所述中间应用层还包括:核心服务模块,用于提供数据服务,处理接收到的所述用户请求并将分解的请求分发到各个子任务模块;以及服务的公共模块,用于为各种服务提供辅助的日志管理、异常处理、服务异常的监控。优选地,所述核心服务模块包括:数据生成服务子模块,用于提供测试数据和测试任务;任务提交服务子模块,用于将所述用户的测试请求提交到相应的大数据平台;结果比对服务子模块,用于判断各个测试任务的正确性和技术性能指标;以及资源监控服务子模块,用于采集被测系统的负载信息,对分析所述被测系统的性能指标提供数据支撑。优选地,所述测试系统还包括测试基准模块,用于基于数据类型、样本数据、SQL标准、和标准接口进行设计,在所述数据类型、所述样本数据、所述SQL标准、和所述标准接口的基础上扩展功能基准、性能基准、稳定性基准和可靠性基准。优选地,所述数据生成服务子模块用于提供测试数据进一步包括:生成测试系统提交所述测试任务所依赖的样本数据、预期结果数据,其中,根据所述测试基准模块中的数据样本,保持真实数据的分布特征并且根据翻倍增加原则和参数控制数据大小、数据格式和结构以用于不同规模的测试环境。优选地,所述翻倍增加原则包括:在所述样本数据翻倍时,保证一列数据完全不同以保证每条记录不同。优选地,所述翻倍增加原则包括:采用所述样本数据的同类型列经过交叉运算进行所述样本数据的翻倍,以保证数据特性不变。优选地,所述数据生成服务子模块包括:测试数据生成、查询任务生成、查询结果集生成以及依赖建表生成,其中,所述测试数据生成选择所述测试系统自带的样本数据或者根据所述翻倍增加原则重新生成新的样本数据。优选地,所述样本数据包括正常数据和异常数据,其中,所述异常数据用于测试系统的容错性和数据倾斜的异常情况。优选地,所述数据生成服务子模块包括:测试数据生成、查询任务生成、查询结果集生成以及依赖建表生成。优选地,所述任务提交服务子模块用于将所述用户的测试请求提交到相应的大数据平台进一步包括:在所述测试任务所依赖的表、数据已经生成并且准备工作已经完成之后,将所述用户的测试请求提交到相应的大数据平台。优选地,所述任务提交服务子模块包括加载任务提交、查询任务提交和其他任务提交。优选地,所述结果比对服务子模块用于判断各个测试任务的正确性和技术性能指标进一步包括提供加载类和查询类的测试任务的正确性比对和相关指标的计算服务。优选地,所述结果比对服务子模块包括查询结果判断、加载结果判断以及其他测试任务结果判断。优选地,所述资源监控服务子模块用于采集被测系统的负载信息进一步包括提供大数据集群节点及节点上各组件关键服务的负载和资源使用情况的监控。根据本专利技术的另一方面,提供了一种数据系统的测试方法,包括:生成测试任务和所述测试任务所依赖的数据;将所述测试任务提交给大数据平台;以及在所述测试任务完成之后,输出所述测试任务的测试结果。优选地,测试方法进一步包括:在所述测试任务执行期间监控大数据集群节点及节点上各组件关键服务的负载和资源使用情况。优选地,当所述测试任务为加载测试任务时,进一步包括:生成加载测试任务和加载测试所需要的原始测试数据;将所述加载测试任务提交给所述大数据平台;以及当所述加载测试任务完成后,所述大数据平台返回信息,并根据返回的信息计算加载的性能指标。优选地,当所述测试任务为查询测试任务时,进一步包括:生成查询测试任务、查询结果集对应的原始数据和结果集;将所述查询测试任务提交给所述大数据平台;以及当所述查询测试任务完成后,所述大数据平台返回信息,并根据返回的信息计算查询相关的性能指标。优选地,测试方法进一步包括:在所述查询测试任务执行期间,持续采集所述大数据平台的节点和服务信息,并输出负载信息,其中,所述负载信息结合所述性能指标以输出测试结果评估报告。本专利技术所提供的数据系统的测试系统和测试方法,面向海量数据加载存储检索,针对大数据软件的特点,提供了全面完善的测试方法,弥补了传统针对结构化数据库测试方法的不足;自动化的测试系统,针对各项测试点,实现了复杂测试过程的自动化,覆盖了各类型的系统应用场景,具有很好的应用效果。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是根据本专利技术的实施例的数据系统的测试系统的简化结构图;图2是根据本专利技术的实施例的测试系统的结构图;图3是根据本专利技术的实施例的测试系统的功能结构图;图4是根据本专利技术的实施例的交互功能模块的结构图;图5是根据本专利技术的实施例的加载测试任务的流程图;图6是根据本专利技术的实施例的查询测试任务的流程图;图7是根本文档来自技高网
...

【技术保护点】
1.一种数据系统的测试系统,其特征在于,包括:用户层,用于为用户提供访问所述测试系统的方式;中间应用层,用于从所述用户层接收所述用户提交的请求,并且对于底层大数据平台协调多个任务进行请求的解析和处理;以及底层大数据平台,为所述数据系统的数据存储层并且包括本地文件系统、分布式文件系统以及数据库,其中,所述中间应用层进一步包括数据访问接口,用于读取和访问各类大数据平台的数据和文件。

【技术特征摘要】
1.一种数据系统的测试系统,其特征在于,包括:用户层,用于为用户提供访问所述测试系统的方式;中间应用层,用于从所述用户层接收所述用户提交的请求,并且对于底层大数据平台协调多个任务进行请求的解析和处理;以及底层大数据平台,为所述数据系统的数据存储层并且包括本地文件系统、分布式文件系统以及数据库,其中,所述中间应用层进一步包括数据访问接口,用于读取和访问各类大数据平台的数据和文件。2.根据权利要求1所述的测试系统,其特征在于,所述中间应用层还包括:核心服务模块,用于提供数据服务,处理接收到的所述用户请求并将分解的请求分发到各个子任务模块;以及服务的公共模块,用于为各种服务提供辅助的日志管理、异常处理、服务异常的监控。3.根据权利要求2所述的测试系统,其特征在于,所述核心服务模块包括:数据生成服务子模块,用于提供测试数据和测试任务;任务提交服务子模块,用于将所述用户的测试请求提交到相应的大数据平台;结果比对服务子模块,用于判断各个测试任务的正确性和技术性能指标;以及资源监控服务子模块,用于采集被测系统的负载信息,对分析所述被测系统的性能指标提供数据支撑。4.根据权利要求3所述的测试系统,其特征在于,所述测试系统还包括测试基准模块,用于基于数据类型、样本数据、SQL标准、和标准接口进行设计,在所述数据类型、所述样本数据、所述SQL标准、和所述标准接口的基础上扩展功能基准、性能基准、稳定性基准和可靠性基准。5.根据权利要求4所述的测试系统,其特征在于,所述数据生成服务子模块用于提供测试数据进一步包括:生成测试系统提交所述测试任务所依赖的样本数据、预期结果数据,其中,根据所述测试基准模块中的数据样本,保持真实数据的分布特征并且根据翻倍增加原则和参数控制数据大小、数据格式和结构以用于不同规模的测试环境。6.根据权利要求5所述的测试系统,其特征在于,所述翻倍增加原则包括:在所述样本数据翻倍时,保证一列数据完全不同以保证每条记录不同。7.根据权利要求5所述的测试系统,其特征在于,所述翻倍增加原则包括:采用所述样本数据的同类型列经过交叉运算进行所述样本数据的翻倍,以保证数据特性不变。8.根据权利要求5所述的测试系统,其特征在于,所述样本数据包括正常数据和异常数据,其中,所述异常数据用于测试系统的容错性和数据倾斜的异常情况。9.根据权利要求5所述的测试系统,其特征在于,所述数据生成服务子模块包括:测试数据生成、查询任务生成、查询结...

【专利技术属性】
技术研发人员:郭庆付戈刘倩狄静舒张建磊
申请(专利权)人:曙光信息产业北京有限公司国家计算机网络与信息安全管理中心
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1