Soy nuevo en Lucene.NET pero estoy usando an open source tool construido para Sitecore CMS que usa Lucene.NET para indexar un montón de contenido del CMS. Ayer confirmé que cuando reconstruyo mis índices, los archivos de índice actuales se limpian para que todo lo que dependa del índice no obtenga datos durante aproximadamente 30-60 segundos (la cantidad de tiempo para una reconstrucción completa del índice). ¿Existe una mejor práctica o forma de que Lucene.NET no sobrescriba los archivos de índice actuales hasta que el nuevo índice se haya reconstruido por completo? Básicamente estoy pensando que me gustaría escribir en nuevos archivos de índice temp y cuando termine la reconstrucción, esos archivos sobrescriben el índice actual.Evite la eliminación del índice Lucene.NET actual durante la reconstrucción
ejemplo de lo que estoy hablando:
- Construir índice actualizado (~ 30 segundos)
- Índice cuenta con unos 500 documentos
- utilizar código para acceder a los datos de índice y la vista en el sitio web
- volver a generar índice (~ 30 segundos)
- Cualquier código que ahora se lee el índice para los datos no devuelve nada, porque los archivos de índice están siendo overwritte norte; los resultados en el sitio web no se muestra ningún dato
- Reconstruir completa: los datos ya está disponible de nuevo, datos de nuevo en el sitio web
Gracias de antemano
Puede abrir un índice en modo de adición, en cuyo caso su índice actual permanece disponible hasta que vacíe o confirme sus nuevas escrituras. – Mikos