IBM Books
(C) IBM Corp. 2000

DB2 Extension Net Search - Guide d'administration et d'utilisation

UPDATE INDEX

Cette commande démarre immédiatement le processus d'indexation en mettant à jour l'index pour qu'il reflète le contenu courant des colonnes de texte avec lesquelles il est associé.

Pendant l'exécution de la mise à jour, la recherche avec le prédicat CONTAINS est possible. Pour un index avec une table de résultats mise en cache et activée, la recherche par procédure mémorisée est également possible pendant la mise à jour. Cependant, les colonnes de la table mise en cache peuvent afficher de nouvelles valeurs, même si le texte modifié n'est pas encore validé dans l'index en texte intégral.

L'utilisation de l'option RECREATE INDEX ON UPDATE dans la commande CREATE INDEX permet de vider l'index avant de le recréer. Jusqu'à la fin de la mise à jour, des résultats vides sont renvoyés.

Autorisation

Selon les vues de catalogue DB2, l'ID utilisateur de cette commande doit disposer des droits CONTROL sur la table pour laquelle l'index en texte intégral a été créé.

Syntaxe de commande

>>-UPDATE-INDEX--+-----------------+--nom-index--FOR-TEXT------->
                 '-schéma-index"."-'
 
>--+------------+--+---------------------+---------------------->
   '-REORGANIZE-'  '-COMMITCOUNT--nombre-'
 
>--+----------------------+--+---------------------+-----------><
   '-USING-UPDATE-MINIMUM-'  '-|options-connexion|-'
 
options-connexion
 
|--+-----------------------------------------------------------------------------------+--|
   '-CONNECT-TO--nom-de-base-de-données--+-------------------------------------------+-'
                                         '-USER--id-utilisateur--USING--mot-de-passe-'
 
 

Paramètres de commande

schéma-index
Schéma de l'index de texte. Il est spécifié dans la commande CREATE INDEX. Si aucun schéma n'est spécifié, l'ID utilisateur de la connexion DB2 est utilisé.

nom-index
Nom de l'index de texte. Il est spécifié dans la commande CREATE INDEX.

REORGANIZE
Si une colonne de texte est fréquemment mise à jour, les mises à jour ultérieures de l'index peuvent devenir inefficaces. Pour rendre le processus de mise à jour à nouveau efficace, réorganisez l'index. La vue DB2EXT.TEXTINDEXES permet de déterminer si un index doit être réorganisé.

L'option REORGANIZE AUTOMATIC de la commande CREATE INDEX permet d'éviter la vérification et la réorganisation manuelles de l'index.

Remarque

Le processus de réorganisation a lieu après une mise à jour standard.

USING UPDATE MINIMUM
Utilise les paramètres UPDATE MINIMUM de la commande CREATE INDEX et lance une mise à jour incrémentielle uniquement si le nombre de modifications spécifié a été atteint. Par défaut, la mise à jour est lancée sans condition.

Pour des bases de données réparties, l'option UPDATE MINIMUM est vérifiée sur tous les noeuds.

Pour plus d'informations, reportez-vous à la section CREATE INDEX.

COMMITCOUNT nombre
Un entier supérieur ou égal à 0 affiche le nombre de documents traités dans une transaction par le moteur de recherche et par DB2 pour les mises à jour incrémentielles de l'index.

Cependant, pour les mises à jour initiales, telles que la première mise à jour après la commande CREATE INDEX ou toute mise à jour avec l'option RECREATE INDEX ON UPDATE, une seule transaction logique ignore COMMITCOUNT. Ceci peut être changé grâce à la commande ALTER INDEX.

CONNECT TO nom-de-base-de-données
Nom de la base de données qui constitue la cible de cette commande. Ce paramètre peut être omis, si DB2DBDFT est défini et que l'utilisateur exécute la commande sur le serveur. Notez que l'ID utilisateur doit disposer des droits DB2 requis.

USER id-utilisateur USING mot-de-passe
Utilisez un mot de passe et un ID utilisateur pour vous connecter à la base de données. Sans spécification de votre part, la connexion est tentée sous l'ID utilisateur courant et sans mot de passe.

Usage

Cette commande s'exécute de manière synchrone. Elle démarre le traitement de la mise à jour sur tous les noeuds logiques/physiques DB2 requis dans un environnement DB2 réparti. La durée dépend du nombre de fichiers à indexer et du nombre de documents déjà indexés. L'état de la mise à jour peut être affiché dans une vue créée pour chaque index. Le nom de cette vue peut être extrait de DB2EXT.TEXTINDEXES dans la colonne EVENTVIEWNAME. Pour plus d'informations, reportez-vous à l'Annexe C, Catalogues d'informations DB2 Extension Net Search.

Deux options sont possibles pour afficher le nombre de documents validés, ayant été traités. Pour déterminer si une mise à jour est toujours en cours d'exécution et combien de documents ont été validés dans l'index, utilisez la vue DB2EXT.TEXTINDEXES (NUMBERDOCS). Pour obtenir des informations sur le démarrage, la validation des modifications et la fin du traitement de mise à jour, utilisez la vue des événements associée à l'index.

Pour afficher le nombre de documents non validés, ayant été traités, utilisez la commande CONTROL LIST ALL LOCKS FOR INDEX.

Remarque

Les vues affichent uniquement des informations relatives au noeud connecté.

Pour les mises à jour incrémentielles sur une table de base avec des noeuds physiques, l'heure doit être synchronisée sur chaque noeud. Si les heures ne sont pas synchronisées, les mises à jour peuvent être perdues ou ne pas prendre effet.

Il n'est pas possible d'émettre la commande si l'une des commandes suivantes est en cours d'exécution sur l'index :

Après la mise à jour d'un index avec une table de résultats mise en cache persistante et désactivée, la mémoire cache persistante est supprimée de telle sorte que la commande suivante ACTIVATE CACHE la recrée en fonction du contenu de la base de données.

Si l'utilisateur interrompt cette commande, tous les processus impliqués dans la fonction de mise à jour s'arrêtent. Si un nombre de validations a été utilisé dans une mise à jour incrémentielle, certaines mises à jour peuvent être visibles dans l'index, alors que d'autres peuvent nécessiter une nouvelle commande de mise à jour.

Pour mettre fin à la mise à jour automatique d'un index, recherchez le processus du propriétaire d'instance DB2 exécutant la commande de mise à jour de l'index sur la partition utilisée pour les services de mise à jour. Arrêtez ce processus et le traitement de la mise à jour sur toutes les partitions.

Remarque

Comme la commande fonctionne en deux phases séparées pour la création de l'index sur toutes les partitions et les mises à jour initiales de l'index, émettez une commande db2text drop index pour s'assurer que l'index n'est pas en partie disponible. Si cette commande n'est pas émise, la mise à jour suivante qui peut être déclenchée par une commande de mise à jour ou l'option UPDATE FREQUENCY, effectuera une complète ré-indexation pour garantir un état cohérent.

Modifications de la base de données

Lorsque vous utilisez des tables de capture de réplication, les modifications suivantes sont apportées à la base de données.


[ Début de page | Page précédente | Page suivante | Table des matières | Index ]