[FoRK] Our dispersed, not distributed, computing future
russell.turpin at gmail.com
Sat Nov 7 14:31:29 PST 2009
On Sat, Nov 7, 2009 at 4:15 PM, Jeff Bone <jbone at place.org> wrote:
> I've been saying this for years, but: the edge case of latency is
> disconnection. Ken Arnold *almost* got it right, but didn't take it to its
> logical (end-user impacting) conclusion: in the general case, we should
> *assume* (highly-variable and) high latency and frequent and prolonged
> disconnection. ...
The differences along the distributed-dispersed scale account for many
of the technical challenges Caringo has faced in the last couple of
years. At the distributed end, when a formerly known resource fails to
respond after repeated attempts at communication, the assumption is
that it has failed. For us, this means launching a distributed process
that creates more replicas of any data formerly persisted at that
resource. Which process is terminated early if the resource reappears.
In contrast, persistence across dispersed resources is almost a rule
based store-and-forward mechanism. Very different. So it's important
for the software to "know" what is in the "immediate neighborhood,"
where failure to communicate means the resource is or can be assumed
broken. We're actually thinking about a middle point on the
distributed-dispersed scale, where the difference between "assume
broken" and "wait for reconnection" can be more actively managed.
But yeah, I second Jeff's view that managing this dimension will be an
important thing going forward.
More information about the FoRK