我对Hadoop等大数据工具的使用还很陌生。我想在Yarn /或Yarn Simulator上执行公开的群集跟踪(https://github.com/google/cluster-data)。
一种方法是通过Gridmix将输入提供给Yarn。
Gridmix(https://hadoop.apache.org/docs/r2.8.3/hadoop-gridmix/GridMix.html)输入的格式基本上是Rumen的输出。 和瘤胃(https://hadoop.apache.org/docs/r2.8.3/hadoop-rumen/Rumen.html)将从map-reduce集群生成的JobHistory日志作为输入。
Google跟踪不是地图缩减跟踪。但是,我想知道我是否可以将其转换为与Grdimix作为输入相同的格式,然后我可以使用Grdmix。
这里有人能指出Gridmix的输入格式(或瘤胃输出)吗?
或者建议我采取另一种方式来做我想做的事情?
感谢。
答案 0 :(得分:0)
Rumen的输出包含两个文件: 1.作业跟踪文件, 2.集群拓扑文件;
这两个文件均为json格式,job-trace文件为以下格式:
{
"jobID" : "job_1546949851050_53464",
"user" : "mammut",
"computonsPerMapInputByte" : -1,
"computonsPerMapOutputByte" : -1,
"computonsPerReduceInputByte" : -1,
"computonsPerReduceOutputByte" : -1,
"submitTime" : 1551801585141,
"launchTime" : 1551801594958,
"finishTime" : 1551801630228,
"heapMegabytes" : 200,
"totalMaps" : 2,
"totalReduces" : 1,
"outcome" : "SUCCESS",
"jobtype" : "JAVA",
"priority" : "NORMAL",
"directDependantJobs" : [ ],
"mapTasks" : [ {
"inputBytes" : 25599927,
...}]
...
}
然后,集群拓扑如下:
{
"name" : "<root>",
"children" : [ {
"name" : "rack-01",
"children" : [ {
"name" : "",
"children" : null
}, {
"name" : "",
"children" : null
}, {
"name" : "",
"children" : null
} ]
}, {
"name" : "default-rack",
"children" : [ {
"name" : "x",
"children" : null
} ]
} ]
}