Sunday, May 18, 2008

Distributed P2P EMF

What I write today is as ever truly iunfinished vision.
inspired by three things, JFace Databinding, Eike Steppers work on CDO
and some thougts I had while while reading Scott Rosenbergs Dreaming in code.

What if we had a distributed object model (based on EMF) thats connected through a peer to peer network, may with a central persistence repository like CDO is. It would be "quite" language neutral as we can think of an EMF implementation in other languages as Scala or even C#. (I have some trouble with NET4J there, have to think of that). What if we promote changes on the model as diffs in a p2p style to all the partial model instances out there ? I mean truly concurrent modification of an distributed object model. (I have some headache when you ask me for transactions, though) Wouldnt that be a nice programming model for multiuser applications ?

I know this is not really new, other have dreamed of that before. But we have almost everything to do it. And EMF is agood platform for domain object model. It would be a complete different approach to the conventional OLTP ideas. Let me know what you think of it.

1 comment:

Ed Merks said...

Thomas, there is certainly a lot of potential for this type of idea. CDO does an excellent job of providing distributed access to a shared centralized model instance as the finest level of granularity. Another approach might use a change recorder to track a coarse grained set of changes and transmit them to be applied to an instance of the model elsewhere.

Using Mapstruct with Protobuf3