如何将Hadoop系统从0.20.1迁移到Hadoop 2.6.0?
How to Migrate Hadoop System from 0.20.1 to Hadoop 2.6.0?
我正在使用由 Koichi Shirahata、Hitoshi Sato 和 Satoshi Matsuoka 创建的系统,他们在其中创建了一个 Hadoop-GPU 系统,可以找到 here. This system uses Hadoop-0.20.1. Another user named millecker transferred the Hadoop-GPU system that I previously mentioned and transferred it to use Hadoop-1.0.3 (can be found here)。
我想做一些类似于millecker 所做的事情,并将Shirahata K. 等人的工作转移过来。使用 Hadoop-2.6.0 而不是 1.0.3。
将所有内容从 Hadoop-0.20.1 迁移到 Hadoop-2.6.0 以便我可以在 Hadoop-2.6.0 上应用 Hadoop+GPU 组合需要哪些步骤?
编辑:
所以我重新阅读了 Shirahata K. 等人的论文。写了,根据他们提出的方法,他们改变了以下内容类:
- MapTaskStatus.java
- MapTask.java
- Task.java
- TaskGraphServlet.java
- TaskInProgress.java
- TaskReport.java
- TaskStatus.java
- TaskTracker.java
- TaskTrackerStatus.java
- JobConf.java
- JobInProgress.java
- JobQueueTaskScheduler.java
- JobTracker.java
根据这些信息,我是否只需要在 Hadoop-2.6.0 的源代码中编辑相应的 类?
编辑:
最后,作者解释说他们编辑了以下文件。
- hadoop-gpu-0.20.1/src/docs/cn/src/documentation/sitemap.xmap 不同
- hadoop-gpu-0.20.1/src/docs/cn/uming.conf 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/JobConf.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/JobInProgress.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/JobQueueTaskScheduler.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/JobTracker.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/MapTask.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/MapTaskStatus.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/TaskGraphServlet.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/TaskInProgress.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/Task.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/TaskReport.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/TaskStatus.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/TaskTracker.java 不同
hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/TaskTrackerStatus.java 不同
hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/pipes/Application.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/pipes/Submitter.java 不同
我将通过修改这些文件进行测试,希望迁移能够正常进行。
With that information, do I just need to edit the respective classes in the source code for Hadoop-2.6.0?
不完全是。他们对版本 0.20.1 进行了更改,which was released in September 2009。您想要将这些更改合并回 2014 年 11 月发布的 2.6.0 版。经过 5 年的紧张开发后合并更改很困难。虽然我没有具体查看您的案例,但至少这些文件有 许多 小的改进,而且实际上大多数已经完全重新设计。
要成功重新整合更改,您需要了解这些 类 如何适应 0.20.1、这些更改如何与它们交互,以及它们的所有等效项如何在 2.6.0 中工作。您的更改可能会分布在比您希望的更多的代码库中。例如,有 new mapreduce api in addition to the old mapred api,它与 0.20.1 的距离更远。 YARN 现在是首选的资源管理器,我怀疑它在当前状态下能否很好地处理 GPU。
I will test by amending those files and hopefully the migration will work.
长话短说,困难的部分不是应用补丁,而是了解 5 年的变化。我强烈建议您查看现有项目,而不是自己做。
我正在使用由 Koichi Shirahata、Hitoshi Sato 和 Satoshi Matsuoka 创建的系统,他们在其中创建了一个 Hadoop-GPU 系统,可以找到 here. This system uses Hadoop-0.20.1. Another user named millecker transferred the Hadoop-GPU system that I previously mentioned and transferred it to use Hadoop-1.0.3 (can be found here)。
我想做一些类似于millecker 所做的事情,并将Shirahata K. 等人的工作转移过来。使用 Hadoop-2.6.0 而不是 1.0.3。
将所有内容从 Hadoop-0.20.1 迁移到 Hadoop-2.6.0 以便我可以在 Hadoop-2.6.0 上应用 Hadoop+GPU 组合需要哪些步骤?
编辑:
所以我重新阅读了 Shirahata K. 等人的论文。写了,根据他们提出的方法,他们改变了以下内容类:
- MapTaskStatus.java
- MapTask.java
- Task.java
- TaskGraphServlet.java
- TaskInProgress.java
- TaskReport.java
- TaskStatus.java
- TaskTracker.java
- TaskTrackerStatus.java
- JobConf.java
- JobInProgress.java
- JobQueueTaskScheduler.java
- JobTracker.java
根据这些信息,我是否只需要在 Hadoop-2.6.0 的源代码中编辑相应的 类?
编辑:
最后,作者解释说他们编辑了以下文件。
- hadoop-gpu-0.20.1/src/docs/cn/src/documentation/sitemap.xmap 不同
- hadoop-gpu-0.20.1/src/docs/cn/uming.conf 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/JobConf.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/JobInProgress.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/JobQueueTaskScheduler.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/JobTracker.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/MapTask.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/MapTaskStatus.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/TaskGraphServlet.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/TaskInProgress.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/Task.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/TaskReport.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/TaskStatus.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/TaskTracker.java 不同
hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/TaskTrackerStatus.java 不同
hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/pipes/Application.java 不同
- hadoop-gpu-0.20.1/src/mapred/org/apache/hadoop/mapred/pipes/Submitter.java 不同
我将通过修改这些文件进行测试,希望迁移能够正常进行。
With that information, do I just need to edit the respective classes in the source code for Hadoop-2.6.0?
不完全是。他们对版本 0.20.1 进行了更改,which was released in September 2009。您想要将这些更改合并回 2014 年 11 月发布的 2.6.0 版。经过 5 年的紧张开发后合并更改很困难。虽然我没有具体查看您的案例,但至少这些文件有 许多 小的改进,而且实际上大多数已经完全重新设计。
要成功重新整合更改,您需要了解这些 类 如何适应 0.20.1、这些更改如何与它们交互,以及它们的所有等效项如何在 2.6.0 中工作。您的更改可能会分布在比您希望的更多的代码库中。例如,有 new mapreduce api in addition to the old mapred api,它与 0.20.1 的距离更远。 YARN 现在是首选的资源管理器,我怀疑它在当前状态下能否很好地处理 GPU。
I will test by amending those files and hopefully the migration will work.
长话短说,困难的部分不是应用补丁,而是了解 5 年的变化。我强烈建议您查看现有项目,而不是自己做。