2012-08-29 13 views
8

Mi caso de uso implica indexar un documento Lucene, luego en varias ocasiones futuras agregar términos que apuntan a este documento existente, es decir, sin eliminar y volver a agregar todo el documento para cada nuevo término (debido al rendimiento y no mantener los términos originales).Por qué Lucene no es compatible con ningún tipo de actualización de un documento existente

Sé que un documento no se puede actualizar realmente. Mi pregunta es ¿por qué?

O más precisamente, ¿por qué no se admiten todas las formas de actualizaciones (términos, campos almacenados)?
Por qué no es posible agregar otro término para apuntar a un documento existente - técnicamente: no es todo lo que se necesita es tener el documento existente Id colocado en la lista de publicación del término. ¿Por qué es tan difícil? ¿Hay algunas estadísticas inmutables que están en el camino?

¿Hay alguna solución para apoyar mi uso de agregar un término (campo indexado) a un documento existente?

Respuesta

4

Sé que un documento no se puede actualizar realmente. Mi pregunta es por qué?

Gili, la edición de un documento provocará cambios en las publicaciones de los términos relacionados y esto es problemático debido a los términos estructura de lista de publicación. La lista de publicación se ordena y almacena secuencialmente en la memoria. Por lo tanto, para agregar un documento a la lista de publicación de un término, debe darle un valor más alto, doc id, esto se hace eliminando y volviendo a indexar todo el documento.

+0

TY tipo extraño. –

Cuestiones relacionadas