Partager via


Changements de comportement pour la recherche en texte intégral

Cette rubrique décrit les changements de comportement de la recherche en texte intégral. Les changements de comportement affectent le fonctionnement ou l’interaction des fonctionnalités dans SQL Server 2014 par rapport aux versions antérieures de SQL Server.

Changements de comportement dans la recherche Full-Text dans SQL Server 2014

Informations qui seront fournies par la suite.

Changements de comportement dans la recherche Full-Text dans SQL Server 2012

SQL Server 2012 installe une nouvelle version des séparateurs de mots et des stemmers pour l’anglais américain (LCID 1033) et l’anglais britannique (LCID 2057). Toutefois, vous pouvez revenir à la version précédente de ces composants si vous souhaitez conserver le comportement précédent. Pour plus d’informations, consultez Modifier l’analyseur lexical utilisé pour l’anglais des États-Unis et l’anglais du Royaume-Uni.

Nouveaux analyseurs lexicaux et générateurs de formes dérivées installés

SQL Server 2012 met à jour tous les disjoncteurs et les séparateurs de mots utilisés par la recherche Full-Text et la recherche sémantique. Pour des raisons de cohérence entre le contenu des index et les résultats des requêtes, nous vous recommandons de réalimenter les index de recherche en texte intégral existants.

  1. Il existe de nouveaux analyseurs lexicaux pour l'anglais. Si vous devez conserver le comportement antérieur, consultez Modifier l’analyseur lexical utilisé pour l’anglais des États-Unis et l’anglais du Royaume-Uni.

  2. Les disjoncteurs tiers pour le danois, le polonais et le turc qui étaient inclus dans les versions précédentes de SQL Server ont été remplacés par des composants Microsoft. Les nouveaux composants sont activés par défaut.

  3. Il existe de nouveaux analyseurs lexicaux pour le tchèque et le grec. Les versions précédentes de SQL Server Full-Text Search n’incluaient pas la prise en charge de ces deux langues.

Changements de comportement des nouveaux analyseurs lexicaux et générateurs de formes dérivées

Les nouveaux composants peuvent retourner des résultats autres que les composants plus anciens lorsque vous remplissez et interrogez les index de recherche en texte intégral. Les tableaux suivants illustrent certaines différences pouvant se présenter dans des résultats en anglais.

Si vous devez conserver le comportement antérieur des analyseurs lexicaux et des générateurs de formes dérivées, consultez les rubriques suivantes :

Dans certains cas, les nouveaux composants retournent davantage de résultats :

Terme Résultats avec l'analyseur lexical et le générateur de formes dérivées précédents Résultats avec les nouveaux analyseur lexical et générateur de formes dérivées
cat-dog cat

chien
cat

cat-dog

chien
cat@dog.com cat

com

chien
cat

cat@dog.com

com

chien
12/11/2011

(où le terme est une date)
12/11/2011

dd20111211
11

12

12/11/2011

2011

dd20111211

Dans certains cas, les nouveaux composants retournent des résultats similaires :

Terme Résultats avec l'analyseur lexical et le générateur de formes dérivées précédents Résultats avec les nouveaux analyseur lexical et générateur de formes dérivées
100$ 100$

nn100$
100$

nn100usd
022 022

nn022
022

nn22
10:49AM

(où le terme est une heure)
10:49AM

tt1049
10:49AM

tt24104900

Dans certains cas les nouveaux composants retournent moins de résultats ou des résultats qui peuvent être inattendus par les applications :

Terme Résultats avec l'analyseur lexical et le générateur de formes dérivées précédents Résultats avec les nouveaux analyseur lexical et générateur de formes dérivées
jěˊÿqCžl

(où les termes ne sont pas des caractères anglais valides)
'jěˊÿqCžl' je yq zl
table's table's

table
table's
cat- cat

cat-
cat
v-z*(où v et z sont des mots de bruit)* (aucun résultat) v-z
$100 000 USD 100 $

000

nn000

nn100$

usd
$100 000 USD

nn100000usd
beautiful U.S land beautiful

land

u.s

us
beautiful

land
Mt. Kent and Mt Challenger challenger

kent

mt

Mt.
mt

kent

challenger

Changements de comportement dans la recherche Full-Text dans SQL Server 2008

