[ 
https://issues.apache.org/jira/browse/HAMA-567?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13266887#comment-13266887
 ] 

Suraj Menon commented on HAMA-567:
----------------------------------

I was looking for something in lines of how we save reference to an object in 
an HttpSession ( 
http://docs.oracle.com/javaee/5/api/javax/servlet/http/HttpSession.html#setAttribute(java.lang.String,
 java.lang.Object) ) across multiple requests. Let's keep aside remote access 
to peers here for a moment. First requirement to meet is to how the supersteps 
running in the same peer could use the output of a previous superstep. Say you 
have defined 10 superstep classes to run in tandem for the job. What if the 
10th superstep needs information that 1st superstep had computed. To prevent 
these values to go out of scope, the user today would have to create 
singleton(s) for every object they want to share across supersteps. Even if we 
use any other distributed caching framework, what if the value you are 
interested in the 10th superstep is not something that could be accessed by 
hard-coded references and could only be inferred in one of the previous 
supersteps?

Introducing generics would be restrictive. I might want to save reference to a 
DiskQueue or just a string or List of Integers, etc. This would be difficult to 
achieve. Heap-usage is something that a programmer always(or expected to) keep 
in mind for solutions on huge data-sets. This map is intended to hold 
references to only bunch of already instantiated objects and only if needed. 
                
> BSPPeer should provide means for chaining supersteps to share data among them.
> ------------------------------------------------------------------------------
>
>                 Key: HAMA-567
>                 URL: https://issues.apache.org/jira/browse/HAMA-567
>             Project: Hama
>          Issue Type: Improvement
>          Components: bsp core
>    Affects Versions: 0.6.0
>            Reporter: Suraj Menon
>             Fix For: 0.6.0
>
>
> In most scenarios, a superstep would need certain values or objects that were 
> computed in the previous superstep. When using the chaining Superstep design 
> to implement BSP algorithms, this gets a little ugly/difficult to implement. 
> BSPPeer should provide means (preferably a map<String,Object>) so that the 
> next Superstep can ask for the values in previous superstep using String 
> token to query the map. Also, this map could be checkpointed periodically in 
> the background so that we can completely recover the state of a task after 
> failure. The BSPPeer object should have a dedicated get and set function for 
> updating values in the peer.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to