Freigeben über


FeedOptions interface

Die Feedoptionen und Abfragemethoden.

Extends

Eigenschaften

accessCondition

Bedingungen, die der Anforderung zugeordnet sind.

allowUnboundedNonStreamingQueries

Nur für nicht streamingreihenfolge nach Abfrage gültig. Standard: false; Wenn dieser Wert auf "true" festgelegt ist, können Abfragen das Standardverhalten umgehen, das nichtStreaming-Abfragen ohne Obere oder Begrenzungsklauseln blockiert.

bufferItems

Aktivieren sie das Puffern zusätzlicher Elemente während Abfragen. Standard: false

Dadurch wird eine zusätzliche Seite gleichzeitig (multipliziert durch maxDegreeOfParallelism) vom Server im Hintergrund gepuffert. Dadurch wird die Latenz verbessert, indem Seiten abgerufen werden, bevor sie vom Client benötigt werden. Wenn Sie alle Ergebnisse vom Server wie .fetchAllentwässern, sollten Sie dies in der Regel aktivieren. Wenn Sie nur jeweils eine Seite über ein Fortsetzungstoken abrufen, sollten Sie dies vermeiden. Wenn Sie mehr als eine Seite entwässern, aber nicht das gesamte Resultset, kann dies zur Verbesserung der Latenz beitragen, aber es erhöht die Gesamtmenge der RU/s-Verwendung, um die gesamte Abfrage zu bedienen (da einige Seiten mehrmals abgerufen werden).

continuation

Undurchsichtiges Token zum Fortsetzen der Enumeration. Standard: undefiniert

continuationToken

Undurchsichtiges Token zum Fortsetzen der Enumeration. Standard: undefiniert

continuationTokenLimitInKB

Beschränkt die Größe des Fortsetzungstokens in der Antwort. Standard: undefiniert

Fortsetzungstoken enthalten optionale Daten, die aus der Serialisierung entfernt werden können, bevor sie in einen Header geschrieben werden. Standardmäßig wird dies auf 1 KB begrenzt, um lange Header zu vermeiden (Node.js hat eine globale Größenbeschränkung für Kopfzeilen). Ein Benutzer kann dieses Feld so festlegen, dass längere Header zulässig sind, wodurch das Back-End die Abfrageausführung optimieren kann."

disableNonStreamingOrderByQuery

Deaktivieren Sie das Feature "nonStreamingOrderBy"-Abfrage in unterstützten Abfragefeatures. Standard: false. Legen Sie "true" fest, um Fehler von einem alten Gateway zu vermeiden, das dieses Feature nicht unterstützt.

enableScanInQuery

Überprüfung der Abfragen zulassen, die nicht als Indizierung dienen konnten, wurde für die angeforderten Pfade deaktiviert. Standard: false

Im Allgemeinen empfiehlt es sich, diese Einstellung zu vermeiden. Scans sind relativ teuer und nehmen eine lange Zeit in Anspruch.

forceQueryPlan

Diese Einstellung erzwingt die Verwendung eines Abfrageplans. Standard: false

Hinweis: Dadurch wird die Unterstützung des Fortsetzungstokens auch für Abfragen mit einer einzelnen Partition deaktiviert.

Bei Abfragen wie Aggregaten und den meisten partitionsübergreifenden Abfragen geschieht dies trotzdem. Da die Bibliothek jedoch nicht weiß, welche Art von Abfrage es ist, bis wir die erste Antwort erhalten, kann eine Optimierung erst später erfolgen.

Wenn diese Einstellung aktiviert ist, erzwingt sie den Abfrageplan, wodurch einige Netzwerkanforderungen gespeichert und sichergestellt wird, dass Parallelität auftreten kann. Nützlich, wenn Sie wissen, dass Sie partitionsübergreifende oder aggregierte Abfragen ausführen.

maxDegreeOfParallelism

