FeedOptions interface
Параметры веб-канала и методы запроса.
- Extends
Свойства
access |
Условия, связанные с запросом. |
buffer |
Включите буферизацию дополнительных элементов во время запросов. Значение по умолчанию — false Это приведет к буферизации дополнительной страницы за раз (умноженной на maxDegreeOfParallelism) с сервера в фоновом режиме.
Это повышает задержку, извлекая страницы до того, как они понадобятся клиенту. Если вы очищаете все результаты с сервера, например |
continuation | Непрозрачный маркер для продолжения перечисления. По умолчанию: undefined |
continuation |
Непрозрачный маркер для продолжения перечисления. По умолчанию: undefined |
continuation |
Ограничивает размер маркера продолжения в ответе. По умолчанию: undefined Маркеры продолжения содержат необязательные данные, которые можно удалить из сериализации перед записью в заголовок. По умолчанию мы ограничиваем это значение до 1 КБ, чтобы избежать длинных заголовков (Node.js имеет глобальное ограничение на размер заголовка). Пользователь может задать это поле, чтобы разрешить более длинные заголовки, что может помочь серверной части оптимизировать выполнение запросов". |
enable |
Разрешить сканирование запросов, которые не могли быть обработаны в качестве индексирования, было отказано в запрошенных путях. Значение по умолчанию — false Как правило, рекомендуется избегать использования этого параметра. Сканирование является относительно дорогим и занимает много времени. |
force |
Этот параметр заставляет запрос использовать план запроса. Значение по умолчанию — false Примечание. Это приведет к отключению поддержки маркеров продолжения даже для запросов с одним разделом. Для запросов, таких как статистические выражения и большинство межсекционных запросов, это происходит в любом случае. Тем не менее, так как библиотека не знает, какой тип запроса это, пока мы не вернемся к первому ответу, некоторая оптимизация не может произойти позже. Если этот параметр включен, будет принудительно выполнен план запроса, что позволит сохранить некоторые сетевые запросы и обеспечить возможность параллелизма. Полезно, если вы знаете, что выполняете межсекционные или статистические запросы. |
max |
Максимальное количество параллельных операций, выполняемых на стороне клиента во время параллельного выполнения запросов в службе базы данных Azure Cosmos DB. Отрицательные значения позволяют системе автоматически определять количество параллельных операций для выполнения. По умолчанию: 0 (без параллелизма) |
max |
Максимальное количество элементов, возвращаемых в операции перечисления. По умолчанию: undefined (сервер будет определять полезные данные) Истечение срока действия с этим значением обычно может привести к наибольшим изменениям производительности запроса. Чем меньше количество элементов, тем быстрее будет доставлен первый результат (для неарегированных выражений). Для больших объемов обработка запроса займет больше времени, но обычно вы получаете лучшую пропускную способность для больших запросов (т. е. если вам нужно 1000 элементов, прежде чем вы сможете выполнять другие действия, установите значение |
partition |
Ограничивает запрос определенным ключом секции. По умолчанию: undefined Определение области запроса к одной секции можно выполнить двумя способами:
Первый вариант полезен, если текст запроса находится вне вашего контроля, но вы по-прежнему хотите ограничить его одной секцией. Пример: запрос, указанный пользователем. |
populate |
Включите возвращаемые метрики индекса в заголовках ответов. Значение по умолчанию — false |
populate |
Включите возвращаемые метрики запроса в заголовках ответов. Значение по умолчанию — false Используется для отладки медленных или дорогостоящих запросов. Кроме того, увеличивается размер ответа, и если вы используете низкий максимальный размер заголовка в Node.js, вы можете быстрее столкнуться с проблемами. |
use |
Примечание. Вместо этого рекомендуется использовать changeFeed. Указывает запрос на канал изменений. Должно быть задано значение "Добавочный веб-канал" или пропущено в противном случае. Значение по умолчанию — false |
Унаследованные свойства
abort |
abortSignal для передачи всем базовым сетевым запросам, созданным этим вызовом метода. См. раздел https://developer.mozilla.org/en-US/docs/Web/API/AbortController Пример Отмена запроса на чтение
|
initial |
(Расширенный вариант использования) Начальные заголовки, с которыми следует начинать при отправке запросов в Cosmos |
max |
Задает значение устаревание, связанное с запросом в службе Azure CosmosDB. Для запросов, где <xref:com.azure.cosmos.ConsistencyLevel> имеет значение <xref:com.azure.cosmos.ConsistencyLevel%23EVENTUAL> или <xref:com.azure.cosmos.ConsistencyLevel%23SESSION>, ответы из интегрированного кэша гарантированно не будут устаревшими, чем значение, указанное параметром maxIntegratedCacheStaleness. Если уровень согласованности не задан, это свойство игнорируется. Значение по умолчанию — NULL Устаревание кэша поддерживается в миллисекундах. Все, что меньше миллисекунда, будет игнорироваться. |
priority |
Уровень приоритета (низкий или высокий) для каждого запроса. Запросы с низким приоритетом всегда регулируются перед любыми запросами с высоким приоритетом. Значение по умолчанию равно null. По умолчанию все запросы имеют высокий приоритет |
session |
Включает или отключает получение статистики, связанной с квотой контейнера документов, для запросов на чтение контейнера документов. |
Сведения о свойстве
accessCondition
Условия, связанные с запросом.
accessCondition?: { condition: string, type: string }
Значение свойства
{ condition: string, type: string }
bufferItems
Включите буферизацию дополнительных элементов во время запросов. Значение по умолчанию — false
Это приведет к буферизации дополнительной страницы за раз (умноженной на maxDegreeOfParallelism) с сервера в фоновом режиме.
Это повышает задержку, извлекая страницы до того, как они понадобятся клиенту. Если вы очищаете все результаты с сервера, например .fetchAll
, обычно это следует включить. Если вы извлекаете только одну страницу за раз с помощью маркера продолжения, этого следует избегать. Если вы очищаете несколько страниц, но не весь результирующий набор, это может помочь сократить задержку, но увеличит общее количество единиц запросов в секунду, используемых для обслуживания всего запроса (так как некоторые страницы будут извлечены несколько раз).
bufferItems?: boolean
Значение свойства
boolean
continuation
Предупреждение
Теперь этот API является нерекомендуемым.
Use continuationToken instead.
Непрозрачный маркер для продолжения перечисления. По умолчанию: undefined
continuation?: string
Значение свойства
string
continuationToken
Непрозрачный маркер для продолжения перечисления. По умолчанию: undefined
continuationToken?: string
Значение свойства
string
continuationTokenLimitInKB
Ограничивает размер маркера продолжения в ответе. По умолчанию: undefined
Маркеры продолжения содержат необязательные данные, которые можно удалить из сериализации перед записью в заголовок. По умолчанию мы ограничиваем это значение до 1 КБ, чтобы избежать длинных заголовков (Node.js имеет глобальное ограничение на размер заголовка). Пользователь может задать это поле, чтобы разрешить более длинные заголовки, что может помочь серверной части оптимизировать выполнение запросов".
continuationTokenLimitInKB?: number
Значение свойства
number
enableScanInQuery
Разрешить сканирование запросов, которые не могли быть обработаны в качестве индексирования, было отказано в запрошенных путях. Значение по умолчанию — false
Как правило, рекомендуется избегать использования этого параметра. Сканирование является относительно дорогим и занимает много времени.
enableScanInQuery?: boolean
Значение свойства
boolean
forceQueryPlan
Этот параметр заставляет запрос использовать план запроса. Значение по умолчанию — false
Примечание. Это приведет к отключению поддержки маркеров продолжения даже для запросов с одним разделом.
Для запросов, таких как статистические выражения и большинство межсекционных запросов, это происходит в любом случае. Тем не менее, так как библиотека не знает, какой тип запроса это, пока мы не вернемся к первому ответу, некоторая оптимизация не может произойти позже.
Если этот параметр включен, будет принудительно выполнен план запроса, что позволит сохранить некоторые сетевые запросы и обеспечить возможность параллелизма. Полезно, если вы знаете, что выполняете межсекционные или статистические запросы.
forceQueryPlan?: boolean
Значение свойства
boolean
maxDegreeOfParallelism
Максимальное количество параллельных операций, выполняемых на стороне клиента во время параллельного выполнения запросов в службе базы данных Azure Cosmos DB. Отрицательные значения позволяют системе автоматически определять количество параллельных операций для выполнения. По умолчанию: 0 (без параллелизма)
maxDegreeOfParallelism?: number
Значение свойства
number
maxItemCount
Максимальное количество элементов, возвращаемых в операции перечисления. По умолчанию: undefined (сервер будет определять полезные данные)
Истечение срока действия с этим значением обычно может привести к наибольшим изменениям производительности запроса.
Чем меньше количество элементов, тем быстрее будет доставлен первый результат (для неарегированных выражений). Для больших объемов обработка запроса займет больше времени, но обычно вы получаете лучшую пропускную способность для больших запросов (т. е. если вам нужно 1000 элементов, прежде чем вы сможете выполнять другие действия, установите значение maxItemCount
1000. Если вы можете начать работу после первых 100, задайте значение maxItemCount
100.)
maxItemCount?: number
Значение свойства
number
partitionKey
Ограничивает запрос определенным ключом секции. По умолчанию: undefined
Определение области запроса к одной секции можно выполнить двумя способами:
container.items.query('SELECT * from c', { partitionKey: "foo" }).toArray()
container.items.query('SELECT * from c WHERE c.yourPartitionKey = "foo"').toArray()
Первый вариант полезен, если текст запроса находится вне вашего контроля, но вы по-прежнему хотите ограничить его одной секцией. Пример: запрос, указанный пользователем.
partitionKey?: PartitionKey
Значение свойства
populateIndexMetrics
Включите возвращаемые метрики индекса в заголовках ответов. Значение по умолчанию — false
populateIndexMetrics?: boolean
Значение свойства
boolean
populateQueryMetrics
Включите возвращаемые метрики запроса в заголовках ответов. Значение по умолчанию — false
Используется для отладки медленных или дорогостоящих запросов. Кроме того, увеличивается размер ответа, и если вы используете низкий максимальный размер заголовка в Node.js, вы можете быстрее столкнуться с проблемами.
populateQueryMetrics?: boolean
Значение свойства
boolean
useIncrementalFeed
Примечание. Вместо этого рекомендуется использовать changeFeed.
Указывает запрос на канал изменений. Должно быть задано значение "Добавочный веб-канал" или пропущено в противном случае. Значение по умолчанию — false
useIncrementalFeed?: boolean
Значение свойства
boolean
Сведения об унаследованном свойстве
abortSignal
abortSignal для передачи всем базовым сетевым запросам, созданным этим вызовом метода. См. раздел https://developer.mozilla.org/en-US/docs/Web/API/AbortController
Пример
Отмена запроса на чтение
const controller = new AbortController()
const {result: item} = await items.query('SELECT * from c', { abortSignal: controller.signal});
controller.abort()
abortSignal?: AbortSignal
Значение свойства
AbortSignal
Наследуется отSharedOptions.abortSignal
initialHeaders
(Расширенный вариант использования) Начальные заголовки, с которыми следует начинать при отправке запросов в Cosmos
initialHeaders?: CosmosHeaders
Значение свойства
Наследуется отSharedOptions.initialHeaders
maxIntegratedCacheStalenessInMs
Задает значение устаревание, связанное с запросом в службе Azure CosmosDB. Для запросов, где <xref:com.azure.cosmos.ConsistencyLevel> имеет значение <xref:com.azure.cosmos.ConsistencyLevel%23EVENTUAL> или <xref:com.azure.cosmos.ConsistencyLevel%23SESSION>, ответы из интегрированного кэша гарантированно не будут устаревшими, чем значение, указанное параметром maxIntegratedCacheStaleness. Если уровень согласованности не задан, это свойство игнорируется.
Значение по умолчанию — NULL
Устаревание кэша поддерживается в миллисекундах. Все, что меньше миллисекунда, будет игнорироваться.
maxIntegratedCacheStalenessInMs?: number
Значение свойства
number
Наследуется отSharedOptions.maxIntegratedCacheStalenessInMs
priorityLevel
Уровень приоритета (низкий или высокий) для каждого запроса. Запросы с низким приоритетом всегда регулируются перед любыми запросами с высоким приоритетом.
Значение по умолчанию равно null. По умолчанию все запросы имеют высокий приоритет
priorityLevel?: PriorityLevel
Значение свойства
Наследуется отSharedOptions.priorityLevel
sessionToken
Включает или отключает получение статистики, связанной с квотой контейнера документов, для запросов на чтение контейнера документов.
sessionToken?: string
Значение свойства
string
Наследуется отSharedOptions.sessionToken