Project Description

A distributed computing platform written in F# and C#. The goal is to have a Peer-to-Peer implementation with automated distribution and replication without a master node.

Motivation

We want to create a distributed computation platform that address two major limitations of some map reduce based approaches. The master nodes are a single point of failure. We would rather have a self regulating group of nodes which manage through peer-to-peer connections for stability and ease of setup (a new node should just join in). Secondly previously hinted at map reduce implementations also attempt to give functional benefits while mostly remaining imperative in approach. It would be much better to have a purely functional approach which allowed many types of processing by having the nodes truly operate without side effect.

Why GoFish?

One of the major issues is how the nodes will distribute data without a master node telling each what to do. Instead the approach will be for the nodes to communicate with each other in such a way that they trade with respect to data they already have, each building collections of similiar data. Sound familiar? Also, it's well understood that you are not a open source project until you have a silly name.

Getting Started

If you have any interest simply based on the buzz words used and you don't find the complete lack of source scary, then by all means jump in. First steps / next steps will be outlined in the discussion section, so look there if you'd like to see plans for architecture, implementation, and when you should start seeing source.

If you think you may want to contribute, or you just have questions you don't see answered feel free to contact the coordinator!

Last edited Mar 4, 2009 at 5:24 PM by gerunddev, version 13