Поделиться через


FeedOptions interface

Параметры веб-канала и методы запроса.

Extends

Свойства

accessCondition

Условия, связанные с запросом.

allowUnboundedNonStreamingQueries

Допустимо только для порядка потоковой передачи по запросу. Значение по умолчанию: false; Если задано значение true, запросы позволяют обойти поведение по умолчанию, которое блокирует запросы, отличные отStreaming, без предложений верхнего или ограничения.

bufferItems

Включите буферизацию дополнительных элементов во время запросов. Значение по умолчанию: false

Это приведет к буферизации дополнительной страницы за раз (умноженной на maxDegreeOfParallelism) с сервера в фоновом режиме. Это повышает задержку, извлекая страницы до их необходимости клиентом. Если вы очищаете все результаты с сервера, например .fetchAll, обычно это необходимо включить. Если вы извлекаете только одну страницу за раз с помощью маркера продолжения, следует избежать этого. Если вы очищаете несколько страниц, но не весь результирующий набор, это может помочь улучшить задержку, но это увеличит общее количество ЕЗ/с для обслуживания всего запроса (так как некоторые страницы будут извлечены более одного раза).

continuation

Непрозрачный маркер для продолжения перечисления. Значение по умолчанию: не определено

continuationToken

Непрозрачный маркер для продолжения перечисления. Значение по умолчанию: не определено

continuationTokenLimitInKB

Ограничивает размер маркера продолжения в ответе. Значение по умолчанию: не определено

Маркеры продолжения содержат необязательные данные, которые можно удалить из сериализации перед его записью в заголовок. По умолчанию мы заключим это до 1 кб, чтобы избежать длинных заголовков (Node.js имеет глобальный предел размера заголовка). Пользователь может задать это поле, чтобы разрешить более длинные заголовки, которые могут помочь серверной части оптимизировать выполнение запросов".

disableNonStreamingOrderByQuery

Отключите функцию запроса nonStreamingOrderBy в поддерживаемых функциях запросов. Значение по умолчанию: false. Установите значение true, чтобы избежать ошибок из старого шлюза, который не поддерживает эту функцию.

enableScanInQuery

Разрешить сканирование запросов, которые не могли служить индексированием, было отказано в запрошенных путях. Значение по умолчанию: false

Как правило, рекомендуется избегать использования этого параметра. Сканирование относительно дорого и занимает много времени для обслуживания.

forceQueryPlan

Этот параметр заставляет запрос использовать план запроса. Значение по умолчанию: false

Примечание. Это приведет к отключению поддержки маркера продолжения, даже для запросов с одним разделом.

Для таких запросов, как агрегаты и большинство запросов между секциями, это происходит в любом случае. Однако, так как библиотека не знает, какой тип запроса он имеет, пока не вернемся к первому ответу, некоторые оптимизации не могут произойти до конца.

Если этот параметр включен, он принудительно задаст план запросов для запроса, который сохранит некоторые сетевые запросы и гарантирует, что параллелизм может произойти. Полезно, если вы знаете, что выполняете межсекционные или агрегатные запросы.

maxDegreeOfParallelism

Максимальное количество параллельных операций, выполняемых на стороне клиента во время параллельного выполнения запросов в службе базы данных Azure Cosmos DB. Отрицательные значения позволяют системе автоматически решать количество параллельных операций для выполнения. По умолчанию: 0 (без параллелизма)

maxItemCount

Максимальное количество элементов, возвращаемых в операции перечисления. По умолчанию: undefined (сервер будет определять полезные данные)

Истечение срока действия с этим значением обычно может привести к самым большим изменениям производительности запроса.

Чем меньше число элементов, тем быстрее будет доставлен первый результат (для не агрегатов). Для больших объемов потребуется больше времени для обслуживания запроса, но обычно вы получите лучшую пропускную способность для больших запросов (т. е. если вам потребуется 1000 элементов, прежде чем выполнять любые другие действия, задайте для maxItemCount значение 1000. Если вы можете начать работу после первого 100, задайте для maxItemCount значение 100.)

partitionKey

Ограничивает запрос определенным ключом секции. Значение по умолчанию: не определено

Определение области запроса к одной секции можно выполнить двумя способами:

container.items.query('SELECT * from c', { partitionKey: "foo" }).toArray() container.items.query('SELECT * from c WHERE c.yourPartitionKey = "foo"').toArray()

Первый вариант полезен, если текст запроса выходит из элемента управления, но вы по-прежнему хотите ограничить его одним разделом. Пример: указанный пользователем запрос.

populateIndexMetrics

Включите возвращаемые метрики индекса в заголовках ответа. Значение по умолчанию: false

populateQueryMetrics

Включите возвращаемые метрики запросов в заголовках ответа. Значение по умолчанию: false

Используется для отладки медленных или дорогостоящих запросов. Кроме того, увеличивает размер ответа и если вы используете низкий максимальный размер заголовка в Node.js, можно быстрее столкнуться с проблемами.

useIncrementalFeed

Примечание. Вместо этого рекомендуется использовать changeFeed.