Die maximale Anzahl gleichzeitiger Vorgänge, die während der parallelen Abfrageausführung im Azure Cosmos DB-Datenbankdienst clientseitig ausgeführt werden. Negative Werte legen fest, dass das System automatisch die Anzahl der gleichzeitigen Vorgänge bestimmt, die ausgeführt werden sollen. Standard: 0 (kein Parallelismus)

maxItemCount

Maximale Anzahl von Elementen, die im Enumerationsvorgang zurückgegeben werden sollen. Standard: undefiniert (Server wird Nutzlast definiert)

Das Ablaufen mit diesem Wert kann in der Regel zu den größten Leistungsänderungen der Abfrage führen.

Je kleiner die Elementanzahl, desto schneller wird das erste Ergebnis geliefert (für Nichtaggregate). Bei größeren Mengen dauert es länger, um die Anforderung zu bedienen, aber Normalerweise erhalten Sie einen besseren Durchsatz für große Abfragen (d. h. wenn Sie 1000 Elemente benötigen, bevor Sie andere Aktionen ausführen können, legen Sie maxItemCount auf 1000 fest. Wenn Sie mit der Arbeit nach der ersten 100 beginnen können, legen Sie maxItemCount auf 100 fest.)

partitionKey

Beschränkt die Abfrage auf einen bestimmten Partitionsschlüssel. Standard: undefiniert

Die Bereichsdefinition einer Abfrage auf eine einzelne Partition kann auf zwei Arten erreicht werden:

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

Der erste Ist-Wert hilfreich, wenn der Abfragetext nicht mehr im Steuerelement ist, sie aber trotzdem auf eine einzelne Partition beschränken möchten. Beispiel: eine vom Endbenutzer angegebene Abfrage.

populateIndexMetrics

Aktivieren Sie die Rückgabe von Indexmetriken in Antwortheadern. Standard: false

populateQueryMetrics

Aktivieren Sie die Rückgabe von Abfragemetriken in Antwortheadern. Standard: false

Wird zum Debuggen langsamer oder teurer Abfragen verwendet. Erhöht auch die Antwortgröße und wenn Sie in Node.jseine geringe maximale Headergröße verwenden, können Sie probleme schneller auftreten.

useIncrementalFeed

Hinweis: Erwägen Sie stattdessen die Verwendung von changeFeed.

Gibt eine Änderungsfeedanforderung an. Muss auf "Inkrementeller Feed" festgelegt oder andernfalls weggelassen werden. Standard: false

vectorSearchBufferSize

Gibt eine benutzerdefinierte maximale Puffergröße zum Speichern der endgültigen Ergebnisse für NichtStreamingOrderBy-Abfragen an. Dieser Wert wird ignoriert, wenn die Abfrage Klauseln für top/offset+limit enthält.

Geerbte Eigenschaften

abortSignal

abortSignal, um an alle zugrunde liegenden Netzwerkanforderungen zu übergeben, die von diesem Methodenaufruf erstellt wurden. Siehe https://developer.mozilla.org/en-US/docs/Web/API/AbortController

Beispiel

Abbrechen einer Leseanforderung

const controller = new AbortController()
const {result: item} = await items.query('SELECT * from c', { abortSignal: controller.signal});
controller.abort()
bypassIntegratedCache

Legt fest, ob der integrierte Cache für die Anforderung im Azure CosmosDB-Dienst umgangen oder aktiviert werden soll.

Der Standardwert ist "false". Standardmäßig ist der integrierte Cache aktiviert.

initialHeaders

(Erweiterter Anwendungsfall) Anfängliche Kopfzeilen, die beim Senden von Anforderungen an Cosmos beginnen sollen

maxIntegratedCacheStalenessInMs

