Megosztás a következőn keresztül:


FeedOptions interface

A hírcsatorna beállításai és a lekérdezési módszerek.

Extends

Tulajdonságok

accessCondition

A kérelemhez társított feltételek.

allowUnboundedNonStreamingQueries

Csak nem streamelési sorrendre érvényes lekérdezés alapján. Alapértelmezett: hamis; Ha igaz értékre van állítva, lehetővé teszi, hogy a lekérdezések megkerüljék az alapértelmezett viselkedést, amely letiltja a nemstreaming lekérdezéseket felső vagy korlát záradékok nélkül.

bufferItems

További elemek pufferelésének engedélyezése a lekérdezések során. Alapértelmezett: hamis

Ez egy további oldalt pufferel egyszerre (a maxDegreeOfParallelism szorozva) a háttérben lévő kiszolgálóról. Ez javítja a késést, ha beolvassa az oldalakat, mielőtt az ügyfélnek szüksége lenne rájuk. Ha az összes eredményt a kiszolgálóról üríti ki, például .fetchAll, ezt általában engedélyeznie kell. Ha egyszerre csak egy oldalt szeretne beolvasni a folytatási jogkivonaton keresztül, ezt el kell kerülnie. Ha egynél több lapot ürít, de nem a teljes eredményhalmazt, az segíthet a késés javításában, de növeli a teljes lekérdezés kiszolgálásához használt RU/s teljes mennyiségét (mivel egyes oldalak többször lesznek lekérve).

continuation

Átlátszatlan jogkivonat az enumerálás folytatásához. Alapértelmezett: nincs definiálva

continuationToken

Átlátszatlan jogkivonat az enumerálás folytatásához. Alapértelmezett: nincs definiálva

continuationTokenLimitInKB

Korlátozza a folytatási jogkivonat méretét a válaszban. Alapértelmezett: nincs definiálva

A folytatási jogkivonatok olyan opcionális adatokat tartalmaznak, amelyek eltávolíthatók a szerializálásból, mielőtt a fejlécbe írják őket. Alapértelmezés szerint 1kb-ra korlátozzuk ezt a korlátot a hosszú fejlécek elkerülése érdekében (Node.js globális fejlécméretkorláttal rendelkezik). A felhasználó beállíthatja ezt a mezőt úgy, hogy hosszabb fejléceket engedélyezzen, ami segíthet a háttérrendszernek optimalizálni a lekérdezések végrehajtását."

disableNonStreamingOrderByQuery

Tiltsa le a nemStreamingOrderBy lekérdezési funkciót a támogatott lekérdezési funkciókban. Alapértelmezett: hamis. Állítsa igaz értékre, hogy elkerülje a funkciót nem támogató régi átjáró hibáit.

enableScanInQuery

Az indexelésként nem kiszolgálható lekérdezések vizsgálatának engedélyezése a kért útvonalakon le lett tiltva. Alapértelmezett: hamis

Általában a legjobb, ha nem használja ezt a beállítást. A vizsgálatok viszonylag költségesek, és hosszú időt vesz igénybe.

forceQueryPlan

Ez a beállítás kényszeríti a lekérdezést egy lekérdezésterv használatára. Alapértelmezett: hamis

Megjegyzés: ez letiltja a folytatási jogkivonat támogatását, még az önálló partíciós lekérdezések esetében is.

Az olyan lekérdezések esetében, mint az aggregátumok és a legtöbb partícióközi lekérdezés, ez mindenképpen megtörténik. Mivel azonban a kódtár nem tudja, hogy milyen típusú lekérdezésről van szó, amíg vissza nem kapjuk az első választ, bizonyos optimalizálás csak később történhet meg.

Ha ez a beállítás engedélyezve van, kényszeríti a lekérdezés lekérdezési tervét, amely ment néhány hálózati kérést, és biztosítja a párhuzamosságot. Akkor hasznos, ha tudja, hogy több partíciós vagy összesítő lekérdezéseket végez.

maxDegreeOfParallelism

Az egyidejű műveletek maximális száma, amelyek az ügyféloldalt futtatják az Azure Cosmos DB-adatbázisszolgáltatás párhuzamos lekérdezés-végrehajtása során. A negatív értékek miatt a rendszer automatikusan dönti el az egyidejűleg futtatandó műveletek számát. Alapértelmezett: 0 (nincs párhuzamosság)

maxItemCount

Az enumerálási műveletben visszaadandó elemek maximális száma. Alapértelmezett: nem definiált (a kiszolgáló a hasznos adatokat definiálja)

Az érték lejárata általában a lekérdezés legnagyobb teljesítményváltozását eredményezheti.

