<HTML><BODY style="word-wrap: break-word; -khtml-nbsp-mode: space; -khtml-line-break: after-white-space; "><BR><DIV><DIV>On 7 Jul 2005, at 10:49, Lemon Obrien wrote:</DIV><BR class="Apple-interchange-newline"><BLOCKQUOTE type="cite"><DIV>i think complex querry calls are redundant in ease of use; think google.<BR></DIV></BLOCKQUOTE><DIV><BR class="khtml-block-placeholder"></DIV><DIV>It depends on the application, databases which only supported google-style keyword based searches would be next to useless.</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>Either way, as FASD demonstrates, this technique can be used with simple google-style keyword-based searches.</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>Ian.</DIV><BR><BLOCKQUOTE type="cite"><DIV><BR><B><I>Ian Clarke <<A href="mailto:ian@locut.us">ian@locut.us</A>></I></B> wrote: <BLOCKQUOTE class="replbq" style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #1010ff 2px solid">You should take a look at FASD:<BR><BR><A href="http://freenet.sourceforge.net/kronfol_final_thesis.pdf">http://freenet.sourceforge.net/kronfol_final_thesis.pdf</A><BR><BR>It uses a generalisation of Freenet's search algorithm to support <BR>"fuzzy" searching (in the case of FASD, using a series of keywords).<BR><BR>Essentially, any query where you can determine, for a given key, <BR>whether one key is a closer match to the query than another key, or <BR>whether it is equally matched, can be searched for.<BR><BR>So, for example, if the query is 'key is equal to numeric value 5', <BR>then the key '6' would be a closer match than the key '8'.<BR><BR>If the query is 'key is equal to string value "hello"', then the key <BR>'heppo' would be a closer match than the key 'fdfdf' (perhaps using <BR>the Levenshtein distance algorithm).<BR><BR>Of course, keys can be anything, not just integers and strings. For <BR>example, a single key could be a set of key-value tuples (apologies <BR>for the overloaded use of 'key'). You can also combine queries using <BR>boolean operators to form new queries, provided you maintain a way to <BR>evaluate the relative closeness of two keys to the query.<BR><BR>The FASD paper doesn't really go into these more complex queries, but <BR>it does demonstrate that Freenet's search algorithm generalises well, <BR>while maintaining its small-world scalability characteristics.<BR><BR>Ian.<BR><BR>On 4 Jul 2005, at 05:23, Davide Carboni wrote:<BR><BR>> Hi, I'm developing a P2P system where clients must be able to send<BR>> complex queries such as:<BR>><BR>> author equal "foo"<BR>> and<BR>> publicationDate is between "12 12 1999" and "12 12 2000"<BR>> andnot<BR>> distributor startswith "galax"<BR>><BR>> etc. etc.<BR>><BR>> I'm reading some papers about DHT and I wonder whether or not DHT is a<BR>> viable solution for these requirements. I know that with DHT you can<BR>> map a key onto a piece of data, but I cannot see how to manage complex<BR>> query like the one in the example. Probably DHT is not the "good"<BR>> solution for this...but never know,<BR>><BR>> Any hints?<BR>> Bye.<BR>> Davide<BR>><BR>><BR>> -- <BR>> I have made this letter longer than usual because I lack the time to<BR>> make it shorter.<BR>> B. Pascal<BR>> _______________________________________________<BR>> p2p-hackers mailing list<BR>> <A href="mailto:p2p-hackers@zgp.org">p2p-hackers@zgp.org</A><BR>> <A href="http://zgp.org/mailman/listinfo/p2p-hackers">http://zgp.org/mailman/listinfo/p2p-hackers</A><BR>> _______________________________________________<BR>> Here is a web page listing P2P Conferences:<BR>> <A href="http://www.neurogrid.net/twiki/bin/view/Main/PeerToPeerConferences">http://www.neurogrid.net/twiki/bin/view/Main/PeerToPeerConferences</A><BR>><BR>><BR><BR>_______________________________________________<BR>p2p-hackers mailing list<BR><A href="mailto:p2p-hackers@zgp.org">p2p-hackers@zgp.org</A><BR><A href="http://zgp.org/mailman/listinfo/p2p-hackers">http://zgp.org/mailman/listinfo/p2p-hackers</A><BR>_______________________________________________<BR>Here is a web page listing P2P Conferences:<BR>http://www.neurogrid.net/twiki/bin/view/Main/PeerToPeerConferences<BR></BLOCKQUOTE></DIV><BR><BR>You don't get no juice unless you squeeze<BR>Lemon Obrien, the Third.<P>__________________________________________________<BR>Do You Yahoo!?<BR>Tired of spam? Yahoo! Mail has the best spam protection around <BR><A href="http://mail.yahoo.com">http://mail.yahoo.com</A></P><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">_______________________________________________</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">p2p-hackers mailing list</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><A href="mailto:p2p-hackers@zgp.org">p2p-hackers@zgp.org</A></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><A href="http://zgp.org/mailman/listinfo/p2p-hackers">http://zgp.org/mailman/listinfo/p2p-hackers</A></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">_______________________________________________</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Here is a web page listing P2P Conferences:</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><A href="http://www.neurogrid.net/twiki/bin/view/Main/PeerToPeerConferences">http://www.neurogrid.net/twiki/bin/view/Main/PeerToPeerConferences</A></DIV> <BR class="Apple-interchange-newline"></BLOCKQUOTE></DIV><BR></BODY></HTML>