<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:times new roman, new york, times, serif;font-size:12pt"><div style="font-family: times new roman,new york,times,serif; font-size: 12pt;">Yahoo mail sent the reply to diva's e-mail instead of the whole ML. I've forwarded the original response below.<br><br><div style="font-family: times new roman,new york,times,serif; font-size: 12pt;">----- Forwarded Message ----<br>From: David Wendt JR. <dcrkid@yahoo.com><br>To: diva@metaverseink.com<br>Sent: Monday, February 4, 2008 7:16:50 PM<br>Subject: Re: [Opensim-dev] Search server DB schema<br><br>
<div style="font-family: times new roman,new york,times,serif; font-size: 12pt;"><div style="font-family: times new roman,new york,times,serif; font-size: 12pt;">    I read up on Lucene. It's Java, made by Apache and Apache licensed. Only question, is there a .NET/Mono/C# client library available? One that's BSD compatible? If we have that we can start work on Lucene. As for your comments about relational not being good for search... you might be right. Look how many times Old Search would stop working... they eventually said "screw it" and went with a Google Search Appliance, which works a lot better IMHO.<br><br>    Anyway, looking at OpenSim.Framework.Data it may be possible to have our cake and eat it too, provided said cake isn't a lie. Opensim already has a good database abstraction framework that looks like it could also support
 non-SQL/non-relational databases if we so desire. All we would really need to do is write another database plugin for Lucene. At first glance this seems like a very good idea: we can push forward with Search and then write the plugin for the high-performance Lucene search later.<br><br>    Devs, what do you think of that?<br><br>    UNRELATED NOTE: When we implement search, specifically HTTP Search, we should have an osFunction that lets vendors publish their contents to search.<br><br><div style="font-family: times new roman,new york,times,serif; font-size: 12pt;">----- Original Message ----<br>From: Diva Canto <diva@metaverseink.com><br>To: opensim-dev@lists.berlios.de<br>Sent: Monday, February 4, 2008 6:42:26 PM<br>Subject: Re: [Opensim-dev] Search server DB schema<br><br>
Hello 
opensim-developers,<br><br>First 
of 
all, 
thanks 
for 
putting 
opensim 
together, 
this 
is 
what 
we 
all <br>needed! 

just 
signed 
up 
for 
this 
list, 
so 
apologies 
if 
my 
comments 
are <br>out 
of 
place. 

did 
set 
up 
my 
own 
OpenSim, 
and 
it's 
great! 
(in 
spite 
of <br>all 
the 
fights 
i've 
been 
having 
with 
mono 
on 
Mac, 
but 
that's 
another 
thread)<br><br>Over 
the 
past 
10 
months 
or 
so, 

colleague 
and 

have 
developed 
an <br>independent 
search 
engine 
for 
LL's 
SL, 
which 
can 
be 
accessed 
here: <br><a rel="nofollow" target="_blank" href="http://slbrowser.com">http://slbrowser.com</a> 
The 
engine 
does 
not 
require 
special 
access 
to 
grid <br>databases, 
it 
uses 
bots 
to 
collect 
inworld 
information, 
one 
sim 
at 
a <br>time. 
We 
use 
libsecondlife. 
It 
has 
been 
working 
continuously 
for 
the <br>past 

months; 
we 
crawl 
the 
grid 
twice 

week 
with 
only 
14 
bots, 
and <br>have 
been 
able 
to 
find 
appropriate 
heuristics 
for 
many 
things.<br><br>In 
general 
search 
can 
be 
looked 
at 
in 
two 
ways, 
and 
these 
are 
*not* <br>incompatible: 
it 
can 
be 

basic 
administrative 
function 
-- 
you 
want 
to <br>know 
the 
data 
you 
serve; 
or 
it 
can 
be 

basic 
user 
function 
-- 
you 
want <br>people 
to 
be 
able 
find 
things. 
The 
first 
type 
of 
search 
is 
really <br>simple: 
stick 