Minél kisebb az elemszám, annál gyorsabban lesz kézbesítve az első eredmény (nem összesítések esetén). Nagyobb mennyiség esetén hosszabb időt vesz igénybe a kérés kiszolgálása, de általában jobb átviteli sebességet kap a nagy lekérdezésekhez (azaz ha 1000 elemre van szüksége, mielőtt bármilyen más műveletet végrehajthat, állítsa maxItemCount 1000-re. Ha az első 100 után megkezdheti a munkát, állítsa maxItemCount 100-ra.)

partitionKey

A lekérdezést egy adott partíciókulcsra korlátozza. Alapértelmezett: nincs definiálva

A lekérdezések egyetlen partícióra történő hatókörkezelése kétféleképpen végezhető el:

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

Az előbbi akkor hasznos, ha a lekérdezés törzse nincs szabályozva, de továbbra is egyetlen partícióra szeretné korlátozni. Példa: egy végfelhasználó által megadott lekérdezés.

populateIndexMetrics

Indexmetrikák visszaadásának engedélyezése a válaszfejlécekben. Alapértelmezett: hamis

populateQueryMetrics

Lekérdezési metrikák visszaadásának engedélyezése a válaszfejlécekben. Alapértelmezett: hamis

Lassú vagy költséges lekérdezések hibakeresésére szolgál. Emellett növeli a válaszméretet, és ha alacsony maximális fejlécméretet használ a Node.js, gyorsabban ütközhet problémákba.

useIncrementalFeed

Megjegyzés: fontolja meg a changeFeed használatát.

Változáscsatorna-kérést jelez. A "Növekményes hírcsatorna" értékre kell állítani, vagy másként nem adható meg. Alapértelmezett: hamis

vectorSearchBufferSize

Egyéni maximális pufferméretet ad meg a nemStreamingOrderBy lekérdezések végső eredményeinek tárolásához. Ez az érték figyelmen kívül lesz hagyva, ha a lekérdezés felső/eltolás+korlát záradékokat tartalmaz.

Örökölt tulajdonságok

abortSignal

abortSignal a metódushívás által létrehozott összes mögöttes hálózati kérésnek való továbbításhoz. Lásd: https://developer.mozilla.org/en-US/docs/Web/API/AbortController

példa

Olvasási kérelem lemondása

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

Beállítja, ha az integrált gyorsítótárat ki kell kerülni vagy engedélyezni kell a kéréshez az Azure CosmosDB szolgáltatásban.

Az alapértelmezett érték hamis. Alapértelmezés szerint az integrált gyorsítótár engedélyezve van

initialHeaders

(Speciális használati eset) Első fejlécek a Cosmosnak küldött kérések esetén

maxIntegratedCacheStalenessInMs

Beállítja a kéréshez társított elavultsági értéket az Azure CosmosDB szolgáltatásban. Az olyan kérések esetében, amelyekben a <xref:com.azure.cosmos.ConsistencyLevel><xref:com.azure.cosmos.ConsistencyLevel%23EVENTUAL> vagy <xref:com.azure.cosmos.ConsistencyLevel%23SESSION>, az integrált gyorsítótárból érkező válaszok garantáltan nem lesznek elavultak, mint a maxIntegratedCacheStaleness által jelzett érték. Ha a konzisztenciaszint nincs beállítva, a rendszer figyelmen kívül hagyja ezt a tulajdonságot.

Az alapértelmezett érték null

A gyorsítótár elavultsága ezredmásodpercben támogatott. A rendszer figyelmen kívül hagyja az ezredmásodpercnél kisebbeket.

priorityLevel

Prioritási szint (alacsony/magas) minden kéréshez. Az alacsony prioritású kérelmek mindig szabályozva vannak a magas prioritású kérések előtt.

Az alapértelmezett érték null. Alapértelmezés szerint minden kérés magas prioritású

sessionToken

Engedélyezi/letiltja a dokumentumtárolók kvótával kapcsolatos statisztikáinak lekérését a dokumentumtároló olvasási kérelmeihez.

Tulajdonság adatai

accessCondition

A kérelemhez társított feltételek.

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

Tulajdonság értéke

{ condition: string, type: string }

allowUnboundedNonStreamingQueries

Csak nem streamelési sorrendre érvényes lekérdezés alapján. Alapértelmezett: hamis; Ha igaz értékre van állítva, lehetővé teszi, hogy a lekérdezések megkerüljék az alapértelmezett viselkedést, amely letiltja a nemstreaming lekérdezéseket felső vagy korlát záradékok nélkül.

allowUnboundedNonStreamingQueries?: boolean

Tulajdonság értéke

boolean

bufferItems

További elemek pufferelésének engedélyezése a lekérdezések során. Alapértelmezett: hamis

