Tâches de l'indexeur : mise à jour et mise à jour

Les tâches Update et Updall maintiennent à jour les index de vue et les index de texte intégral.

Mise à jour

La mise à jour est chargée par défaut au démarrage du serveur et s'exécute en continu, vérifiant dans sa file d'attente de travail les vues et les dossiers qui nécessitent une mise à jour. L'indexeur utilise des ressources système modestes en attendant cinq secondes entre chaque opération de mise à jour de la base de données effectuée.

La tâche Mise à jour effectue trois tâches de mise à jour différentes :

  • Met à jour les vues dans l'annuaire Domino ® .
  • Met à jour les vues dans toutes les autres bases de données. Lorsqu'une demande de mise à jour d'une vue est effectuée, la vue n'est mise à jour que s'il y a au moins 20 modifications de notes depuis la dernière mise à jour et si la vue a été consultée au cours des 7 derniers jours. Le service de mise à jour des vues augmente la vitesse du temps d'accès aux vues lorsqu'une vue est ouverte dans le client Notes ® . Si les vues ne sont pas mises à jour souvent, le seul effet sur les utilisateurs ou les applications est un temps d'ouverture lent, car les vues sont automatiquement mises à jour lorsqu'elles sont ouvertes.
  • Met à jour les index de texte intégral. L'indexation de texte intégral offre la possibilité de rechercher des notes récemment ajoutées. Si une note est ajoutée après l'indexation en texte intégral la plus récente, cette note ne sera pas trouvée par une recherche en texte intégral.

Update gère deux files d'attente de travail : une file d'attente immédiate et une file d'attente différée. D'autres composants du serveur, tels que le routeur et le réplicateur, envoient des requêtes au programme de mise à jour lorsque des modifications sont apportées aux bases de données. Certaines demandes sont affichées comme différées et d'autres comme immédiates.

Tableau 1 . Mises à jour de l'index de texte intégral par fréquence de mise à jour

Fréquence de mise à jour

Description

Tous les jours

Effectué par la tâche Updall nocturne. Si cette tâche nocturne n'est pas exécutée, la mise à jour quotidienne n'est pas effectuée.

Programmé

Effectué par un document programme qui exécute Updall. Vous devez définir la fréquence sur Planifiée et créer le document de programme approprié. Vous pouvez également utiliser cette méthode pour mettre à jour différentes bases de données à des moments différents.

Horaire

Déclenché par la tâche chronos et effectué par la tâche de mise à jour si la tâche de mise à jour est en cours d'exécution. Si la tâche de mise à jour n'est pas en cours d'exécution, chronos effectue la mise à jour. Si la tâche chronos n'est pas en cours d'exécution, la mise à jour n'est pas effectuée.

Immédiat

Effectué par la tâche Mise à jour. Si Update n’est pas en cours d’exécution, la mise à jour n’est pas effectuée. Toutes les demandes immédiates sont traitées au fur et à mesure de leur réception.

Différé

Les demandes différées sont conservées 15 minutes avant d'être traitées. Les demandes de mise à jour de la même base de données qui surviennent à ce moment-là sont ignorées en tant que demandes en double.

Lorsqu'une modification de vue ou de dossier est enregistrée dans la file d'attente, Update attend environ 15 minutes avant de mettre à jour tous les index de vue de la base de données afin que la mise à jour puisse inclure toute autre modification de la base de données effectuée au cours de la période de 15 minutes. Après avoir mis à jour les index de vue dans une base de données, il met ensuite à jour toutes les bases de données dont les index de recherche en texte intégral sont définis pour des mises à jour immédiates ou horaires.

Lorsque Update rencontre un index de vue ou un index de texte intégral corrompu, il reconstruit l'index de vue ou l'index de texte intégral pour tenter de corriger le problème. La mise à jour supprime l'index de vue ou l'index de texte intégral et le reconstruit.

Pour améliorer les performances d'indexation des vues et si votre serveur dispose d'une puissance CPU adéquate, vous pouvez exécuter plusieurs tâches de mise à jour.

Gestion de la tâche de mise à jour et de son utilisation des ressources système

