<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!
I
just
signed
up
for
this
list,
so
apologies
if
my
comments
are <br>out
of
place.
I
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,
a
colleague
and
I
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
6
months;
we
crawl
the
grid
twice
a
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
a
basic
administrative
function
--
you
want
to <br>know
the
data
you
serve;
or
it
can
be
a
basic
user
function
--
you
want <br>people
to
be
able
find
things.
The
first
type
of
search
is
really <br>simple:
stick
a
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
a
lot
more
powerful,
but
it's
not
so
simple, <br>because
you
want
to
rank
the
huge
amount
of
results
in
a
semantically <br>meaningful
way.
With
SLBrowser,
we've
followed
the
latter.
Crawling
the <br>live
sims
gives
us
a
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
a
relational
DB.
Lucene
is,
essentially,
a
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
a
non-problem
in
Lucene
--
you
can
use
as
little
or
as
much
text
as <br>you
want
in
a
field,
you
don't
need
to
hard-code
that.<br><br>Can
I
help
with
plugging
a
Lucene-based
search
for
OpenSim,
please?
(the <br>thought
of
having
a
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.
I
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>