Sono nuovo in Lucene.NET ma sto utilizzando an open source tool creato per Sitecore CMS che utilizza Lucene.NET per indicizzare molti contenuti dal CMS. Ho confermato ieri che quando ricostruisco i miei indici, i file di indice correnti si cancellano, quindi tutto ciò che si basa sull'indice non riceve dati per circa 30-60 secondi (la quantità di tempo necessaria per una ricostruzione completa dell'indice). Esiste una best practice o un modo per fare in modo che Lucene.NET non sovrascriva i file di indice correnti finché il nuovo indice non viene completamente ricostruito? Fondamentalmente sto pensando che mi piacerebbe che scrivesse su nuovi file indice temporaneo e quando la ricostruzione è terminata, quei file sovrascrivono l'indice corrente.Evitare la rimozione dell'indice Lucene.NET corrente durante la ricostruzione
esempio di che cosa sto parlando:
- creazione dell'indice fresco (~ 30 secondi)
- Indice ha circa 500 documenti codice
- Utilizzare per accedere ai dati di indice e visualizzazione sul sito
- Ricostruisci indice (~ 30 secondi)
- Qualsiasi codice che ora legge l'indice per i dati non restituisce nulla perché i file di indice sono essendo overwritte n; risultati in sito non mostrando alcun dato
- Rebuild completa: i dati ora disponibili ancora una volta, i dati di nuovo sul sito web
Grazie in anticipo
È possibile aprire un indice in modalità di aggiunta, nel qual caso l'indice corrente rimane disponibile fino a quando non si esegue il flush o il commit delle nuove scritture. – Mikos