Details
-
Sub-task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
0.3.0
-
None
-
None
Description
I'd like to get started on HamaV2 to work with YARN/MR-nextgen.
Here's what I think should be the module structure:
- api: Code from HamaV1 related to APIs that will be moved to this new module. This will mainly have the BSP APIs: BSP, BSPPeerInterface and all the related records like BSPMessage, _BSPMessageBundle etc.
- core: Current/HamaV1 server code. Will have the current BSPMaster/GroomServer infrastructure. We should probably rename it to classic-server or something similar.
- server: New Hama server implementation to work with YARN. Will have BSPApplicationMaster, BSPTask and related code.
- client: Code from HamaV1 related to client that will be moved to this new module. This will mainly have the client-submission classes/interfaces like BSPJob, BSPJobClient, JobStatus etc. It will be configurable to either run with the classic-server implementation or with YARN.
There will not be any package changes but only code-moves across modules, so we will be backwards compatible.
How does it look? Any thoughts/suggestions?