Ian Clarke wrote:

> I guess this means that in-order that people will be able to play with Freenet
> usefully we will have to redo the key-indexes so that they take act like 
> Yahoo,
> but for Freenet CHK, SVK or KSKs.
> 

I made a suggestion a while ago that until we have searching in the node, we
could use the existing key-indexes to store metadata as well as CHKs etc. No
changes would be needed to the perl keyindex scripts.. all we would need is a
bit of client intelligence. I've got fuzzy sorting of arbitary lists of metadata
done (inefficiently, but I'm working at it), so it wouldn't take much to knock
up a client that is capable of:

1. Generating searchable metadata, and then submitting it to the keyindexes
2. Scanning the keyindexes for metadata, to be used as the database for a search
option

For example, the keyindexes could end up looking like this:

freenet:SVK;24bc5a0945fgaa0982452       // My updatable pointer to the latest 
version
freenet:CHK;0976a0976e9760f7906gb       // First version
freenet:CHK;b235ce9870987g0987a09       // Second version
freenet:METADATA;{(Author=Alex Barnell), (Title=Why freenet rules),    / All
this
                  (Description=An analysis of file sharing networks),  / is
meant
                  (Keywords=Freenet, Anonymity, Cheese),               / to be
on
                  (Date=20000802),                                     / one
line
                  (URI=freenet:SVK;24bc5a0945fgaa0982452)}

The advantages of a system like this are:

1. We would have fully-functional fuzzy metadata-matching
2. Custom clients can make use of this (e.g. the infamous soon-to-be freemp3
client)
3. No work needed on the node
4. No work needed on the keyservers
5. Only a minimal amount of work needed doing in the client. I've already
written
   java to take a list of metadata and a query, and return a list of metadata
sorted
   by that query. It works really well on the freecddb database :)
6. We can get a feel for what kind of metadata people are going to be inputting.
This
   will help us write more custom clients in the future
7. The clients gui interfaces can stay the same when we put distributed
searching into
   the node. Clients can be developed now, and take full advantage of
distributed searching
   when it is ready.

I'll start to hack up a client that can do this in the next day or two.

Comments?

_______________________________________________
Freenet-dev mailing list
Freenet-dev at lists.sourceforge.net
http://lists.sourceforge.net/mailman/listinfo/freenet-dev

Reply via email to