Dans SQL Server 2008 et versions ultérieures, le moteur Full-Text est intégré en tant que service de base de données à la base de données relationnelle dans le cadre de l’infrastructure du moteur de requête et de stockage du serveur. La nouvelle architecture de recherche en texte intégral réalise les objectifs suivants :

  • La recherche en texte intégral est désormais intégrée directement aux fonctionnalités de stockage et de gestion inhérentes à SQL Server, et le service MSFTESQL n’existe plus.

    • Les index de recherche en texte intégral sont stockés dans les groupes de fichiers de la base de données, et non dans le système de fichiers. Les opérations d'administration sur une base de données, telles que la création d'une sauvegarde, affectent automatiquement les index de recherche en texte intégral.

    • Un catalogue de texte intégral est maintenant un objet virtuel qui n'appartient à aucun groupe de fichiers ; c'est un concept logique qui renvoie à un groupe d'index de recherche en texte intégral. Par conséquent, de nombreuses fonctionnalités de gestion de catalogue ont été déconseillées, et cet abandon a créé des modifications avec rupture pour quelques fonctionnalités. Pour plus d’informations, consultez Fonctionnalités du moteur de base de données déconseillées dans SQL Server 2014 et Modifications cassants apportées à la recherche Full-Text.

      Notes

      SQL Server instructions Transact-SQL DDL 2005 qui spécifient des catalogues de texte intégral fonctionnent correctement.

  • Traitement des requêtes intégré - Le nouveau processeur de requêtes de recherche en texte intégral fait partie du moteur de base de données et est entièrement intégré au processeur de requête SQL Server. Cela signifie que l'optimiseur de requête reconnaît les prédicats de requête de texte intégral et les exécute automatiquement aussi efficacement que possible.

  • La recherche en texte intégral intégrée offre des outils pour vous aider à analyser les structures de recherche telles que l’index de texte intégral, la sortie d’un analyseur de mots donné, la configuration de mots vides, etc.

  • Les mots vides et les listes de mots vides ont remplacé les mots parasites et les fichiers de mots parasites. Une liste de mots vides est un objet de base de données qui facilite les tâches gestion des mots vides et améliore l'intégrité entre instances de serveur différentes et environnements. Pour plus d’informations, consultez Configurer et gérer les mots vides et listes de mots vides pour la recherche en texte intégral.

  • SQL Server 2008 et versions ultérieures incluent de nouveaux disjoncteurs pour de nombreuses langues qui existent dans SQL Server 2005. Seuls les analyseurs lexicaux pour l'anglais, le coréen, le thaï et le chinois (traditionnel et simplifié) restent inchangés. Pour d’autres langues, si un catalogue de texte intégral a été importé lorsqu’une base de données SQL Server 2005 a été mise à niveau vers SQL Server 2008 ou une version ultérieure, une ou plusieurs langues utilisées par les index de texte intégral dans le catalogue de texte intégral peuvent maintenant être associées à de nouveaux analyseurs de mots qui peuvent se comporter légèrement différemment des analyseurs de mots importés. Pour plus d’informations sur la façon de garantir la cohérence entre les requêtes et le contenu de l’index de texte intégral, consultez Mettre à niveau Full-Text Search.

  • Un nouveau service de lancement FDHOST (MSSQLFDLauncher) a été ajouté. Pour plus d’informations, consultez Prise en main de Full-Text Search.

  • L’indexation de texte intégral fonctionne avec une colonne FILESTREAM de la même manière qu’avec une varbinary(max) colonne. La table FILESTREAM doit avoir une colonne qui contient l'extension de nom de fichier pour chaque objet blob FILESTREAM. Pour plus d’informations, consultez Interroger avec Full-Text rechercher, configurer et gérer des filtres pour la recherche et les sys.fulltext_document_types (Transact-SQL).

    Le moteur de texte intégral indexe le contenu des objets blob FILESTREAM. L'indexation de fichiers tels que des images peut ne pas être utile. Lorsqu'un objet blob FILESTREAM est mis à jour, il est réindexé.

Voir aussi

Recherche en texte intégral
Compatibilité descendante de la recherche en texte intégral
Mise à niveau de la fonction de recherche en texte intégral
Commencer à utiliser la recherche en texte intégral