Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Index Advisor est un Assistant d’optimisation des performances intégré pour Azure DocumentDB qui vous aide à diagnostiquer les requêtes lentes, à comprendre le comportement d’exécution des requêtes et à implémenter des stratégies d’index optimisées. Index Advisor analyse votre structure de requête, ainsi que les statistiques de collecte et d’index. Index Advisor génère ensuite des recommandations claires basées sur les données avec des explications lisibles qui décrivent pourquoi un index spécifique contribuerait à améliorer les performances.
Avantages d’Index Advisor
Voici quelques avantages de l’utilisation d’Index Advisor.
- Identifiez les goulots d’étranglement des performances et les requêtes inefficaces.
- Recevoir des recommandations d’index actionnables hiérarchisées par effet de performances.
- Comprendre pourquoi un index est important grâce à des explications claires et simples en anglais.
- Appliquez instantanément des recommandations d’index dans l’extension.
- Comparez automatiquement les performances avant et après une fois l’index créé.
Cas d’usage pour Index Advisor
Index Advisor prend en charge différents modèles de requête et scénarios d’optimisation pour améliorer les performances de votre base de données.
| Scénario | Descriptif |
|---|---|
| Égalité / Requête d'intervalle | Gère des filtres d’égalité ou de plage simples (par exemple, field = value ou field > value). |
| Filtre composé / Requête couverte / Jointure de recherche | Analyse les requêtes qui impliquent plusieurs conditions de filtre ou jointures qui peuvent être optimisées avec des index composés ou couverts pour rechercher des requêtes. |
| Index composite | Suggère des index multi-champs (composites) pour prendre en charge des requêtes de recherche/tri complexes |
| Trier uniquement | Identifie quand une opération de tri peut être améliorée ou couverte par un index. |
| Filtre + Tri / Réduction de l'index | Recommande les structures d’index qui permettent de gérer efficacement le filtrage et le tri dans la couche d’index, ce qui réduit les analyses de document. |
| Couverture d’index existante | Prise en charge pour les requêtes Rechercher ; si un index existe déjà, aucun nouvel index n’est suggéré. |
Si votre scénario de requête se situe en dehors de ces modèles, contactez l’équipe Azure DocumentDB pour obtenir de l’aide sur votre cas d’usage spécifique.
Prerequisites
Un abonnement Azure
- Si vous n’avez pas d’abonnement Azure, créez un compte gratuit
Un cluster Azure DocumentDB existant
- Si vous n’avez pas de cluster, créez un cluster
Visual Studio Code
Extension DocumentDB installée
Extension GitHub Copilot installée avec un abonnement GitHub Copilot valide
Se connecter à votre cluster Azure DocumentDB
Connectez-vous à votre cluster Azure DocumentDB dans l’extension Visual Studio Code.
Ouvrez l’extension DocumentDB pour Visual Studio Code à partir de la barre d’activité.
Sélectionnez Ajouter une connexion pour créer une connexion de cluster.
Choisissez votre méthode d’authentification et fournissez les détails de connexion requis.
Testez la connexion pour vous assurer qu’elle fonctionne correctement.
Développez votre cluster pour afficher les bases de données et collections disponibles.
Ouvrir une requête pour l’analyse
Commencez l’analyse des performances avec Index Advisor en ouvrant une requête dans l’extension DocumentDB.
Ouvrez une requête Find, Aggregate ou Count dans l’extension.
Allez à l’onglet Analyse des requêtes.
Exécutez votre requête. Le panneau affiche des indicateurs de performances clés tels que le temps d’exécution, les documents retournés, les clés examinées et les documents examinés. Index Advisor collecte et analyse le plan d’exécution de requête et les statistiques à partir du cluster connecté (mode standard) ou des données préchargées (mode préchargement). Un modèle de langage (GitHub Copilot) examine les plans et les statistiques assainis pour recommander des index optimaux.
Important
Toutes les valeurs de requête littérales (par exemple, les e-mails, les nombres ou le texte) sont remplacées par des espaces réservés
<value>avant d’être envoyées pour analyse.Voici un exemple de nettoyage :
Requête non filtrée qui n'est pas envoyée
{ "filter": { "email": "john.doe@example.com", "age": { "$gt": 25 } } }Requête expurgée envoyée
{ "filter": { "email": "<value>", "age": { "$gt": "<value>" } } }
Appliquez directement une recommandation ; l’extension crée l’index et réexécute la requête pour mettre à jour les métriques de performances.
Passez en revue les résumés des statistiques de requête et du plan d’exécution .
Explorez la liste des opportunités d’optimisation . Chaque recommandation comprend une explication lisible par l’homme et une définition d’index suggérée.
Sélectionnez Appliquer pour créer l’index recommandé. La création d’index s’exécute de manière asynchrone en arrière-plan. Une fois terminé, le panneau s’actualise automatiquement avec les résultats mis à jour. Après la création de l’index, Index Advisor réexécrit les métriques d’analyse et de mise à jour pour vous permettre de comparer les améliorations des performances.
Limitations d’Index Advisor
Voici les limitations de la fonctionnalité Index Advisor.
- Disponibilité régionale : Index Advisor est actuellement disponible uniquement dans les régions des États-Unis et du Canada .
- Gestion des index : L’Conseiller d’index recommande uniquement de créer de nouveaux index ; il ne recommande pas de supprimer ou de masquer les index existants pour l’instant.
- Couverture du scénario : Seuls les scénarios pris en charge répertoriés précédemment sont optimisés dans cette version. Pour d’autres types de requêtes, contactez l’équipe Azure DocumentDB ou consultez les meilleures pratiques d’indexation.
- Sensibilité des données : Traitez les noms de base de données et de collection comme des métadonnées, mais passez toujours en revue les stratégies de classification des données internes.
Meilleures pratiques lors de l’utilisation d’Index Advisor
Voici les meilleures pratiques d’utilisation de la fonctionnalité Index Advisor.
- Suivez les stratégies de gouvernance des données de votre organisation lors de l’exportation ou du partage de statistiques.
- Passez en revue les recommandations d’index avant de les appliquer pour vous assurer qu’elles s’alignent sur vos exigences en matière de charge de travail et de coût.
- Évitez de supprimer manuellement des index sans passer en revue les dépendances ou consulter l’équipe Azure DocumentDB.
- Si vos modèles de requête ne sont pas pris en charge, consultez les meilleures pratiques d’indexation pour obtenir des conseils et du soutien.
Considérations relatives à Index Advisor
Index Advisor est conçu pour vous aider à optimiser les requêtes tout en protégeant votre confidentialité des données à chaque étape.
Cette liste affiche les données collectées par l’extension :
- Plans d’exécution des requêtes : informations structurelles et métriques de performances.
- Statistiques de collecte : nombre de documents, tailles de données et d’index et nombres d’index.
- Détails de l’index : noms d’index, modèles clés et métriques d’utilisation.
- Métadonnées de cluster : informations limitées telles que l’état d’hébergement Azure et le type d’API.
Conformité et protection des données
Pour garantir la conformité et la protection des données, le système implémente les protections suivantes avant d’envoyer des informations à des fins d’analyse :
- Remplacement de toutes les valeurs littérales dans les requêtes et les plans d’exécution par
<value>. -
Conservation des noms de champs et des opérateurs de requête (tels que
email, ,$gt$in) pour conserver le contexte. - Nettoyage complet des plans d’exécution pour garantir qu’aucune donnée sensible ou personnelle n’est conservée.
- Conservez les métriques de performances (telles que
nReturnedouexecutionTimeMillis) car elles ne contiennent aucune valeur littérale de vos données. - Transmission uniquement de la structure, des statistiques et des métadonnées nettoyées requises pour l’analyse, et ne jamais échantillonner des documents ou des valeurs brutes.
- Soumettre toute fonctionnalité future qui nécessite des données non approuvées pour une révision complète de la confidentialité et de la conformité Microsoft.
Index Advisor analyse uniquement la structure des requêtes et les caractéristiques de performances, jamais vos données réelles.