Бөлісу құралы:


Поиск платы за единицу запроса для операций, выполняемых в Azure Cosmos DB для MongoDB

Область применения: MongoDB

Azure Cosmos DB поддерживает многие интерфейсы API, такие как SQL, MongoDB, Cassandra, Gremlin и Таблицы. У каждого API есть собственный набор операций базы данных, начиная от простого считывания и записи точек и заканчивая сложными запросами. Каждая операция базы данных потребляет системные ресурсы. Потребление зависит от сложности операции.

Стоимость всех операций базы данных нормализуется с помощью Azure Cosmos DB и выражается в единицах запроса (ЕЗ). Расходы на запросы выражаются в единицах запроса, потребленных всеми операциями базы данных. ЕЗ можно считать единицей производительности, которая абстрагирует системные ресурсы (например, ЦП, операции ввода-вывода в секунду и память), необходимые для выполнения операций базы данных, поддерживаемых Azure Cosmos DB. Независимо от того, какие API вы используете для взаимодействия с контейнером Azure Cosmos DB, затраты всегда измеряются в ЕЗ. Независимо от типа операции базы данных (запись, чтение или запрос), затраты всегда измеряются в ЕЗ. Дополнительные сведения см. в статье Единицы запросов и рекомендации.

В этой статье представлены различные способы поиска потребления единиц запросов (ЕЗ) для любой операции, выполняемой в контейнере в Azure Cosmos DB для MongoDB. Если вы используете другой API, ознакомьтесь с API для NoSQL, API для Cassandra, API для Gremlin и API для таблиц, чтобы найти плату за единицу ввода-адреса.

Плата за единицу запросов предоставляется пользовательской командой базы данных с именем getLastRequestStatistics. Эта команда возвращает документ, содержащий имя последней выполненной операции, ее длительность и количество затраченных ЕЗ. Если вы используете Azure Cosmos DB для MongoDB, у вас есть несколько вариантов получения платы за единицу запросов.

Использование портала Azure

  1. Войдите на портал Azure.

  2. Создайте новую учетную запись Azure Cosmos DB и введите ее с данными или выберите существующую учетную запись , которая уже содержит данные.

  3. Перейдите на панель обозревателя данных и выберите контейнер, с которым собираетесь работать.

  4. Щелкните ... рядом с именем контейнера и выберите Новый запрос.

  5. Введите допустимый запрос и щелкните Выполнить запрос.

  6. Выберите Статистика запросов, чтобы отобразилось количество ЕЗ, фактически затраченных на выполненный запрос. Этот редактор запросов позволяет выполнять запросы и узнавать расходы в ЕЗ только для предикатов запросов. В этом редакторе нельзя выполнять команды для обработки данных, например с операторами вставки.

    Снимок экрана со сведениями о стоимости запроса MongoDB на портале Azure

  7. Чтобы узнать расходы на запрос для команд обработки данных, выполните команду getLastRequestStatistics в пользовательском интерфейсе оболочки, например в оболочке Mongo, Robo 3T, MongoDB Compass или в расширении VS Code со скриптами оболочки.

    db.runCommand({getLastRequestStatistics: 1})

Программным способом

При использовании оболочки Mongo можно выполнять команды с помощью runCommand().

db.runCommand('getLastRequestStatistics')

Следующие шаги

Сведения об оптимизации потребления ЕЗ см. в следующих статьях: