- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
大数据测试方法和工具梳理
1 什么是大数据
?? HYPERLINK "/base/hadoop" \o "Hadoop知识库" \t "_blank" 大数据是一个大的数据集合,通过传统的计算技术无法进行处理。这些数据集的 HYPERLINK "/base/softwaretest" \o "软件测试知识库" \t "_blank" 测试需要使用各种工具、技术和框架进行处理。大数据涉及数据创建、存储、检索、分析,而且它在数量、多样性、速度方法都很出色。
2 大数据测试类型
测试大数据应用程序更多的是验证其数据处理,而不是测试软件产品的个别功能。当涉及到大数据测试时,性能和功能测试是关键。
在大数据测试中,QA工程师使用集群和其他组件来验证对TB级数据的成功处理。因为处理非常快,所以它需要高水平的测试技能。处理可以是三种类型:批量、实时、交互。
与此同时,数据质量也是大数据测试的一个重要因素。在测试应用程序之前,有必要检查数据的质量,并将其视为 HYPERLINK "/base/mysql" \o "MySQL知识库" \t "_blank" 数据库测试的一部分。它涉及检查各种字段,如一致性,准确性,重复,一致性,有效性,数据完整性等。
3 大数据测试实现被分成三个步
3.1 步骤1:数据分段验证
大数据测试的第一步,也称为pre-Hadoop阶段涉及过程验证。
来自各种来源(如RDBMS,博客,社交媒体等)的数据应进行验证,以确保正确的数据被拉入系统
将源数据与推送到Hadoop系统中的数据进行比较,以确保它们匹配
验证正确的数据被提取并加载到正确的HDFS位置
该阶段可以使用工具Talend或Datameer,进行数据阶段验证。
3.2 步骤2:“MapReduce”验证
大数据测试的第二步是MapReduce的验证。在这个阶段,测试者在每个节点上进行业务逻辑验证,然后在运行多个节点后验证它们,确保如下操作的正确性:
Map Reduce进程正常工作
在数据上实现数据聚合或隔离规则
生成键值对
在Map Reduce进程后验证数据
3.3 步骤3:输出验证阶段
大数据测试的最后或第三阶段是输出验证过程。生成输出数据文件,同时把文件移到一个EDW(Enterprise Data Warehouse:企业数据仓库)中或着把文件移动到任何其他基于需求的系统中。在第三阶段的活动包括:
检查转换(Transformation)规则被正确应用
检查数据完整性和成功的数据加载到目标系统中
通过将目标数据与HDFS文件系统数据进行比较来检查没有数据损坏
4 架构测试
Hadoop处理非常大量的数据,并且资源密集。因此,架构测试对于确保大数据项目的成功至关重要。系统设计不当或设计不当可能导致性能下降,系统可能无法满足要求。至少,性能和故障转移测试服务应在Hadoop环境中完成。
性能测试包括测试作业完成时间,内存利用率,数据吞吐量和类似的系统指标。虽然故障转移测试服务的动机是验证数据处理在数据节点故障的情况下无缝地发生
5 性能测试
大数据的性能测试包括两个主要方面:
数据获取和吞吐量:在这个阶段,测试人员验证快速系统如何使用来自各种数据源的数据。测试涉及识别队列在给定时间帧中可以处理的不同消息。它还包括如何快速地将数据插入到底层数据存储中,例如插入到Mongo和Cassandra数据库中。
数据处理:它涉及验证执行查询或map reduce作业的速度。它还包括底层数据存储的数据集中填充时隔离测试数据的过程。例如,在底层HDFS上运行Map Reduce作业
子组件性能:这些系统由多个组件组成,必须单独测试这些组件。例如,消息被索引和使用的速度,mapreduce作业,查询性能,搜索等。
5.1 性能测试方法
大数据应用程序的性能测试涉及大量结构化和非结构化数据的测试,它需要一种特定的测试方法来测试这样的大量数据。
性能测试按此顺序执行
对要性能测试的大数据集群的进行设置
识别和设计相应的工作负载
准备单个客户端(创建自定义脚本)
执行测试并分析结果(如果不满足目标,则调整组件并重新执行)
最佳配置
5.2 性能测试的参数
要验证性能测试的各种参数是
数据存储:数据如何存储在不同的节点中
提交日志:提交日志允许增长的大小
并发性:有多少线程可以执行写和读操作
缓存:调整缓存设置“行缓存”和“密钥缓存”。
超时:连接超时,查询超时等的值。
JVM参数:堆大小,GC收集算法等。
降低性能:排序,合并等
消息队列:消息速率,大小等
6 测试环境需求
测试环境需求取决于要测试的应用程序的类型。对于大数据测试,测试环境应包括
它应该有足够的空间用于存储和处理大量的数据
它应该具有分布式节点和数据的集群
它应该具有最小的CPU和内存利用率,以保持高
文档评论(0)