On 1/15/07, Lukas Vlcek <[EMAIL PROTECTED]> wrote:
Ryan,

Could you be more specific on your statement?

On 1/12/07, Ryan McKinley <[EMAIL PROTECTED]> wrote:
>
> I started using compass a few months back.  It is an amazing system:
> with almost no effort, it just works.  BUT the showstopper (for me)
> was that you could not easily update the index from multiple machines.
> Compass lets you put the lucene indexes in SQL with JDBC, but this
> felt wrong....  then i found solr, and it solves most things.
>


What exactly do you mean by "you could not easily update the index from
multiple machines"?


Consider a standard load balanced web setup with three machines:
DB1 - running mysql
WEB1 - webapp talking to DB1
WEB2 - webapp talking to DB1
...

In compass, the lucene index is stored on a disk - WEB1 writes its
lucene index on WEB1.  So for changes that WEB1 makes, WEB2 does not
see them (without adding more logic)

To solve this problem, compass is able to write its index into SQL.
WEB1 & WEB2 can write the lucene index in DB1.  But the performance is
not great and it seems to be something people discourage (tho i have
not tried it)

Also, take a look at:
http://forums.opensymphony.com/thread.jspa?messageID=100071

Could you describe you problem in more details (and possible workaround if
you found any) please?


workaround?  I'm now using solr :)

Otherwise, consider:

* Try the JDBC store:
http://www.opensymphony.com/compass/versions/1.1M3/html/core-connection.html#core-connection-jdbc

* If you are ok with WEB1 & WEB2 being slightly out of sync for new
content, you could us them normally and periodically call index() on
the hibernate GPS device.  This will synchronize whatever is stored in
hibernate with the lucene index

Reply via email to