Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Помощник по индексу — это встроенный помощник по настройке производительности для Azure DocumentDB, который помогает диагностировать медленные запросы, понимать поведение выполнения запросов и реализовывать оптимизированные стратегии индексов. Консультант по индексам анализирует структуру запросов вместе со статистикой коллекции и индексов. Затем помощник по индексу создает четкие рекомендации, управляемые данными, с понятными объяснениями, которые описывают, почему конкретный индекс поможет повысить производительность.
Преимущества помощника по индексу
Ниже приведены некоторые преимущества использования Консультанта по индексам.
- Определите узкие места производительности и неэффективные запросы.
- Получите практические рекомендации по индексам, расставленные по приоритету в зависимости от влияния на производительность.
- Понять, почему индекс имеет значение с помощью четких, простых английских объяснений.
- Немедленно примените рекомендации по индексу в расширении.
- Автоматическое сравнение производительности до и после создания индекса.
Варианты использования Советника по Индексу
Помощник по индексу поддерживает различные шаблоны запросов и сценарии оптимизации, чтобы повысить производительность базы данных.
| Scenario | Description |
|---|---|
| Равенство / Запрос диапазона | Обрабатывает простые фильтры равенства или диапазона (например, field = value или field > value). |
| Составной фильтр / покрывающий запрос / соединение посредством поиска | Анализирует запросы, включающие несколько условий фильтра или соединения, которые можно оптимизировать с помощью составных или покрытых индексов для поиска запросов. |
| Составной индекс | Предлагает индексы с несколькими полями (составными) для поддержки сложных запросов поиска и сортировки |
| Сортировать только | Определяет, когда можно улучшить или охватить операцию сортировки индексом. |
| Фильтрация и сортировка / pushdown индекса | Рекомендует структуры индексов, позволяющие эффективно обрабатывать фильтрацию и сортировку в пределах слоя индекса, уменьшая сканирование документов. |
| Существующее покрытие индекса | Поддерживается для запросов поиска; Если индекс уже существует, новый индекс не предлагается. |
Если сценарий запроса выходит за рамки этих шаблонов, обратитесь к группе Azure DocumentDB за помощью в конкретном варианте использования.
Предпосылки
подписка Azure
- Если у вас нет подписки Azure, создайте бесплатную учетную запись.
Существующий кластер Azure DocumentDB
- Если у вас нет кластера, создайте новый кластер
Visual Studio Code
Установленное расширение DocumentDB
Расширение GitHub Copilot, установленное с действующей подпиской на GitHub Copilot
Подключение к кластеру Azure DocumentDB
Подключитесь к кластеру Azure DocumentDB в расширении Visual Studio Code.
Откройте расширение DocumentDB для Visual Studio Code на панели действий.
Нажмите кнопку "Добавить подключение", чтобы создать новое подключение к кластеру.
Выберите метод проверки подлинности и укажите необходимые сведения о подключении.
Проверьте подключение, чтобы убедиться, что он работает правильно.
Разверните кластер, чтобы просмотреть доступные базы данных и коллекции.
Открытие запроса для анализа
Начните анализ производительности с помощью помощника по индексу, открыв запрос в расширении DocumentDB.
Откройте запрос "Поиск", "Агрегат" или " Число " в расширении.
Перейдите на вкладку "Аналитика запросов ".
Запустите запрос. На панели отображаются ключевые показатели производительности, такие как время выполнения, возвращенные документы, проверенные ключи и проверенные документы. Помощник по индексу собирает и анализирует план выполнения запросов и статистику из подключенного кластера (стандартный режим) или из предварительно загруженных данных (режим предварительной загрузки). Языковая модель (GitHub Copilot) изучает санизированный план и статистику, чтобы рекомендовать оптимальные индексы.
Important
Все значения литеральных запросов (например, сообщения электронной почты, числа или текст) заменяются
<value>заполнителями перед отправкой для анализа.Ниже приведен пример очистки:
Несанитизированный запрос, который не отправляется
{ "filter": { "email": "john.doe@example.com", "age": { "$gt": 25 } } }Санитизированный запрос, который отправляется
{ "filter": { "email": "<value>", "age": { "$gt": "<value>" } } }
Примените рекомендацию напрямую; расширение создает индекс и повторно запускает запрос для обновления метрик производительности.
Просмотрите сводки по статистике запросов и плану выполнения .
Изучите список возможностей оптимизации . Каждая рекомендация содержит понятное для человека объяснение и предлагаемое определение индекса.
Нажмите кнопку "Применить" , чтобы создать рекомендуемый индекс. Создание индекса выполняется асинхронно в фоновом режиме. После завершения панель автоматически обновляется с обновленными результатами. После создания индекса помощник по индексу повторно запускает анализ и обновляет метрики, чтобы сравнить улучшения производительности.
Ограничения Index Advisor
Ниже приведены ограничения функции Помощника по индексу.
- Региональная доступность: Помощник по индексу в настоящее время доступен только в регионах США и Канады .
- Управление индексами: Помощник по индексу рекомендует только создавать новые индексы; В настоящее время не рекомендуется удалять или скрывать существующие индексы.
- Покрытие сценариев: В этом выпуске оптимизированы только поддерживаемые сценарии, перечисленные ранее. Для других типов запросов обратитесь к команде Azure DocumentDB или ознакомьтесь с рекомендациями по индексированию.
- Конфиденциальность данных: Рассматривайте имена баз данных и коллекций как метаданные, тем не менее изучайте внутренние политики классификации данных.
Рекомендации по использованию помощника по индексу
Ниже приведены рекомендации по использованию функции Помощника по индексу.
- Следуйте политикам управления данными вашей организации при экспорте или совместном использовании статистики.
- Ознакомьтесь с рекомендациями по индексу перед применением, чтобы убедиться, что они соответствуют требованиям к рабочей нагрузке и затратам.
- Избегайте ручного удаления индексов без проверки зависимостей или консультаций с командой Azure DocumentDB.
- Если шаблоны запросов не поддерживаются, ознакомьтесь с рекомендациями по индексированию и поддержкой.
Соображения для помощника индекса
Помощник по индексу позволяет оптимизировать запросы при защите конфиденциальности данных на каждом шаге.
В этом списке показаны данные, собранные расширением:
- Планы выполнения запросов — структурные сведения и метрики производительности.
- Статистика сбора — количество документов, размеров данных и индексов, а также количество индексов.
- Сведения об индексе — имена индексов , шаблоны ключей и метрики использования.
- Метаданные кластера — ограниченные сведения, такие как состояние размещения Azure и тип API.
Соответствие требованиям и защита данных
Чтобы обеспечить соответствие требованиям и защиту данных, система реализует следующие средства защиты перед отправкой любой информации для анализа:
- Замена всех литеральных значений в запросах и планах выполнения
<value>. -
Сохранение имен полей и операторов запросов (например
email,$gt,$in) для сохранения контекста. - Полностью санировать планы выполнения, чтобы обеспечить отсутствие конфиденциальных или персональных данных.
- Сохранение метрик производительности (например,
nReturnedилиexecutionTimeMillis), поскольку они не содержат буквальных значений из ваших данных. - Передаются только санизированная структура, статистика и метаданные, необходимые для анализа, и никогда не передаются примеры документов или необработанные значения.
- Подвергать любые будущие функции, которые требуют неочищенных данных, полной проверке конфиденциальности и соответствия требованиям Microsoft.
Помощник по индексу анализирует только структуру запросов и характеристики производительности, никогда не ваши фактические данные.