Sono interessato a eseguire Lucene.NET per un'applicazione che viene eseguita nei cluster di Windows. Il problema di ricerca in sé è ragionevolmente piccolo, ma il problema di stato/cluster deve ancora essere gestito.Opzioni per il clustering Lucene.NET?
Capisco che SOLR gestisce il mio scenario (e altro) ma che richiede un contenitore servlet (e Java) pone alcuni problemi per me. A seconda della complessità di un approccio basato su Lucene.NET, potrebbe comunque essere un'opzione di fiala.
La mia domanda ora è ciò che le opzioni che ho per gestire il problema di girare su più host:
Persist su uno storage condiviso, comuni per tutti i nodi? Lucene.NET gestirà la concorrenza in modo trasparente? I server utilizzerebbero la RAM per la memorizzazione nella cache e in tal caso Lucene.NET gestirà l'invalidazione di questo in base ai file aggiornati in modo trasparente?
Replica? Ogni server ha la propria copia di tutto ciò di cui ha bisogno. Su qualsiasi aggiornamento, tutti i server ottengono una nuova replica (o diff se questo è ragionevolmente semplice). Strumenti esistenti per questo o per me da gestire?
Partizionamento del carico di lavoro/sharding? Ogni server gestisce solo i propri dati, sia per le letture che per gli aggiornamenti. Strumenti per gestirlo, unire risultati parziali, ecc.?
Altre opzioni Potrei aver perso la mia indagine iniziale?
Quando la sperimentazione di una versione locale, mio indice Lucene era nell'ordine di un paio di centinaia mega. A lungo termine posso vedere forse 1-5 GB. Se la frequenza degli aggiornamenti è una difficoltà, posso controllarla in modo abbastanza flessibile. Si prevede che i carichi di lettura/ricerca contemporanei siano molto moderati.
Non una risposta diretta, ma dare un'occhiata a elasticsearch (http://www.elasticsearch.org/) - gestisce la maggior parte delle vostre esigenze abbastanza facilmente. – Mikos
Quali sono i requisiti necessari per mantenere sincronizzati i dati tra i membri del cluster? Siamo nel bel mezzo di una distribuzione di cluster su larga scala di Lucene.NET e potrei essere in grado di fornire una guida se avessi compreso meglio la tua situazione. –