Ограничения служб в Azure Cosmos DB для виртуальных ядер MongoDB
В этом документе описаны текущие жесткие и мягкие ограничения для виртуальных ядер Azure Cosmos DB для MongoDB. Многие из этих ограничений являются временными и будут развиваться с течением времени, так как служба продолжает улучшаться. Если какие-либо из этих ограничений являются проблемой для вашей организации, обратитесь к нашей команде за помощью.
Ограничения запросов и выполнения
Ограничения на выполнение MongoDB
- Максимальное время существования транзакции: 30 секунд.
- Время существования курсора: 10 минут. Примечание. Ошибка cursorNotFound может возникать, если курсор превышает его время существования.
- Ограничение выполнения запроса по умолчанию: 120 секунд. Это можно переопределить на основе каждого запроса, используя
maxTimeMS
соответствующий драйвер MongoDB.
Пример:
db.collection.find({ field: "value" }).maxTimeMS(5000)
Максимальный размер запроса MongoDB
- Максимальный размер памяти для запросов MongoDB зависит от уровня. Например, для M80 ограничение размера памяти запроса составляет примерно 150 МиБ.
- В сегментированных кластерах, если запрос извлекает данные между узлами, ограничение на размер данных составляет 1 ГБ.
Ограничения индексирования
Общие ограничения индексирования
- Максимальное число составных полей индекса: 32.
- Максимальный размер значения
_id
поля: 2 КБ. - Максимальный размер пути индекса: 256B.
- Максимальное значение по умолчанию: 64.
- Можно настроить до 300 индексов для каждой коллекции.
- Сортировка выполняется в памяти и не отправляется в индекс.
- Максимальный уровень вложения для внедренных объектов и массивов в определениях индексов: 6.
- Сборка одного индекса может выполняться в одной коллекции.
- Число одновременных сборок индекса в разных коллекциях настраивается (по умолчанию: 2).
currentOp
Используйте команду для просмотра хода выполнения длительных сборок индекса.- Уникальные сборки индекса выполняются на переднем плане и блокируют записи в коллекции.
Ограничения индексирования подстановочных знаков
- Для индексов подстановочных знаков, если индексированные поля являются массивом массивов, весь внедренный массив принимается как значение вместо обхода его содержимого.
Ограничения геопространственного индексирования
- Нет поддержки BigPolygons.
- Составные индексы не поддерживают геопространственные индексы.
$geoWithin
запрос не поддерживает многоугольники с отверстиями.- Поле
key
требуется на$geoNear
этапе агрегирования. - Индексы рекомендуется,
$nearSphere
но не требуются для$near
операторов запросов и$geoNear
этапа агрегирования.
Ограничения текстовых индексов
- В коллекции можно определить только один текстовый индекс.
- Поддерживает только простые текстовые поиски; расширенные возможности поиска, такие как поиск регулярных выражений, не поддерживаются.
hint()
не поддерживается в сочетании с запросом с помощью$text
выражения.- Операции сортировки не могут использовать упорядочение текстового индекса.
- Токенизация для китайского, японского, корейского пока не поддерживается.
- Не поддерживается нечувствительная маркеризация регистра.
Ограничения поиска векторов
- Индексирование векторов размером до 2000 измерений.
- Индексирование применяется только к одному вектору на путь.
- На векторный путь можно создать только один индекс.
HNSW
иDiskANN
доступны на уровнях кластера M40 и выше.
Ограничения кластеров и сегментов
Уровень кластера
- Максимум: M200 / 64 виртуальных ядер / 256 ГиБ ОЗУ на физический сегмент. Обратитесь к нашей команде за более высокими уровнями.
Физические сегменты
- Максимум: 10. Обратитесь к нашей команде за дополнительными сегментами.
Ограничения коллекции
- Коллекции на кластер: 1000
- Размер несхардированной коллекции: 4 ТиБ
Обратитесь к нашей команде за поддержкой более высоких значений.
Вторичные регионы
- Максимум: 1 дополнительный регион. Обратитесь к нашей команде за дополнительными регионами.
Ограничения уровня "Бесплатный"
Следующие ограничения можно переопределить путем обновления до платного уровня.
- Максимальное хранилище: 32 ГиБ.
- Резервное копирование и восстановление не поддерживается (доступно в M25+)
- Высокий уровень доступности (HA) не поддерживается (доступно в M30+)
- Векторные индексы HNSW не поддерживаются (доступны в M40+)
- Ведение журнала диагностики не поддерживается (доступно в M40+)
- Не предусмотрено соглашение об уровне обслуживания (требуется включить высокий уровень доступности)
- Кластеры уровня "Бесплатный" приостановлены через 60 дней бездействия, где нет подключений к кластеру.
Ограничения репликации и высокой доступности (высокий уровень доступности)
Репликация между регионами
- Следующие конфигурации совпадают как в основных, так и в кластерах реплик, и их нельзя изменить в кластере реплики.
- Количество хранилищ и сегментов
- Учетные записи пользователей
- Следующие функции недоступны в кластерах реплик:
- Восстановление на определенный момент времени
- Высокий уровень доступности
- Репликация между регионами недоступна в кластерах с ресурсоемкими вычислительными или бесплатными кластерами.
Прочие ограничения
Использование оболочки Mongo на портале
- Оболочка Mongo портала может использоваться в течение 120 минут в течение 24-часового окна.
Следующие шаги
- Начало работы с созданием кластера.
- Просмотрите параметры миграции из MongoDB в Azure Cosmos DB для виртуальных ядер MongoDB.