Hi, What are my options for distributing an application that uses Lucene? Our current application works against a database of INVENTORY. We schedule hourly checks for modified items (timestamp-based), and update a single Lucene index. Now we want to distribute out application, to a Grid, with failover, and a bit of data sharing: Say we have 2 branches - New York and Los Angeles.
(1) Inventory of the NY branch is handled by 2 application servers, and 2 database copies. They are exact replicates, for failover/load balance. Similarly, the LA branch gets 2 application servers and 2 databases. (2) 90% of the time, each branch "minds its own business" and isn't interested in the other branch's inventory. However on rare occasions, an LA administrator needs to search the NY inventory (we can compromise on data freshness, e.g. show data 10 hours old). Does Lucene have built-in support for any of this? If I'm to do this "from scratch" I'll probably just let each application server maintain its own copy of Lucene index (with data only from its own city, and hourly updates as before). And for the requirement of "LA admin searching the NY inventory" I'd schedule a task to copy the NY index into the LA server, every 10 hours. Is this a reasonable approach? Or are there Lucene-management tools that would handle it better? Thanks :)