Указывает запрос канала изменений. Должно быть задано значение "Добавочный канал" или опущено в противном случае. Значение по умолчанию: false

vectorSearchBufferSize

Задает настраиваемый максимальный размер буфера для хранения конечных результатов для запросов nonStreamingOrderBy. Это значение игнорируется, если запрос включает предложения top/offset+limit.

Унаследованные свойства

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()
bypassIntegratedCache

Задает, если интегрированный кэш следует обойти или включить для запроса в службе Azure CosmosDB.

Значение по умолчанию — false. По умолчанию включен интегрированный кэш

initialHeaders

(Расширенный вариант использования) Начальные заголовки для начала при отправке запросов в Cosmos

maxIntegratedCacheStalenessInMs

Задает значение устаревших значений, связанных с запросом в службе Azure CosmosDB. Для запросов, в которых <xref:com.azure.cosmos.ConsistencyLevel><xref:com.azure.cosmos.ConsistencyLevel%23EVENTUAL> или <xref:com.azure.cosmos.ConsistencyLevel%23SESSION>, ответы из встроенного кэша гарантированно не будут устаревшими, чем значение, указанное этим maxIntegratedCacheStaleness. Если уровень согласованности не задан, это свойство игнорируется.

Значение по умолчанию равно NULL

Устаревший кэш поддерживается в миллисекундах детализации. Все меньше миллисекунда будет игнорироваться.

priorityLevel

Уровень приоритета (низкий или высокий) для каждого запроса. Запросы с низким приоритетом всегда регулируются перед любыми запросами с высоким приоритетом.

Значение по умолчанию равно NULL. По умолчанию все запросы имеют высокий приоритет

sessionToken

Включает или отключает получение статистики квоты контейнера документов для запросов на чтение контейнера документов.

Сведения о свойстве

accessCondition

Условия, связанные с запросом.

accessCondition?: { condition: string, type: string }

Значение свойства

{ condition: string, type: string }

allowUnboundedNonStreamingQueries

Допустимо только для порядка потоковой передачи по запросу. Значение по умолчанию: false; Если задано значение true, запросы позволяют обойти поведение по умолчанию, которое блокирует запросы, отличные отStreaming, без предложений верхнего или ограничения.

allowUnboundedNonStreamingQueries?: boolean

Значение свойства

boolean

bufferItems

Включите буферизацию дополнительных элементов во время запросов. Значение по умолчанию: false

Это приведет к буферизации дополнительной страницы за раз (умноженной на maxDegreeOfParallelism) с сервера в фоновом режиме. Это повышает задержку, извлекая страницы до их необходимости клиентом. Если вы очищаете все результаты с сервера, например .fetchAll, обычно это необходимо включить. Если вы извлекаете только одну страницу за раз с помощью маркера продолжения, следует избежать этого. Если вы очищаете несколько страниц, но не весь результирующий набор, это может помочь улучшить задержку, но это увеличит общее количество ЕЗ/с для обслуживания всего запроса (так как некоторые страницы будут извлечены более одного раза).

bufferItems?: boolean

Значение свойства

boolean

continuation

Предупреждение

Теперь этот API является нерекомендуемым.

Use continuationToken instead.

Непрозрачный маркер для продолжения перечисления. Значение по умолчанию: не определено

continuation?: string

Значение свойства

string

continuationToken

Непрозрачный маркер для продолжения перечисления. Значение по умолчанию: не определено

continuationToken?: string

Значение свойства

string

continuationTokenLimitInKB

Ограничивает размер маркера продолжения в ответе. Значение по умолчанию: не определено

Маркеры продолжения содержат необязательные данные, которые можно удалить из сериализации перед его записью в заголовок. По умолчанию мы заключим это до 1 кб, чтобы избежать длинных заголовков (Node.js имеет глобальный предел размера заголовка). Пользователь может задать это поле, чтобы разрешить более длинные заголовки, которые могут помочь серверной части оптимизировать выполнение запросов".

continuationTokenLimitInKB?: number

Значение свойства

number

disableNonStreamingOrderByQuery

Отключите функцию запроса nonStreamingOrderBy в поддерживаемых функциях запросов. Значение по умолчанию: false. Установите значение true, чтобы избежать ошибок из старого шлюза, который не поддерживает эту функцию.

disableNonStreamingOrderByQuery?: boolean

Значение свойства

boolean

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

Ограничивает запрос определенным ключом секции. Значение по умолчанию: не определено

Определение области запроса к одной секции можно выполнить двумя способами:

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

vectorSearchBufferSize

Задает настраиваемый максимальный размер буфера для хранения конечных результатов для запросов nonStreamingOrderBy. Это значение игнорируется, если запрос включает предложения top/offset+limit.

vectorSearchBufferSize?: number

Значение свойства

number

Сведения об унаследованном свойстве

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

bypassIntegratedCache

Задает, если интегрированный кэш следует обойти или включить для запроса в службе Azure CosmosDB.

Значение по умолчанию — false. По умолчанию включен интегрированный кэш

bypassIntegratedCache?: boolean

Значение свойства

boolean

унаследовано отSharedOptions.bypassIntegratedCache

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