testing - 如何测试Hadoop mapreduce

标签 testing hadoop mapreduce

如何在hadoop mapreduce应用程序准备好投入生产之前对其进行测试。我现在能想到的测试视角是:
单元测试
这是为了确保映射器和还原器中的方法正常工作。看来我们已经有了mrunit,但我想看看我们是否还有其他选择。
数据准确性
这对我来说是最重要的,因为产生准确和正确的输出是mapreduce应用程序的主要职责。这里的问题是如何生成测试数据集和如何验证输出数据,以及正确的测试数据量是多少?
性能
我们应该如何对mapreduce应用程序的性能进行基准测试?我们能利用什么工具?
我们还需要考虑其他的测试吗?

最佳答案

jumbune是您的工具,它有多个模块,可以解决您在这里提出的所有问题。
jumbune模块概述。
调试器
提供MapReduce作业的代码级控制流统计信息。用户可以应用regex验证或其自己的用户定义的验证类。根据应用的验证,flow debugger将分别检查mapper和reducer的数据流,并提供mapreuce应用程序出错的详细视图。
这是一个更好的选择,mrunit。
JVM轮廓仪
概要文件映射了集群中的作业,并深入了解了hadoop作业的cpu和堆转储。它还提供了map reduce阶段的深入图形视图,包括map、reduce、sort、shuffle、setup和cleanup。
HDFS数据验证
提供了一个简单易用的实用程序来查找hdfs数据中的差异和错误。用户可以检查不同类别下的数据冲突,如数据类型、空值或正则表达式值。
群集监视器
Jumbune的一个显著特点是按需监控,可以根据用户需求打开或关闭。jubune是松耦合的,这使得它可以部署在远程机器上,而无需在每个集群机器上进行额外的设置。群集监视功能可以总结如下:

1.Node level cluster view to monitor system and Hadoop parameters       

2.Data load partition to monitor data load distribution among various
   nodes of the cluster

3.Replica management view to show data blocks replications in HDFS

4.Network latency view to detect network latency across nodes in
   cluster

jumbune支持hadoop的apache、hdp和cdh发行版。
网址是www.jumbune.org。可在https://github.com/impetus-opensource/jumbune访问源代码。

关于testing - 如何测试Hadoop mapreduce,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25145714/

相关文章:

hadoop - 映射器中的中间文件 (Mapreduce)

hadoop - 将 spark 数据帧导出到 hive 数据库时出现 Java 堆空间错误

javascript - MongoDB 计算对象内的对象

python - 在此MapReduce问题中,如何选择有选择的值之和大于3?

ruby - 运行测试时如何使以下 RightAWS 消息静音

c# - WPF 应用程序的测试自动化

reactjs - 使用react-spring/react-motion进行快照测试

hadoop - 向现有 HIVE 表添加一列会产生什么后果?

scala - scalatest 中的 assertEquals

java - Hive 中的自定义 UserDefinedFunction