Yes, both Marcelo and I would be interested.

We looked into H2 and it looks like something similar to Oracle's ODCI can
be implemented. Plus the primitive full-text implementación is based on
Lucene.
I say primitive because looking at the code I saw that one cannot define an
Analyzer and for each scan corresponding to a where clause a searcher is
open and closed, instead of having a pool, plus it does not have any way to
queue changes to reduce the use of the IndexWriter, etc.

But its open source and that is a great starting point!

-- Joaquin

On Mon, Sep 8, 2008 at 2:05 PM, Jason Rutherglen <[EMAIL PROTECTED]
> wrote:

> Perhaps an interesting project would be to integrate Ocean with H2
> www.h2database.com to take advantage of both models.  I'm not sure how
> exactly that would work, but it seems like it would not be too
> difficult.  Perhaps this would solve being able to perform faster
> hierarchical queries and perhaps other types of queries that Lucene is
> not capable of.
>
> Is this something Joaquin you are interested in collaborating on?  I
> am definitely interested in it.
>
> On Sun, Sep 7, 2008 at 4:04 AM, J. Delgado <[EMAIL PROTECTED]>
> wrote:
> > On Sat, Sep 6, 2008 at 1:36 AM, Otis Gospodnetic
> > <[EMAIL PROTECTED]> wrote:
> >>
> >> Regarding real-time search and Solr, my feeling is the focus should be
> on
> >> first adding real-time search to Lucene, and then we'll figure out how
> to
> >> incorporate that into Solr later.
> >
> >
> > Otis, what do you mean exactly by "adding real-time search to Lucene"?
>  Note
> > that Lucene, being a indexing/search library (and not a full blown search
> > engine), is by definition "real-time": once you add/write a document to
> the
> > index it becomes immediately searchable and if a document is logically
> > deleted and no longer returned in a search, though physical deletion
> happens
> > during an index optimization.
> >
> > Now, the problem of adding/deleting documents in bulk, as part of a
> > transaction and making these documents available for search immediately
> > after the transaction is commited sounds more like a search engine
> problem
> > (i.e. SOLR, Nutch, Ocean), specially if these transactions are known to
> be
> > I/O expensive and thus are usually implemented bached proceeses with some
> > kind of sync mechanism, which makes them non real-time.
> >
> > For example, in my previous life, I designed and help implement a
> > quasi-realtime enterprise search engine using Lucene, having a set of
> > multi-threaded indexers hitting a set of multiple indexes alocatted
> accross
> > different search services which powered a broker based distributed search
> > interface. The most recent documents provided to the indexers were always
> > added to the smaller in-memory (RAM) indexes which usually could absorbe
> the
> > load of a bulk "add" transaction and later would be merged into larger
> disk
> > based indexes and then flushed to make them ready to absorbe new fresh
> docs.
> > We even had further partitioning of the indexes that reflected time
> periods
> > with caps on size for them to be merged into older more archive based
> > indexes which were used less (yes the search engine default search was on
> > data no more than 1 month old, though user could open the time window by
> > including archives).
> >
> > As for SOLR and OCEAN,  I would argue that these semi-structured search
> > engines are becomming more and more like relational databases with
> full-text
> > search capablities (without the benefit of full reletional algebra -- for
> > example joins are not possible using SOLR). Notice that "real-time" CRUD
> > operations and transactionality are core DB concepts adn have been
> studied
> > and developed by database communities for aquite long time. There has
> been
> > recent efforts on how to effeciently integrate Lucene into releational
> > databases (see Lucene JVM ORACLE integration, see
> >
> http://marceloochoa.blogspot.com/2007/09/running-lucene-inside-your-oracle-jvm.html
> )
> >
> > I think we should seriously look at joining efforts with open-source
> > Database engine projects, written in Java (see
> > http://java-source.net/open-source/database-engines) in order to blend
> IR
> > and ORM for once and for all.
> >
> > -- Joaquin
> >
> >
> >>
> >> I've read Jason's Wiki as well.  Actually, I had to read it a number of
> >> times to understand bits and pieces of it.  I have to admit there is
> still
> >> some fuzziness about the whole things in my head - is "Ocean" something
> that
> >> already works, a separate project on googlecode.com?  I think so.  If
> so,
> >> and if you are working on getting it integrated into Lucene, would it
> make
> >> it less confusing to just refer to it as "real-time search", so there is
> no
> >> confusion?
> >>
> >> If this is to be initially integrated into Lucene, why are things like
> >> replication, crowding/field collapsing, locallucene, name service, tag
> >> index, etc. all mentioned there on the Wiki and bundled with description
> of
> >> how real-time search works and is to be implemented?  I suppose
> mentioning
> >> replication kind-of makes sense because the replication approach is
> closely
> >> tied to real-time search - all query nodes need to see index changes
> fast.
> >>  But Lucene itself offers no replication mechanism, so maybe the
> replication
> >> is something to figure out separately, say on the Solr level, later on
> "once
> >> we get there".  I think even just the essential real-time search
> requires
> >> substantial changes to Lucene (I remember seeing large patches in JIRA),
> >> which makes it hard to digest, understand, comment on, and ultimately
> commit
> >> (hence the luke warm response, I think).  Bringing other non-essential
> >> elements into discussion at the same time makes it more difficult t o
> >>  process all this new stuff, at least for me.  Am I the only one who
> finds
> >> this hard?
> >>
> >> That said, it sounds like we have some discussion going (Karl...), so I
> >> look forward to understanding more! :)
> >>
> >>
> >> Otis
> >> --
> >> Sematext -- http://sematext.com/ -- Lucene - Solr - Nutch
> >>
> >>
> >>
> >> ----- Original Message ----
> >> > From: Yonik Seeley <[EMAIL PROTECTED]>
> >> > To: java-dev@lucene.apache.org
> >> > Sent: Thursday, September 4, 2008 10:13:32 AM
> >> > Subject: Re: Realtime Search for Social Networks Collaboration
> >> >
> >> > On Wed, Sep 3, 2008 at 6:50 PM, Jason Rutherglen
> >> > wrote:
> >> > > I also think it's got a
> >> > > lot of things now which makes integration difficult to do properly.
> >> >
> >> > I agree, and that's why the major bump in version number rather than
> >> > minor - we recognize that some features will need some amount of
> >> > rearchitecture.
> >> >
> >> > > I think the problem with integration with SOLR is it was designed
> with
> >> > > a different problem set in mind than Ocean, originally the CNET
> >> > > shopping application.
> >> >
> >> > That was the first use of Solr, but it actually existed before that
> >> > w/o any defined use other than to be a "plan B" alternative to MySQL
> >> > based search servers (that's actually where some of the parameter
> >> > names come from... the default /select URL instead of /search, the
> >> > "rows" parameter, etc).
> >> >
> >> > But you're right... some things like the replication strategy were
> >> > designed (well, borrowed from Doug to be exact) with the idea that it
> >> > would be OK to have slightly "stale" views of the data in the range of
> >> > minutes.  It just made things easier/possible at the time.  But tons
> >> > of Solr and Lucene users want almost instantaneous visibility of added
> >> > documents, if they can get it.  It's hardly restricted to social
> >> > network applications.
> >> >
> >> > Bottom line is that Solr aims to be a general enterprise search
> >> > platform, and getting as real-time as we can get, and as scalable as
> >> > we can get are some of the top priorities going forward.
> >> >
> >> > -Yonik
> >> >
> >> > ---------------------------------------------------------------------
> >> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> > For additional commands, e-mail: [EMAIL PROTECTED]
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >>
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

Reply via email to