L'indexeur est capable de suivre le taux de mise à jour dans la configuration par défaut du serveur si le serveur a un faible taux de mise à jour, c'est-à-dire si peu de modifications sont apportées aux bases de données sur le serveur. Si un serveur présente un taux de mise à jour élevé en raison d'une utilisation intensive de la base de données d'application, d'un grand nombre d'utilisateurs de messagerie ou d'un volume de courrier important, la configuration d'utilisation des ressources par défaut peut entraîner une augmentation des files d'attente du programme de mise à jour. Si vous déterminez que les files d'attente de mise à jour sont trop volumineuses, déterminez une méthodologie pour effectuer les mises à jour sur ce serveur. Les longues files d'attente indiquent généralement que les vues et les index de texte intégral ne sont pas à jour.

Voici quelques exemples de scénarios et de pratiques que vous souhaiterez peut-être utiliser, ainsi que les étapes utilisées pour les mettre en œuvre.

  • Scénario 1 : les files d'attente sont généralement courtes, à moins qu'un index de recherche en texte intégral ne démarre pour une base de données de volume de mise à jour importante. Lorsque cela se produit, les demandes de mise à jour de la vue attendent l'index de texte intégral. Cela entraîne une augmentation des files d'attente jusqu'à ce que l'indexation du texte intégral soit terminée. Pour utiliser un peu plus de ressources système afin de réduire les files d'attente, effectuez des mises à jour des vues et des index de texte intégral dans des threads distincts. Pour cela, saisissez la variable UPDATE_FULLTEXT_THREAD=1 dans le fichier NOTES.INI de votre serveur.
  • Scénario 2 : les files d'attente augmentent lentement au fil du temps et deviennent trop longues car la tâche de mise à jour ne dispose pas de ressources système suffisantes pour maintenir les files d'attente courtes. Pour utiliser des ressources supplémentaires afin de réduire les files d'attente, définissez un délai entre chaque opération de mise à jour. Pour définir le délai, entrez ces variables, UPDATE_IDLE_TIME (et FTUPDATE_IDLE_TIME si deux threads sont utilisés) dans le fichier NOTES.INI du serveur. Par défaut, le délai est de 5 secondes. Pour permettre à la tâche de mise à jour d'utiliser des ressources système supplémentaires, définissez le délai sur moins de 5 secondes. Une précision plus fine peut être requise sur un serveur de grande taille. Dans ce cas, vous pouvez définir le délai en millisecondes ( Domino ® 7 et versions ultérieures uniquement) en ajoutant ces variables, UPDATE_IDLE_TIME_MS (et FTUPDATE_IDLE_TIME_MS si deux threads sont utilisés), dans le fichier NOTES.INI du serveur.
  • Scénario : les serveurs qui ont des taux de mise à jour élevés nécessitent souvent trop de ressources système pour réduire les files d'attente. Dans ce cas, vous pouvez décider de ne pas effectuer de mise à jour des vues du tout et simplement autoriser les ouvertures de vues à effectuer les mises à jour automatiquement. Désactivez les mises à jour de la vue en ajoutant la variable UPDATE_DISABLE_VIEWS=1 au fichier NOTES.INI du serveur. Une autre option consiste à limiter le nombre de mises à jour immédiates pour les bases de données en texte intégral. Vous modifiez la fréquence de mise à jour des bases de données sur une fréquence horaire, quotidienne ou selon une planification spécifique. Vous pouvez également supprimer les index de texte intégral superflus.

    Pour permettre une indexation de texte intégral fréquente uniquement sur un petit nombre de bases de données et pour empêcher d'autres bases de données d'être indexées en texte intégral, désactivez l'indexation de texte intégral dans le programme de mise à jour, puis ajoutez des documents du programme pour planifier l'exécution d'Updall, par exemple, tous les demi-heure (30 minutes). Pour désactiver l'indexation de texte intégral dans Updater, saisissez la variable UPDATE_DISABLE_FULLTEXT=1 dans le fichier NOTES.INI du serveur.

    Vous pouvez empêcher toute mise à jour et simplement autoriser les ouvertures de vue à effectuer automatiquement les mises à jour de la vue. Pour empêcher les mises à jour, modifiez la variable NOTES.INI en supprimant la chaîne de mise à jour.

    Si un système dispose de ressources système adéquates pour effectuer des mises à jour, vous pouvez exécuter plusieurs tâches de mise à jour. Pour ce faire, éditez la variable ServerTasks dans le fichier NOTES.INI et ajoutez une deuxième tâche de mise à jour.

    Vous pouvez ajuster les contrôles qui déterminent si une vue modifiée est réellement mise à jour ou non. La base de données et la vue doivent toujours être ouvertes, mais si ces seuils ne sont pas atteints, la vue n'est pas mise à jour.

