Administration de la recherche de texte intégral

L'administration de la recherche de texte intégral se compose de quatre tâches principales :

  • Création des index de texte intégral et des catalogues de texte intégral.
  • Modification des index et catalogues de texte intégral existants.
  • Suppression des index et catalogues de texte intégral existants.
  • Planification et conservation du remplissage de l'index.

L'administration de la recherche de texte intégral s'effectue aux niveaux du serveur, de la base de données, de la table et de la colonne. Au niveau du serveur, vous pouvez définir certaines propriétés à l'échelle du serveur, par exemple resource_usage, afin d'augmenter ou de réduire la quantité de ressources système utilisées par le service de texte intégral. Au niveau de la base de données, vous pouvez activer ou désactiver une base de données pour utiliser le service du moteur de texte intégral Microsoft pour SQL Server (MSFTESQL). Vous pouvez créer et supprimer les métadonnées d'un ou de plusieurs catalogues de texte intégral dans une base de données activée pour le texte intégral.

ms142557.note(fr-fr,SQL.90).gifRemarque :
Dans Microsoft SQL Server 2005, toutes les bases de données sont activées pour le texte intégral par défaut.

Au niveau de la table, vous pouvez activer ou désactiver une table pour la prise en charge du texte intégral. Si, pour une table, la définition de texte intégral change (par exemple, suite à l'inclusion d'une nouvelle colonne qui sera également indexée pour la recherche de texte intégral), vous devez remplir de nouveau le catalogue de texte intégral associé afin d'assurer la synchronisation de l'index de texte intégral et de la nouvelle définition de texte intégral. Au niveau de la colonne, vous pouvez ajouter ou supprimer des colonnes qui prennent en charge les requêtes de texte intégral.

Considérations relatives à la création d'index de texte intégral et de catalogues de texte intégral

Avant d'apprendre à créer des index de texte intégral, il est important de savoir en quoi ils diffèrent des index SQL Server classiques. Le tableau suivant décrit ces différences.

Index de texte intégral Index SQL Server classiques

Sont stockés dans le système de fichiers mais gérés par la base de données.

Sont stockés sous le contrôle de la base de données dans laquelle ils sont définis.

Un seul index de texte intégral est autorisé par table.

Plusieurs index classiques sont autorisés par table.

L'ajout de données aux index de texte intégral, opération que l'on appelle remplissage, doit être demandé, soit dans le cadre de la planification, soit par le biais d'une requête spécifique, ou peut intervenir automatiquement lors de l'ajout de nouvelles données.

Sont mis à jour automatiquement lorsque les données sur lesquelles ils sont fondés sont modifiées, mises à jour ou supprimées.

Sont groupés à l'intérieur d'une même base de données dans un ou plusieurs catalogues de texte intégral.

Ne sont pas groupés.

À tous les niveaux, des moyens sont disponibles pour récupérer les métadonnées et les informations d'état.

À l'instar des index SQL Server classiques, les index de texte intégral peuvent être automatiquement mis à jour à mesure que les données sont modifiées dans les tables associées. Vous pouvez également remplir de nouveau les index de texte intégral manuellement à des intervalles appropriés, mais cela risque de vous demander beaucoup de temps et de ressources. Par conséquent, la mise à jour de l'index est généralement effectuée sous forme de tâche asynchrone s'exécutant en arrière-plan durant les périodes creuses d'activité de la base de données.

Les tables ayant les mêmes caractéristiques de mise à jour (par exemple avec peu de modifications ou, au contraire, beaucoup de modifications, ou les tables fréquemment modifiées à un moment donné de la journée) doivent être regroupées et affectées au même catalogue de texte intégral. Cette façon de configurer la planification du remplissage du catalogue de texte intégral permet d'assurer la synchronisation perpétuelle des index de texte intégral et des tables, sans nuire à l'utilisation des ressources du serveur de base de données pendant les périodes de forte activité.

Il est important de planifier le placement d'index de texte intégral pour les tables des catalogues de texte intégral. Lorsque vous affectez une table à un catalogue de texte intégral, prenez en considération les directives suivantes :

Sélectionnez systématiquement le plus petit index unique disponible comme clé unique de texte intégral Il s'agira idéalement d'un index de quatre octets, basé sur des entiers. Ainsi, les ressources exigées par le service Microsoft Search dans le système de fichiers sont réduites de manière significative. Si la clé primaire est volumineuse (plus de 100 octets), pensez à choisir un autre index unique pour la table (ou créez-le) comme clé unique de texte intégral. Dans le cas contraire, si la taille de la clé unique de texte intégral dépasse la taille maximale autorisée (900 octets), le remplissage de texte intégral est impossible.

Si vous indexez une table de plusieurs millions de lignes, affectez-la à un catalogue de texte intégral qui lui est propre.

Prenez en compte la quantité de modifications apparaissant dans les tables soumises à l'indexation de texte intégral ainsi que le nombre de lignes concernées dans ces tables. Si le nombre total de lignes modifiées, auquel s'ajoute le nombre de lignes de table présentes au cours du dernier remplissage de texte intégral, s'élève à plusieurs millions, affectez la table à un catalogue de texte intégral qui lui est propre.

Voir aussi

Concepts

Index de texte intégral
Introduction à la recherche de texte intégral
Architecture de la recherche de texte intégral
Exécution de requêtes SQL Server à l'aide de la recherche de texte intégral

Autres ressources

Concepts de la recherche de texte intégral

Aide et Informations

Assistance sur SQL Server 2005