On Fri, Feb 18, 2005 at 04:45:50PM -0500, Mike Rose wrote:
> I can comment on this since I'm in the middle of excising Oracle text
> searching and replacing it with Lucene in one of my projects.

     Intereseting, particularly as it's from somebody who's already
tried an existing in-db fulltext search feature.

> All in all, I don't think that a JDBC wrapper is going to do what
> you want.

     I wasn't thinking about trying to do the whole thing under the
JDBC driver.  Mainly I was thinking that one key point is that you
need to treat the lucene index somewhat like a cache.  This also means
that you have to watch database writes and make sure you update your
cache, which means you have to have some sort of single point of data
access to monitor.  Well, we already have that - it's called the JDBC
driver.

     The general design I was eyeing speculatively is basically that
the driver would be set up with a reference to an object that
implements a CacheManager interface.  This interface basically gives
the driver a way to notify the cache manager of when certain tables
and columns are being edited.  Exactly how is another question.  I
don't know enough of the innards of, say, a PreparedStatement, to say
more.  It could be as simple as sending the CacheManager a copy of
every SQL query string and letting the CacheManager figure out the
rest.  Ideally I'd like it to be a little bit more structured.

     From there, it's the CacheManager's job to decide what to do
about it, and how to do it.  This leaves the tricky issue of mapping
from a specific database to a specific lucene index up to the
developer.

-- 
Steven J. Owens
[EMAIL PROTECTED]

"I'm going to make broad, sweeping generalizations and strong,
 declarative statements, because otherwise I'll be here all night and
 this document will be four times longer and much less fun to read.
 Take it all with a grain of salt." - http://darksleep.com/notablog


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to