Ez egy további oldalt pufferel egyszerre (a maxDegreeOfParallelism szorozva) a háttérben lévő kiszolgálóról. Ez javítja a késést, ha beolvassa az oldalakat, mielőtt az ügyfélnek szüksége lenne rájuk. Ha az összes eredményt a kiszolgálóról üríti ki, például .fetchAll, ezt általában engedélyeznie kell. Ha egyszerre csak egy oldalt szeretne beolvasni a folytatási jogkivonaton keresztül, ezt el kell kerülnie. Ha egynél több lapot ürít, de nem a teljes eredményhalmazt, az segíthet a késés javításában, de növeli a teljes lekérdezés kiszolgálásához használt RU/s teljes mennyiségét (mivel egyes oldalak többször lesznek lekérve).

bufferItems?: boolean

Tulajdonság értéke

boolean

continuation

Figyelmeztetés

Ez az API már elavult.

Use continuationToken instead.

Átlátszatlan jogkivonat az enumerálás folytatásához. Alapértelmezett: nincs definiálva

continuation?: string

Tulajdonság értéke

string

continuationToken

Átlátszatlan jogkivonat az enumerálás folytatásához. Alapértelmezett: nincs definiálva

continuationToken?: string

Tulajdonság értéke

string

continuationTokenLimitInKB

Korlátozza a folytatási jogkivonat méretét a válaszban. Alapértelmezett: nincs definiálva

A folytatási jogkivonatok olyan opcionális adatokat tartalmaznak, amelyek eltávolíthatók a szerializálásból, mielőtt a fejlécbe írják őket. Alapértelmezés szerint 1kb-ra korlátozzuk ezt a korlátot a hosszú fejlécek elkerülése érdekében (Node.js globális fejlécméretkorláttal rendelkezik). A felhasználó beállíthatja ezt a mezőt úgy, hogy hosszabb fejléceket engedélyezzen, ami segíthet a háttérrendszernek optimalizálni a lekérdezések végrehajtását."

continuationTokenLimitInKB?: number

Tulajdonság értéke

number

disableNonStreamingOrderByQuery

Tiltsa le a nemStreamingOrderBy lekérdezési funkciót a támogatott lekérdezési funkciókban. Alapértelmezett: hamis. Állítsa igaz értékre, hogy elkerülje a funkciót nem támogató régi átjáró hibáit.

disableNonStreamingOrderByQuery?: boolean

Tulajdonság értéke

boolean

enableScanInQuery

Az indexelésként nem kiszolgálható lekérdezések vizsgálatának engedélyezése a kért útvonalakon le lett tiltva. Alapértelmezett: hamis

Általában a legjobb, ha nem használja ezt a beállítást. A vizsgálatok viszonylag költségesek, és hosszú időt vesz igénybe.

enableScanInQuery?: boolean

Tulajdonság értéke

boolean

forceQueryPlan

Ez a beállítás kényszeríti a lekérdezést egy lekérdezésterv használatára. Alapértelmezett: hamis

Megjegyzés: ez letiltja a folytatási jogkivonat támogatását, még az önálló partíciós lekérdezések esetében is.

Az olyan lekérdezések esetében, mint az aggregátumok és a legtöbb partícióközi lekérdezés, ez mindenképpen megtörténik. Mivel azonban a kódtár nem tudja, hogy milyen típusú lekérdezésről van szó, amíg vissza nem kapjuk az első választ, bizonyos optimalizálás csak később történhet meg.

Ha ez a beállítás engedélyezve van, kényszeríti a lekérdezés lekérdezési tervét, amely ment néhány hálózati kérést, és biztosítja a párhuzamosságot. Akkor hasznos, ha tudja, hogy több partíciós vagy összesítő lekérdezéseket végez.

forceQueryPlan?: boolean

Tulajdonság értéke

boolean

maxDegreeOfParallelism

Az egyidejű műveletek maximális száma, amelyek az ügyféloldalt futtatják az Azure Cosmos DB-adatbázisszolgáltatás párhuzamos lekérdezés-végrehajtása során. A negatív értékek miatt a rendszer automatikusan dönti el az egyidejűleg futtatandó műveletek számát. Alapértelmezett: 0 (nincs párhuzamosság)

maxDegreeOfParallelism?: number

Tulajdonság értéke

number

maxItemCount

Az enumerálási műveletben visszaadandó elemek maximális száma. Alapértelmezett: nem definiált (a kiszolgáló a hasznos adatokat definiálja)

Az érték lejárata általában a lekérdezés legnagyobb teljesítményváltozását eredményezheti.

Minél kisebb az elemszám, annál gyorsabban lesz kézbesítve az első eredmény (nem összesítések esetén). Nagyobb mennyiség esetén hosszabb időt vesz igénybe a kérés kiszolgálása, de általában jobb átviteli sebességet kap a nagy lekérdezésekhez (azaz ha 1000 elemre van szüksége, mielőtt bármilyen más műveletet végrehajthat, állítsa maxItemCount 1000-re. Ha az első 100 után megkezdheti a munkát, állítsa maxItemCount 100-ra.)