DB, 
and 
you've 
solved 
it. 
This 
works 
fairly 
well 
for <br>small 
amounts 
of 
data, 
and 
for 
data 
that 
is 
fairly 
constrained. 
The <br>second 
type 
of 
search 
is 

lot 
more 
powerful, 
but 
it's 
not 
so 
simple, <br>because 
you 
want 
to 
rank 
the 
huge 
amount 
of 
results 
in 

semantically <br>meaningful 
way. 
With 
SLBrowser, 
we've 
followed 
the 
latter. 
Crawling 
the <br>live 
sims 
gives 
us 

lot 
of 
useful 
aggregate 
information 
that 
we 
use 
to <br>experiment 
with 
ranking 
in 
much 
more 
interesting 
ways. 
We 
don't 
use 
a <br>relational 
DB 
on 
the 
backend, 
we 
use 
Lucene.<br><br>I 
would 
hate 
that 
OpenSim 
follows 
Linden 
Lab's 
steps 
with 
search 
without <br>taking 
advantage 
of 
the 
lessons 
that 
even 
they 
already 
learned 
-- 
that <br>relational 
schemas 
are 
not 
appropriate 
for 
modern 
information 
retrieval. <br>I'll 
be 
happy 
to 
help 
setting 
up 
this 
basic 
search 
service 
with 
Lucene, <br>rather 
than 
with 

relational 
DB. 
Lucene 
is, 
essentially, 

highly <br>optimized 
database 
for 
text 
search. 
For 
example, 
issues 
like 
this<br>" 
I'm 
going 
to 
assume 
name 
== 
varchar(63) 
and 
description 
== <br>varchar(127), 
but 
it 
might 
be 
easier 
to 
just 
set 
everything 
to <br>varchar(255) 
for 
flexibility."<br>are 

non-problem 
in 
Lucene 
-- 
you 
can 
use 
as 
little 
or 
as 
much 
text 
as <br>you 
want 
in 

field, 
you 
don't 
need 
to 
hard-code 
that.<br><br>Can 

help 
with 
plugging 

Lucene-based 
search 
for 
OpenSim, 
please? 
(the <br>thought 
of 
having 

relational 
DB 
serving 
text 
search 
makes 
me 
shiver 
:-)<br>I've 
never 
participated 
in 
an 
Open 
Source 
project 
as 
such, 
so 
I'm 
not <br>sure 
how 
the 
process 
is. 

did 
contribute 
to 
OS 
projects 
before 
-- <br><a rel="nofollow" target="_blank" href="http://aspectj.org">aspectj.org</a>, 
co-founder, 
and 
more 
recently 
contributed 
plugins 
to 
XWiki <br>with 
one 
of 
my 
students.<br><br>Let 
me 
know.<br><br>Crista 
Lopes 

Diva 
Canto<br>School 
of 
Information 
and 
Computer 
Sciences<br>University 
of 
California, 
Irvine<br><br><br><br>_______________________________________________<br>Opensim-dev 
mailing 
list<br><a rel="nofollow" ymailto="mailto:Opensim-dev@lists.berlios.de" target="_blank" href="mailto:Opensim-dev@lists.berlios.de">Opensim-dev@lists.berlios.de</a><br><a rel="nofollow" target="_blank" href="https://lists.berlios.de/mailman/listinfo/opensim-dev">https://lists.berlios.de/mailman/listinfo/opensim-dev</a><br></div><br></div></div><br>



      <hr size="1">Never miss a thing.  <a rel="nofollow" target="_blank" href="http://us.rd.yahoo.com/evt=51438/*http://www.yahoo.com/r/hs"> Make Yahoo your homepage.</a>

</div><br></div></div><br>
      <hr size=1>Be a better friend, newshound, and 
know-it-all with Yahoo! Mobile. <a href="http://us.rd.yahoo.com/evt=51733/*http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ "> Try it now.</a></body></html>