On Nov 11, 2008, at 1:15 PM, Otis Gospodnetic wrote:

Quick thought. I saw Stefan's Katta presentation last night. Katta seems nice and simple. If I understood correctly, juicy stuff that is interesting to Solr is: - Katta has a notion of a Primary Master and N Secondary Slaves (no SPOF there) - Search Nodes serve index shards copied locally from some shared storage - Zookeeper instances (again Primary Master and N Secondary Slaves) that facilitate communication among distributed components

The master:
-- knows how to distribute a set of index shards it is given across a number of search nodes (distribution policy pluggable, similar to Hadoop's, but different)
-- has a map of which shard is on which search node (in Zookeeper)
-- knows how to replicate each shard (replication factor configurable)
-- knows when a search node goes down (via Zookeeper notification)
-- knows how to create more replicas of shards on dead search node (and remove extra replicas when search node is revived) -- can notify search nodes when a new index is available (via Zookeeper)

More in:
http://joa23.files.wordpress.com/2008/09/katta-overview.pdf

Paul Noble will like slide #13 ;)

In particular, I think that:
- Making use of Zookeper for index snapshot + replication might be useful (Master publishes the info about a new snapshot to Zookier and Search Slaves get notified immediately and start copying the index) - Making use of Zookeper for keeping a map of index shards + applying a replication factor would be very useful
- Making use of pluggable shard placement policy would be useful

Thoughts?


+1. Zookeeper does seem like a logical thing to add to Solr to handle this, and it fits with Yonik's suggestions about Solr 2.0, I think, as long as we also can easily maintain the simplicity of a single node setup, which still serves most people quite well.


Also:
While Katta provides shard->search server functionality via pluggable impl, what both Solr and Katta are still missing is the doc->shard functionality. However, this might not be terribly hard if we do something similar to Katta's pluggable shard->search server distribution policy. Please mind I'm saying this without having looked at any of the Katta code.

Otis
--
Sematext -- http://sematext.com/ -- Lucene - Solr - Nutch

--------------------------
Grant Ingersoll

Lucene Helpful Hints:
http://wiki.apache.org/lucene-java/BasicsOfPerformance
http://wiki.apache.org/lucene-java/LuceneFAQ










Reply via email to