Pour plus d'informations, voir UPDATE_ACCESS_FREQUENCY et UPDATE_NOTE_MINIMUM ainsi que d'autres paramètres NOTES.INI .

Mise à jour

Updall est similaire à Update, mais il ne s'exécute pas continuellement et ne fonctionne pas à partir d'une file d'attente ; à la place, vous exécutez Updall selon vos besoins. Vous pouvez spécifier des options lorsque vous exécutez Updall, mais sans elles, Updall met à jour tous les index de vue ou les index de recherche en texte intégral sur le serveur qui nécessitent une mise à jour. Pour économiser de l'espace disque, Updall purge également les talons de suppression des bases de données et supprime les index de vue pour les vues inutilisées depuis 45 jours, à moins que le concepteur de base de données n'ait spécifié des critères différents pour la suppression des index de vue. Utilisez le paramètre NOTES.INIDefault_Index_Lifetime_Days à changer lorsque Updall supprime les index de vue inutilisés.

Comme Update, Updall reconstruit tous les index de vue corrompus et les index de recherche en texte intégral qu'il rencontre.

Par défaut, Updall est inclus dans le paramètre NOTES.INIServerTasksAt2, il fonctionne donc tous les jours à 2 heures du matin. L'exécution quotidienne d'Updall permet d'économiser de l'espace disque en purgeant les talons de suppression et en supprimant les index de vue inutilisés. Il garantit également que tous les index de recherche en texte intégral configurés pour des mises à jour quotidiennes sont mis à jour.

Remarque : Lorsque les vues sont en cours de reconstruction -- via les tâches Designer ou Updall -- toutes les nouvelles sessions serveur tentées une fois le processus de reconstruction démarré sont verrouillées. Par conséquent, il est recommandé que les modifications apportées aux modèles principaux, ainsi que les reconstructions complètes des vues, soient programmées tard dans la nuit, lorsque les utilisateurs sont beaucoup moins susceptibles d'avoir besoin d'accéder au serveur.

Le tableau suivant compare les caractéristiques de Update et Updall. Pour Updall, le tableau décrit les caractéristiques par défaut. Vous pouvez également modifier certaines de ces caractéristiques avec les options Updall.

Tableau 2 . Comparaison de Update et Updall

Caractéristique

Mise à jour

Mise à jour

Quand il court

Continuellement après le démarrage du serveur

2 heures du matin et quand tu l'exécutes

Fonctionne sur toutes les bases de données ?

Non. S'exécute uniquement sur les bases de données qui ont été modifiées.

Oui

Actualise les index des vues ?

Oui

Oui

Mettre à jour les index de texte intégral ?

Oui. Met à jour les index de texte intégral définis pour des mises à jour immédiates et horaires.

Oui. Met à jour tous les index de texte intégral.

Détecte et tente de reconstruire les index de vue corrompus ?

Oui

Oui

Détecte et tente de reconstruire les index de texte intégral corrompus ?

Oui

Oui

Purger les talons de suppression ?

Non

Oui

Supprime les index de vue inutilisés ?

Oui (après qu'une vue soit inutilisée pendant 45 jours ou selon une option de suppression de vue spécifiée par un concepteur)

Oui (après qu'une vue soit inutilisée pendant 45 jours ou selon une option de suppression de vue spécifiée par un concepteur)

Ignore la propriété d'affichage « Actualiser l'index » ?

Oui

Oui

Peut-on personnaliser avec des options ?

Non

Oui