Después de crear y actualizar el índice de texto por primera vez, deberá mantener el índice actualizado. Por ejemplo, cuando añada un documento de texto a una base de datos o modifique un documento existente en una base de datos, deberá indexar el documento para mantener el contenido del índice sincronizado con el contenido de la base de datos. Del mismo modo, cuando suprima un documento de texto de una base de datos, sus términos se deberán eliminar del índice.
Si el índice de texto se ha creado sin la opción RECREATE INDEX ON UPDATE, los activadores almacenarán automáticamente información sobre documentos nuevos, cambiados o suprimidos en una tabla de anotaciones cronológicas interna. Por lo tanto, la próxima vez que se lleve a cabo una actualización del índice, se indexarán documentos a los que se haga referencia en la tabla de anotaciones cronológicas. Para los índices de texto sobre vistas, consulte la sección Índices de texto en vistas para obtener más información.
Si especifica la opción RECREATE en el mandato CREATE INDEX, el índice se volverá a crear completamente en cada actualización. Esta opción no crea tablas de anotaciones cronológicas ni activadores.
Un índice suele actualizarse a intervalos. Puede cambiar la frecuencia de actualización para un índice existente utilizando el mandato ALTER INDEX.
Es posible especificar la frecuencia de actualización del índice en función de cuándo debe realizarse la actualización y del número mínimo de cambios de texto que deben estar en la cola. Si no hay suficientes cambios en la tabla de anotaciones cronológicas en un día y a una hora determinados, no se actualiza el índice.
La indexación periódica debe programarse con cuidado: la indexación de documentos de texto es una tarea que consume mucho tiempo y recursos. El tiempo que cuesta depende de muchos factores. Entre éstos están el tamaño de los documentos, la cantidad de documentos de texto que se han añadido o modificado desde la actualización anterior del índice y la potencia del procesador.
Nota |
---|
En una tabla de DB2, se pueden producir situaciones de retrotracción y de punto muerto en los siguientes casos:
|
El mandato UPDATE INDEX le permite actualizar un índice inmediatamente cuando se le pide.
Resumen |
---|
|
El siguiente mandato actualiza el índice:
db2text UPDATE INDEX comentarios FOR TEXT
Este mandato es útil cuando ha añadido varios documentos de texto a una base de datos y desea realizar búsquedas en ellos inmediatamente.
Para determinar si la reorganización manual es necesaria, consulte la vista db2ext.textindexes utilizando el siguiente mandato:
db2 "select reorg_suggested from db2ext.textindexes where INDNAME = 'comentarios'"
Si especifica MANUAL REORGANIZATION y actualiza una columna frecuentemente, el proceso de actualización se ralentizará. Para reorganizar manualmente, utilice el siguiente mandato:
dbtext UPDATE INDEX comentarios FOR TEXT reorganize
Sin embargo, si especifica AUTOMATIC REORGANIZE durante CREATE INDEX, el índice se reorganizará automáticamente cuando sea necesario.