Legt den Veraltetkeitswert fest, der der Anforderung im Azure CosmosDB-Dienst zugeordnet ist. Bei Anforderungen, bei denen die <xref:com.azure.cosmos.ConsistencyLevel><xref:com.azure.cosmos.ConsistencyLevel%23EVENTUAL> oder <xref:com.azure.cosmos.ConsistencyLevel%23SESSION>ist, sind Antworten aus dem integrierten Cache garantiert kein Staler als der wert, der durch diese maxIntegratedCacheStaleness angegeben ist. Wenn die Konsistenzstufe nicht festgelegt ist, wird diese Eigenschaft ignoriert.

Standardwert ist NULL

Die Cache-Veraltetkeit wird in Millisekunden Granularität unterstützt. Alles, was kleiner als Millisekunden ist, wird ignoriert.

priorityLevel

Prioritätsstufe (Niedrig/Hoch) für jede Anforderung. Anforderungen mit niedriger Priorität werden immer vor Anforderungen mit hoher Priorität gedrosselt.

Der Standardwert ist NULL. Standardmäßig sind alle Anforderungen von hoher Priorität

sessionToken

Aktiviert/deaktiviert das Abrufen von Dokumentcontainerkontingentstatistiken für Dokumentcontainerleseanforderungen.

Details zur Eigenschaft

accessCondition

Bedingungen, die der Anforderung zugeordnet sind.

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

Eigenschaftswert

{ condition: string, type: string }

allowUnboundedNonStreamingQueries

Nur für nicht streamingreihenfolge nach Abfrage gültig. Standard: false; Wenn dieser Wert auf "true" festgelegt ist, können Abfragen das Standardverhalten umgehen, das nichtStreaming-Abfragen ohne Obere oder Begrenzungsklauseln blockiert.

allowUnboundedNonStreamingQueries?: boolean

Eigenschaftswert

boolean

bufferItems

Aktivieren sie das Puffern zusätzlicher Elemente während Abfragen. Standard: false

Dadurch wird eine zusätzliche Seite gleichzeitig (multipliziert durch maxDegreeOfParallelism) vom Server im Hintergrund gepuffert. Dadurch wird die Latenz verbessert, indem Seiten abgerufen werden, bevor sie vom Client benötigt werden. Wenn Sie alle Ergebnisse vom Server wie .fetchAllentwässern, sollten Sie dies in der Regel aktivieren. Wenn Sie nur jeweils eine Seite über ein Fortsetzungstoken abrufen, sollten Sie dies vermeiden. Wenn Sie mehr als eine Seite entwässern, aber nicht das gesamte Resultset, kann dies zur Verbesserung der Latenz beitragen, aber es erhöht die Gesamtmenge der RU/s-Verwendung, um die gesamte Abfrage zu bedienen (da einige Seiten mehrmals abgerufen werden).

bufferItems?: boolean

Eigenschaftswert

boolean

continuation

Warnung

Diese API ist nun veraltet.

Use continuationToken instead.

Undurchsichtiges Token zum Fortsetzen der Enumeration. Standard: undefiniert

continuation?: string

Eigenschaftswert

string

continuationToken

Undurchsichtiges Token zum Fortsetzen der Enumeration. Standard: undefiniert

continuationToken?: string

Eigenschaftswert

string

continuationTokenLimitInKB

Beschränkt die Größe des Fortsetzungstokens in der Antwort. Standard: undefiniert

Fortsetzungstoken enthalten optionale Daten, die aus der Serialisierung entfernt werden können, bevor sie in einen Header geschrieben werden. Standardmäßig wird dies auf 1 KB begrenzt, um lange Header zu vermeiden (Node.js hat eine globale Größenbeschränkung für Kopfzeilen). Ein Benutzer kann dieses Feld so festlegen, dass längere Header zulässig sind, wodurch das Back-End die Abfrageausführung optimieren kann."

continuationTokenLimitInKB?: number

Eigenschaftswert

number

disableNonStreamingOrderByQuery

Deaktivieren Sie das Feature "nonStreamingOrderBy"-Abfrage in unterstützten Abfragefeatures. Standard: false. Legen Sie "true" fest, um Fehler von einem alten Gateway zu vermeiden, das dieses Feature nicht unterstützt.

