一种基于用户大数据行为反馈数据的分布式数据库测试方法和系统与流程

文档序号:17721052发布日期:2019-05-22 02:09阅读:226来源:国知局
本发明涉及大数据
技术领域
:,具体涉及一种基于用户大数据行为反馈数据的分布式数据库测试方法和系统。
背景技术
::分布式数据库是随着在线操作性的大数据的发展而诞生的,强调满足大数据在实时高并发请求压力下的交互业务场景。“大数据”应用正在被更多的人接受,又由于分布式数据库的落地更简单,开发运维上更接近与传统数据管理系统。因此近年来分布式数据库市场也在快速地发展壮大。分布式数据库是指利用高速计算机网络将物理上分散的多个数据存储单元连接起来组成一个逻辑上统一的数据库。分布式数据库的基本思想是将原来集中式数据库中的数据分散存储到多个通过网络连接的数据存储节点上,以获取更大的存储容量和更高的并发访问量。近年来,随着数据量的高速增长,分布式数据库技术也得到了快速的发展,传统的关系型数据库开始从集中式模型向分布式架构发展,基于关系型的分布式数据库在保留了传统数据库的数据模型和基本特征下,从集中式存储走向分布式存储,从集中式计算走向分布式计算。另一方面,随着数据量越来越大,关系型数据库开始暴露出一些难以克服的缺点,以nosql为代表的非关系型数据库,其高可扩展性、高并发性等优势出现了快速发展,一时间市场上出现了大量的key-value存储系统、文档型数据库等nosql数据库产品。nosql类型数据库正日渐成为大数据时代下分布式数据库领域的主力。目前,已经有很多关系型数据库、传统数据库的测试方法、标准,但对于新兴的分布式数据库系统却缺乏系统的测试理论和方法。技术实现要素:本发明的技术任务是提供一种基于用户大数据行为反馈数据的分布式数据库测试方法和系统,通过分析数据处理能力和可扩展性进行分布式数据库的测试,形成标准、规范的测试方法。本发明解决其技术问题所采用的技术方案是:一种基于用户大数据行为反馈数据的分布式数据库测试方法,通过模拟数据库常规操作,获取性能指标来测试数据库的数据处理能力;通过模拟储容量达到峰值,查看能否平滑扩展来测试数据库的可扩展性;通过测试数据处理能力和可扩展性实现对分布式数据库系统的测试。模拟大数据用户行为,基于大数据用户行为进行分析从而达到对分布式数据库进行测试的目的。进一步的,对分布式数据库系统的测试包括高扩展性、高并发性、高可用性和性能测试,高扩展性:模拟数量达到各数据库节点的允许峰值,检验分布式数据库系统存储节点是否能平滑扩展;高并发性:模拟高并发,同时对分布式数据库系统进行随机读写,统计分布式数据库系统的平均事务处理时间;高可用性:模拟分布式数据库系统中单个节点、多个节点故障,记录分布式数据库是否正常在用;性能:模拟用户大数据运算和存储,记录其响应时间。具体的,所述高扩展性的具体测试方法如下:1)、使用tpc-ds测试工具,产生测试数据,查看后台,分布式数据库的节点是否增加;2)、使用tpc-ds测试工具,模拟高并发进行数据查询,查看后台,分布式数据库的节点是否增加。具体的,使用tpc-ds测试工具,产生测试数据时,生成的数据大于分布式数据库系统总的存储容量。进一步的,使用tpc-ds测试工具,模拟高并发进行数据查询时,各节点的性能达到约定阈值,模拟进程数100。具体的,所述高并发性的具体测试方法如下:1)、使用tpc-ds测试工具,模拟高并发进行数据查询;2)、查看分布式数据库系统的资源消耗情况,反应能力。优选的,所述模拟高并发进行数据查询,包括100并发、1000并发和10000并发。具体的,所述高可用性的具体测试方法为,手动将单个节点、2各节点、…n-1个节点从集群中脱离出来,查看数据库服务是否正常。具体的,所述性能测试具体方法如下:1)、生成测试数据;2)、建立测试所需的表结构,根据数据库的不同变更sql语句;3)、清理缓存;4)、执行测试sql。本发明还公开了一种基于用户大数据行为反馈数据的分布式数据库测试系统,包括高扩展性测试模块、高并发性测试模块、高可用性测试模块和性能测试模块,高扩展性测试模块用于模拟数量达到各数据库节点的允许峰值,检验分布式数据库系统存储节点是否能平滑扩展;高并发性测试模块用于模拟高并发,同时对分布式数据库系统进行随机读写,统计分布式数据库系统的平均事务处理时间;高可用性测试模块用于模拟分布式数据库系统中单个节点、多个节点故障,记录分布式数据库是否正常在用;性能测试模块用于模拟用户大数据运算和存储,记录其响应时间。其中,高扩展性测试模块的具体测试方法如下:1)、使用tpc-ds测试工具,产生测试数据,查看后台,分布式数据库的节点是否增加;2)、使用tpc-ds测试工具,模拟高并发进行数据查询,查看后台,分布式数据库的节点是否增加。高并发性测试模块的具体测试方法如下:1)、使用tpc-ds测试工具,模拟高并发进行数据查询;2)、查看分布式数据库系统的资源消耗情况,反应能力。高可用性测试模块的具体测试方法为,手动将单个节点、2各节点、…n-1个节点从集群中脱离出来,查看数据库服务是否正常。性能测试模块的具体方法如下:1)、生成测试数据;2)、建立测试所需的表结构,根据数据库的不同变更sql语句;3)、清理缓存;4)、执行测试sql。本发明的一种基于用户大数据行为反馈数据的分布式数据库测试方法和系统与现有技术相比,具有以下有益效果:基于用户需求,分布式数据库的处理能力、高可靠性以及可扩展性等能力对于分布式数据库的性能来说非常重要,该方法从高扩展性、高可用性、高并发性和性能四个方面对分布式数据库系统进行有效的评估,形成标准、通用的基于用户大数据行为分析的分布式数据库测试,测试方便,可靠,为现在新兴的分布式数据库系统提供测试方法,有益于分布式数据库的发展和快速推广。具体实施方式下面结合具体实施例对本发明作进一步说明。一种基于用户大数据行为反馈数据的分布式数据库测试方法,通过模拟数据库常规操作,获取性能指标来测试数据库的数据处理能力;通过模拟储容量达到峰值,查看能否平滑扩展来测试数据库的可扩展性。通过测试数据处理能力和可扩展性实现对分布式数据库系统的测试。模拟大数据用户行为,基于大数据用户行为进行分析从而达到对分布式数据库进行测试的目的。对分布式数据库系统的测试包括高扩展性、高并发性、高可用性和性能测试。高扩展性:模拟数量达到各数据库节点的允许峰值,检验分布式数据库系统存储节点是否能平滑扩展;高并发性:模拟高并发,同时对分布式数据库系统进行随机读写,统计分布式数据库系统的平均事务处理时间;高可用性:模拟分布式数据库系统中单个节点、多个节点故障,记录分布式数据库是否正常在用;性能:模拟用户大数据运算和存储,记录其响应时间。其中,所述高扩展性的具体测试方法如下:1)、使用tpc-ds测试工具,产生测试数据,生成的数据大于分布式数据库系统总的存储容量./dsdgen-scale10000-dir/dfs/data查看后台,分布式数据库的节点是否增加;2)、使用tpc-ds测试工具,模拟高并发进行数据查询,各节点的性能达到约定阈值,模拟进程数100select*from(selecti_manufact_id,sum(ss_sales_price)sum_sales,avg(sum(ss_sales_price))over(partitionbyi_manufact_id)avg_quarterly_salesfromitem,store_sales,date_dim,storewheress_item_sk=i_item_skandss_sold_date_sk=d_date_skandss_store_sk=s_store_skandd_month_seqin(1212,1212+1,1212+2,1212+3,1212+4,1212+5,1212+6,1212+7,1212+8,1212+9,1212+10,1212+11)and((i_categoryin('books','children','electronics')andi_classin('personal','portable','reference','self-help')andi_brandin('scholaramalgamalg#14','scholaramalgamalg#7','exportiunivamalg#9','scholaramalgamalg#9'))or(i_categoryin('women','music','men')andi_classin('accessories','classical','fragrances','pants')andi_brandin('amalgimporto#1’,’edupackscholar#1','exportiimporto#1',’importoamalg#1')))groupbyi_manufact_id,d_qoy)tmp1wherecasewhenavg_quarterly_sales>0thenabs(sum_sales-avg_quarterly_sales)/avg_quarterly_saleselsenullend>0.1orderbyavg_quarterly_sales,sum_sales,i_manufact_idlimit100;查看后台,分布式数据库的节点是否增加。所述高并发性的具体测试方法如下:1)、使用tpc-ds测试工具,模拟高并发进行数据查询;包括100并发、1000并发和10000并发等select*from(selecti_manufact_id,sum(ss_sales_price)sum_sales,avg(sum(ss_sales_price))over(partitionbyi_manufact_id)avg_quarterly_salesfromitem,store_sales,date_dim,storewheress_item_sk=i_item_skandss_sold_date_sk=d_date_skandss_store_sk=s_store_skandd_month_seqin(1212,1212+1,1212+2,1212+3,1212+4,1212+5,1212+6,1212+7,1212+8,1212+9,1212+10,1212+11)and((i_categoryin('books’,'children','electronics')andi_classin('personal','portable','reference','self-help')andi_brandin('scholaramalgamalg#14','scholaramalgamalg#7','exportiunivamalg#9','scholaramalgamalg#9'))or(i_categoryin('women','music','men')andi_classin('accessories','classical','fragrances','pants')andi_brandin('amalgimporto#1','edupackscholar#1','exportiimporto#1','importoamalg#1')))groupbyi_manufact_id,d_qoy)tmp1wherecasewhenavg_quarterly_sales>0thenabs(sum_sales-avg_quarterly_sales)/avg_quarterly_saleselsenullend>0.1orderbyavg_quarterly_sales,sum_sales,i_manufact_idlimit100;2)、查看分布式数据库系统的资源消耗情况,反应能力。所述高可用性的具体测试方法为,手动将单个节点、2各节点、…n-1个节点从集群中脱离出来,查看数据库服务是否正常。所述性能测试具体方法如下:1)、生成测试数据(如上步骤);2)、建立测试所需的表结构,根据数据库的不同变更sql语句;3)、清理缓存;4)、执行测试sql。在本发明的一个实施例中,一种基于用户大数据行为反馈数据的分布式数据库测试系统,包括高扩展性测试模块、高并发性测试模块、高可用性测试模块和性能测试模块,高扩展性测试模块用于模拟数量达到各数据库节点的允许峰值,检验分布式数据库系统存储节点是否能平滑扩展;高并发性测试模块用于模拟高并发,同时对分布式数据库系统进行随机读写,统计分布式数据库系统的平均事务处理时间;高可用性测试模块用于模拟分布式数据库系统中单个节点、多个节点故障,记录分布式数据库是否正常在用;性能测试模块用于模拟用户大数据运算和存储,记录其响应时间。其中,高扩展性测试模块的具体测试方法如下:1)、使用tpc-ds测试工具,产生测试数据(生成的数据大于分布式数据库系统总的存储容量),查看后台,分布式数据库的节点是否增加;2)、使用tpc-ds测试工具,模拟高并发进行数据查询(各节点的性能达到约定阈值,模拟进程数100),查看后台,分布式数据库的节点是否增加。高并发性测试模块的具体测试方法如下:1)、使用tpc-ds测试工具,模拟高并发进行数据查询(100并发、1000并发和10000并发等);2)、查看分布式数据库系统的资源消耗情况,反应能力。高可用性测试模块的具体测试方法为,手动将单个节点、2各节点、…n-1个节点从集群中脱离出来,查看数据库服务是否正常。性能测试模块的具体方法如下:1)、生成测试数据;2)、建立测试所需的表结构,根据数据库的不同变更sql语句;3)、清理缓存;4)、执行测试sql。通过上面具体实施方式,所述
技术领域
:的技术人员可容易的实现本发明。但是应当理解,本发明并不限于上述的具体实施方式。在公开的实施方式的基础上,所述
技术领域
:的技术人员可任意组合不同的技术特征,从而实现不同的技术方案。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1