Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Ruby > Distributed Hash in Ruby?

Reply
Thread Tools

Distributed Hash in Ruby?

 
 
martinus
Guest
Posts: n/a
 
      01-27-2005
Hi,

Has anyone ever implemented a distributed hash protool (like e.g. Chord
http://www.pdos.lcs.mit.edu/chord/) in Ruby? I could not find anything
like this in RAA.

martinus

 
Reply With Quote
 
 
 
 
Dido Sevilla
Guest
Posts: n/a
 
      01-28-2005
On Thu, 27 Jan 2005 23:30:55 +0900, martinus <(E-Mail Removed)> wrote:
> Hi,
>
> Has anyone ever implemented a distributed hash protool (like e.g. Chord
> http://www.pdos.lcs.mit.edu/chord/) in Ruby? I could not find anything
> like this in RAA.


I have, using Distributed Ruby. It's more or less complete, but
probably has a few bugs here and there, but it seems to work properly
in my limited tests. Maybe I ought to make a RubyForge project for
this soon... If you're interested in playing with it I can send you
such code as I have at the moment.


 
Reply With Quote
 
 
 
 
martinus
Guest
Posts: n/a
 
      01-28-2005
A rubyforge project would be nice. I do not need it right now, but at
some point in the not-so-far future

martinus

 
Reply With Quote
 
Eric Hodel
Guest
Posts: n/a
 
      01-28-2005
--Apple-Mail-10--210126427
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII; format=flowed

On 27 Jan 2005, at 06:30, martinus wrote:

> Hi,
>
> Has anyone ever implemented a distributed hash protool (like e.g. Chord
> http://www.pdos.lcs.mit.edu/chord/) in Ruby? I could not find anything
> like this in RAA.


Ruby has a Linda-like TupleSpace built-in from Rinda.

While I don't have an explicit example, one is used as part of the
example code here:

http://segment7.net/projects/ruby/dr...ingserver.html

--
Eric Hodel - http://www.velocityreviews.com/forums/(E-Mail Removed) - http://segment7.net
FEC2 57F1 D465 EB15 5D6E 7C11 332A 551C 796C 9F04

--Apple-Mail-10--210126427
content-type: application/pgp-signature; x-mac-type=70674453;
name=PGP.sig
content-description: This is a digitally signed message part
content-disposition: inline; filename=PGP.sig
content-transfer-encoding: 7bit

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (Darwin)

iD8DBQFB+qgsMypVHHlsnwQRArlCAJ9OtEXiIK4F6YcFX0bkGU s8a+9SzACgrvMy
byHpskdjKC64L8yKXCNlLTE=
=fqH8
-----END PGP SIGNATURE-----

--Apple-Mail-10--210126427--


 
Reply With Quote
 
gabriele renzi
Guest
Posts: n/a
 
      01-28-2005
Eric Hodel ha scritto:
> On 27 Jan 2005, at 06:30, martinus wrote:
>
>> Hi,
>>
>> Has anyone ever implemented a distributed hash protool (like e.g. Chord
>> http://www.pdos.lcs.mit.edu/chord/) in Ruby? I could not find anything
>> like this in RAA.

>
>
> Ruby has a Linda-like TupleSpace built-in from Rinda.
>
> While I don't have an explicit example, one is used as part of the
> example code here:
>
> http://segment7.net/projects/ruby/dr...ingserver.html
>


I think what he's looking for is quite different from TupleSpaces.
I think it is more similar to overnet/emule-kademlia (actually I think
thos were built on chord's concepts).

the idea is to be able to access a file/object based on a standard hash
withouth the need to traverse a complex peer graph, using a distributed
partially replicated hash table.
Related to this, I guess building bindings for the emule base libraries
would be the path of less resistence.
 
Reply With Quote
 
martinus
Guest
Posts: n/a
 
      01-29-2005
Protocols like chord are full distributed networsk with no servers,
which an be used for discovery. Something like a distributed DNS.
That's exactly what I want, I do not want to write a download
application.

martinus

 
Reply With Quote
 
gabriele renzi
Guest
Posts: n/a
 
      01-29-2005
martinus ha scritto:
> Protocols like chord are full distributed networsk with no servers,
> which an be used for discovery. Something like a distributed DNS.
> That's exactly what I want, I do not want to write a download
> application.
>


I understood this, but since the kademlia protocol implemented in emule
allows you to do this, I thought it could be helpful. You can safely
ignore the download part, and still use the object discovery stuff.
Btw, if you just care about a LAN you can use Rinda::Ring
Just my two cents.
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
hash of hash of hash of hash in c++ rp C++ 1 11-10-2011 04:45 PM
Hash#select returns an array but Hash#reject returns a hash... Srijayanth Sridhar Ruby 19 07-02-2008 12:49 PM
In 'HashMap.put', "if (e.hash == hash && eq(k, e.key))" ? Red Orchid Java 3 01-30-2006 07:04 PM
[ANN] Harmonium -- A distributed hash table implementation for Ruby Dido Sevilla Ruby 0 02-05-2005 02:32 AM
standard library for hash table storage and hash algorithm Pieter Claassen C Programming 1 08-04-2004 03:11 AM



Advertisments