disableNonStreamingOrderByQuery?: boolean

Eigenschaftswert

boolean

enableScanInQuery

Überprüfung der Abfragen zulassen, die nicht als Indizierung dienen konnten, wurde für die angeforderten Pfade deaktiviert. Standard: false

Im Allgemeinen empfiehlt es sich, diese Einstellung zu vermeiden. Scans sind relativ teuer und nehmen eine lange Zeit in Anspruch.

enableScanInQuery?: boolean

Eigenschaftswert

boolean

forceQueryPlan

Diese Einstellung erzwingt die Verwendung eines Abfrageplans. Standard: false

Hinweis: Dadurch wird die Unterstützung des Fortsetzungstokens auch für Abfragen mit einer einzelnen Partition deaktiviert.

Bei Abfragen wie Aggregaten und den meisten partitionsübergreifenden Abfragen geschieht dies trotzdem. Da die Bibliothek jedoch nicht weiß, welche Art von Abfrage es ist, bis wir die erste Antwort erhalten, kann eine Optimierung erst später erfolgen.

Wenn diese Einstellung aktiviert ist, erzwingt sie den Abfrageplan, wodurch einige Netzwerkanforderungen gespeichert und sichergestellt wird, dass Parallelität auftreten kann. Nützlich, wenn Sie wissen, dass Sie partitionsübergreifende oder aggregierte Abfragen ausführen.

forceQueryPlan?: boolean

Eigenschaftswert

boolean

maxDegreeOfParallelism

Die maximale Anzahl gleichzeitiger Vorgänge, die während der parallelen Abfrageausführung im Azure Cosmos DB-Datenbankdienst clientseitig ausgeführt werden. Negative Werte legen fest, dass das System automatisch die Anzahl der gleichzeitigen Vorgänge bestimmt, die ausgeführt werden sollen. Standard: 0 (kein Parallelismus)

maxDegreeOfParallelism?: number

Eigenschaftswert

number

maxItemCount

Maximale Anzahl von Elementen, die im Enumerationsvorgang zurückgegeben werden sollen. Standard: undefiniert (Server wird Nutzlast definiert)

Das Ablaufen mit diesem Wert kann in der Regel zu den größten Leistungsänderungen der Abfrage führen.

Je kleiner die Elementanzahl, desto schneller wird das erste Ergebnis geliefert (für Nichtaggregate). Bei größeren Mengen dauert es länger, um die Anforderung zu bedienen, aber Normalerweise erhalten Sie einen besseren Durchsatz für große Abfragen (d. h. wenn Sie 1000 Elemente benötigen, bevor Sie andere Aktionen ausführen können, legen Sie maxItemCount auf 1000 fest. Wenn Sie mit der Arbeit nach der ersten 100 beginnen können, legen Sie maxItemCount auf 100 fest.)

maxItemCount?: number

Eigenschaftswert

number

partitionKey

Beschränkt die Abfrage auf einen bestimmten Partitionsschlüssel. Standard: undefiniert

Die Bereichsdefinition einer Abfrage auf eine einzelne Partition kann auf zwei Arten erreicht werden:

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

Der erste Ist-Wert hilfreich, wenn der Abfragetext nicht mehr im Steuerelement ist, sie aber trotzdem auf eine einzelne Partition beschränken möchten. Beispiel: eine vom Endbenutzer angegebene Abfrage.

partitionKey?: PartitionKey

Eigenschaftswert

populateIndexMetrics

Aktivieren Sie die Rückgabe von Indexmetriken in Antwortheadern. Standard: false

populateIndexMetrics?: boolean

Eigenschaftswert

boolean

populateQueryMetrics

Aktivieren Sie die Rückgabe von Abfragemetriken in Antwortheadern. Standard: false

