大数据测试技术研究

大数据的特征:

数据体量巨大(volume)
数据类型繁多(variety)
价值密度低(value)
处理速度快(velocity)

大数据测试的挑战:

平台软件的复杂性和发布节奏之间的矛盾
通用平台支持多种不同应用带来测试用例数的爆炸
对于大规模集群上的问题如何用小规模测试集群暴露

处理流程的5个阶段:

大数据采集
大数据导入/预处理
大数据统计分析
大数据挖掘
大数据分析

大数据测试——功能性测试方法:

数据导入/预处理验证阶段
MapReduce数据输出验证阶段
验证大数据ETL(数据提取、转换和加载)到数据仓库
验证分析报告

大数据测试——非功能性测试方法:

性能测试
容错性测试
可用性测试
扩展性测试
稳定性测试
部署方式测试
数据一致性测试
压力测试

大数据测试——针对“4V”特性的测试

大体量特性测试
多类型特性测试
高速度特性测试
低价值密度特性测试

大数据测试基准

TestDFSIO:用于测试HDFS的IO性能,使用一个MapReduce作业来并发地执行读写操作,每个map任务用于读或写每个文件,map的输出用于收集与处理文件相关的统计信息,reduce用于累积统计信息,并产生统计总结;
 
MRBench:会多次重复执行一个小作业,用于检查在机群上小作业的运行是否可重复以及运行是否高效;
 
NNBench:用于测试NameNode的负载,它会生成很多与HDFS相关的请求,给NameNode施加较大的压力。这个测试能在HDFS上模拟创建、读取、重命名和删除文件等操作;
 
HiBench:Intel开发的一个Hadoop benchmark suit,包含9个典型的Hadoop负载,benchmark程序负载的特点如下表所示;

Sleep:命令行程序是批处理延时用的,占用资源少。Sleep基准可以用来比较核调度和MapReduce处理的有效性,在Hadoop World 2011上被提出来,可以测试分配任务到网络平台的速度;

TeraSort :测试Hadoop的一个有效的排序测试。通过Hadoop自带的TeraSort 排序程序,测试不同的map任务和reduce任务数量对Hadoop性能的影响。实验数据由程序中的TeraGen程序生成,数据量为1GB和10GB。一个完整的TeraSort 测试需要按以下三步执行:用TeraGen 生成随机数据;对输入数据运行TeraSort; 用TeraValidate 验证排好序的输出数据;

大数据测试常用工具

LTP( Linux test project)

Locktests

IOzone

Postmark

Fio

Filebench

猜你喜欢

转载自www.cnblogs.com/ratels/p/10676019.html