Rumen的示例输出或Gridmix的Sample输入

时间:2018-03-30 17:35:24

标签: hadoop mapreduce

我对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的输入格式(或瘤胃输出)吗?

或者建议我采取另一种方式来做我想做的事情?

感谢。

1 个答案:

答案 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
    } ]
  } ]
}