Wird zum Debuggen langsamer oder teurer Abfragen verwendet. Erhöht auch die Antwortgröße und wenn Sie in Node.jseine geringe maximale Headergröße verwenden, können Sie probleme schneller auftreten.

populateQueryMetrics?: boolean

Eigenschaftswert

boolean

useIncrementalFeed

Hinweis: Erwägen Sie stattdessen die Verwendung von changeFeed.

Gibt eine Änderungsfeedanforderung an. Muss auf "Inkrementeller Feed" festgelegt oder andernfalls weggelassen werden. Standard: false

useIncrementalFeed?: boolean

Eigenschaftswert

boolean

vectorSearchBufferSize

Gibt eine benutzerdefinierte maximale Puffergröße zum Speichern der endgültigen Ergebnisse für NichtStreamingOrderBy-Abfragen an. Dieser Wert wird ignoriert, wenn die Abfrage Klauseln für top/offset+limit enthält.

vectorSearchBufferSize?: number

Eigenschaftswert

number

Geerbte Eigenschaftsdetails

abortSignal

abortSignal, um an alle zugrunde liegenden Netzwerkanforderungen zu übergeben, die von diesem Methodenaufruf erstellt wurden. Siehe https://developer.mozilla.org/en-US/docs/Web/API/AbortController

Beispiel

Abbrechen einer Leseanforderung

const controller = new AbortController()
const {result: item} = await items.query('SELECT * from c', { abortSignal: controller.signal});
controller.abort()
abortSignal?: AbortSignal

Eigenschaftswert

AbortSignal

geerbt vonSharedOptions.abortSignal

bypassIntegratedCache

Legt fest, ob der integrierte Cache für die Anforderung im Azure CosmosDB-Dienst umgangen oder aktiviert werden soll.

Der Standardwert ist "false". Standardmäßig ist der integrierte Cache aktiviert.

bypassIntegratedCache?: boolean

Eigenschaftswert

boolean

geerbt vonSharedOptions.bypassIntegratedCache-

initialHeaders

(Erweiterter Anwendungsfall) Anfängliche Kopfzeilen, die beim Senden von Anforderungen an Cosmos beginnen sollen

initialHeaders?: CosmosHeaders

Eigenschaftswert

vonSharedOptions.initialHeaders geerbt

maxIntegratedCacheStalenessInMs

Legt den Veraltetkeitswert fest, der der Anforderung im Azure CosmosDB-Dienst zugeordnet ist. Bei Anforderungen, bei denen die <xref:com.azure.cosmos.ConsistencyLevel><xref:com.azure.cosmos.ConsistencyLevel%23EVENTUAL> oder <xref:com.azure.cosmos.ConsistencyLevel%23SESSION>ist, sind Antworten aus dem integrierten Cache garantiert kein Staler als der wert, der durch diese maxIntegratedCacheStaleness angegeben ist. Wenn die Konsistenzstufe nicht festgelegt ist, wird diese Eigenschaft ignoriert.

Standardwert ist NULL

Die Cache-Veraltetkeit wird in Millisekunden Granularität unterstützt. Alles, was kleiner als Millisekunden ist, wird ignoriert.

maxIntegratedCacheStalenessInMs?: number

Eigenschaftswert

number

VonSharedOptions.maxIntegratedCacheStalenessInMs geerbt

priorityLevel

Prioritätsstufe (Niedrig/Hoch) für jede Anforderung. Anforderungen mit niedriger Priorität werden immer vor Anforderungen mit hoher Priorität gedrosselt.

Der Standardwert ist NULL. Standardmäßig sind alle Anforderungen von hoher Priorität

priorityLevel?: PriorityLevel

Eigenschaftswert

geerbt vonSharedOptions.priorityLevel

sessionToken

Aktiviert/deaktiviert das Abrufen von Dokumentcontainerkontingentstatistiken für Dokumentcontainerleseanforderungen.

sessionToken?: string

Eigenschaftswert

string

geerbt vonSharedOptions.sessionToken