maxItemCount?: number

Tulajdonság értéke

number

partitionKey

A lekérdezést egy adott partíciókulcsra korlátozza. Alapértelmezett: nincs definiálva

A lekérdezések egyetlen partícióra történő hatókörkezelése kétféleképpen végezhető el:

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

Az előbbi akkor hasznos, ha a lekérdezés törzse nincs szabályozva, de továbbra is egyetlen partícióra szeretné korlátozni. Példa: egy végfelhasználó által megadott lekérdezés.

partitionKey?: PartitionKey

Tulajdonság értéke

populateIndexMetrics

Indexmetrikák visszaadásának engedélyezése a válaszfejlécekben. Alapértelmezett: hamis

populateIndexMetrics?: boolean

Tulajdonság értéke

boolean

populateQueryMetrics

Lekérdezési metrikák visszaadásának engedélyezése a válaszfejlécekben. Alapértelmezett: hamis

Lassú vagy költséges lekérdezések hibakeresésére szolgál. Emellett növeli a válaszméretet, és ha alacsony maximális fejlécméretet használ a Node.js, gyorsabban ütközhet problémákba.

populateQueryMetrics?: boolean

Tulajdonság értéke

boolean

useIncrementalFeed

Megjegyzés: fontolja meg a changeFeed használatát.

Változáscsatorna-kérést jelez. A "Növekményes hírcsatorna" értékre kell állítani, vagy másként nem adható meg. Alapértelmezett: hamis

useIncrementalFeed?: boolean

Tulajdonság értéke

boolean

vectorSearchBufferSize

Egyéni maximális pufferméretet ad meg a nemStreamingOrderBy lekérdezések végső eredményeinek tárolásához. Ez az érték figyelmen kívül lesz hagyva, ha a lekérdezés felső/eltolás+korlát záradékokat tartalmaz.

vectorSearchBufferSize?: number

Tulajdonság értéke

number

Örökölt tulajdonság részletei

abortSignal

abortSignal a metódushívás által létrehozott összes mögöttes hálózati kérésnek való továbbításhoz. Lásd: https://developer.mozilla.org/en-US/docs/Web/API/AbortController

példa

Olvasási kérelem lemondása

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

Tulajdonság értéke

AbortSignal

ÖrököltSharedOptions.abortSignal

bypassIntegratedCache

Beállítja, ha az integrált gyorsítótárat ki kell kerülni vagy engedélyezni kell a kéréshez az Azure CosmosDB szolgáltatásban.

Az alapértelmezett érték hamis. Alapértelmezés szerint az integrált gyorsítótár engedélyezve van

bypassIntegratedCache?: boolean

Tulajdonság értéke

boolean

ÖrököltSharedOptions.bypassIntegratedCache

initialHeaders

(Speciális használati eset) Első fejlécek a Cosmosnak küldött kérések esetén

initialHeaders?: CosmosHeaders

Tulajdonság értéke

ÖrököltSharedOptions.initialHeaders

maxIntegratedCacheStalenessInMs

Beállítja a kéréshez társított elavultsági értéket az Azure CosmosDB szolgáltatásban. Az olyan kérések esetében, amelyekben a <xref:com.azure.cosmos.ConsistencyLevel><xref:com.azure.cosmos.ConsistencyLevel%23EVENTUAL> vagy <xref:com.azure.cosmos.ConsistencyLevel%23SESSION>, az integrált gyorsítótárból érkező válaszok garantáltan nem lesznek elavultak, mint a maxIntegratedCacheStaleness által jelzett érték. Ha a konzisztenciaszint nincs beállítva, a rendszer figyelmen kívül hagyja ezt a tulajdonságot.

Az alapértelmezett érték null

A gyorsítótár elavultsága ezredmásodpercben támogatott. A rendszer figyelmen kívül hagyja az ezredmásodpercnél kisebbeket.

maxIntegratedCacheStalenessInMs?: number

Tulajdonság értéke

number

SharedOptions.maxIntegratedCacheStalenessInMs

priorityLevel

Prioritási szint (alacsony/magas) minden kéréshez. Az alacsony prioritású kérelmek mindig szabályozva vannak a magas prioritású kérések előtt.

Az alapértelmezett érték null. Alapértelmezés szerint minden kérés magas prioritású

priorityLevel?: PriorityLevel

Tulajdonság értéke

ÖrököltSharedOptions.priorityLevel

sessionToken

Engedélyezi/letiltja a dokumentumtárolók kvótával kapcsolatos statisztikáinak lekérését a dokumentumtároló olvasási kérelmeihez.

sessionToken?: string

Tulajdonság értéke

string

ÖrököltSharedOptions.sessionToken