FeedOptions interface

Flödesalternativen och frågemetoderna.

Extends

Egenskaper

accessCondition

Villkor som är associerade med begäran.

bufferItems

Aktivera buffring av ytterligare objekt under frågor. Standard: false

Detta buffrar ytterligare en sida i taget (multiplicerat med maxDegreeOfParallelism) från servern i bakgrunden. Detta förbättrar svarstiden genom att hämta sidor innan de behövs av klienten. Om du tömmer alla resultat från servern, till exempel .fetchAll, bör du vanligtvis aktivera detta. Om du bara hämtar en sida i taget via fortsättningstoken bör du undvika detta. Om du tömmer mer än en sida, men inte hela resultatuppsättningen, kan det förbättra svarstiden, men det ökar den totala mängden RU/s som används för att hantera hela frågan (eftersom vissa sidor hämtas mer än en gång).

continuation

Täckande token för att fortsätta uppräkningen. Standard: odefinierad

continuationToken

Täckande token för att fortsätta uppräkningen. Standard: odefinierad

continuationTokenLimitInKB

Begränsar storleken på fortsättningstoken i svaret. Standard: odefinierad

Fortsättningstoken innehåller valfria data som kan tas bort från serialiseringen innan du skriver ut dem till ett sidhuvud. Som standard begränsar vi detta till 1 kB för att undvika långa rubriker (Node.js har en global storleksgräns för sidhuvuden). En användare kan ange att det här fältet ska tillåta längre rubriker, vilket kan hjälpa serverdelen att optimera frågekörningen."

enableScanInQuery

Tillåt genomsökning på de frågor som inte kunde hanteras eftersom indexering har avregistrerats på de begärda sökvägarna. Standard: false

I allmänhet är det bäst att undvika att använda den här inställningen. Skanningar är relativt dyra och tar lång tid att betjäna.

forceQueryPlan

Den här inställningen tvingar frågan att använda en frågeplan. Standard: false

Obs! Detta inaktiverar stöd för fortsättningstoken, även för frågor med en enda partition.

För frågor som aggregeringar och de flesta frågor mellan partitioner händer detta ändå. Men eftersom biblioteket inte vet vilken typ av fråga det är förrän vi får tillbaka det första svaret kan viss optimering inte ske förrän senare.

Om den här inställningen är aktiverad framtvingar den frågeplanen för frågan, vilket sparar vissa nätverksbegäranden och säkerställer att parallelliteten kan ske. Användbart när du vet att du kör frågor mellan partitioner eller aggregeringar.

maxDegreeOfParallelism

Det maximala antalet samtidiga åtgärder som kör klientsidan under parallell frågekörning i Azure Cosmos DB-databastjänsten. Negativa värden gör att systemet automatiskt bestämmer antalet samtidiga åtgärder som ska köras. Standard: 0 (ingen parallellitet)

maxItemCount

Maximalt antal objekt som ska returneras i uppräkningsåtgärden. Standard: odefinierad (servern definierar nyttolasten)

Förfallodatum med det här värdet kan vanligtvis resultera i de största prestandaändringarna i frågan.

Ju mindre antal objekt, desto snabbare levereras det första resultatet (för icke-aggregeringar). För större mängder tar det längre tid att hantera begäran, men du får vanligtvis bättre dataflöde för stora frågor (d.v.s. om du behöver 1 000 objekt innan du kan utföra andra åtgärder anger maxItemCount du till 1 000. Om du kan börja arbeta efter de första 100 anger du maxItemCount till 100.)

partitionKey

Begränsar frågan till en specifik partitionsnyckel. Standard: odefinierad

Omfång för en fråga till en enda partition kan utföras på två sätt:

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

Den förstnämnda är användbar när frågetexten är utom din kontroll, men du fortfarande vill begränsa den till en enda partition. Exempel: en angiven fråga för slutanvändaren.

populateIndexMetrics

Aktivera returnerade indexmått i svarshuvuden. Standard: false

populateQueryMetrics

Aktivera returnerade frågemått i svarshuvuden. Standard: false

Används för felsökning av långsamma eller dyra frågor. Dessutom ökar svarsstorleken och om du använder en låg maximal rubrikstorlek i Node.js kan du stöta på problem snabbare.

useIncrementalFeed

Obs! Överväg att använda changeFeed i stället.

Anger en ändringsflödesbegäran. Måste anges till "Inkrementell feed" eller utelämnas på annat sätt. Standard: false

Ärvda egenskaper

abortSignal

abortSignal för att skicka till alla underliggande nätverksbegäranden som skapats av det här metodanropet. Se https://developer.mozilla.org/en-US/docs/Web/API/AbortController

Exempel

Avbryta en läsbegäran

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

(Avancerat användningsfall) Inledande rubriker att börja med när du skickar begäranden till Cosmos

maxIntegratedCacheStalenessInMs

Anger det föråldringsvärde som är associerat med begäran i Azure CosmosDB-tjänsten. För begäranden där <xref:com.azure.cosmos.ConsistencyLevel> är <xref:com.azure.cosmos.ConsistencyLevel%23EVENTUAL> eller <xref:com.azure.cosmos.ConsistencyLevel%23SESSION>är svaren från den integrerade cachen garanterat inte föråldrade än det värde som anges av denna maxIntegratedCacheStaleness. När konsekvensnivån inte har angetts ignoreras den här egenskapen.

Standardvärdet är null

Cacheföråldring stöds i millisekunders kornighet. Allt som är mindre än millisekunder ignoreras.

priorityLevel

Prioritetsnivå (låg/hög) för varje begäran. Begäranden med låg prioritet begränsas alltid före begäranden med hög prioritet.

Standardvärdet är null. Som standard har alla begäranden hög prioritet

sessionToken

Aktiverar/inaktiverar hämtar dokumentcontainerkvotrelaterad statistik för läsbegäranden för dokumentcontainer.

Egenskapsinformation

accessCondition

Villkor som är associerade med begäran.

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

Egenskapsvärde

{ condition: string, type: string }

bufferItems

Aktivera buffring av ytterligare objekt under frågor. Standard: false

Detta buffrar ytterligare en sida i taget (multiplicerat med maxDegreeOfParallelism) från servern i bakgrunden. Detta förbättrar svarstiden genom att hämta sidor innan de behövs av klienten. Om du tömmer alla resultat från servern, till exempel .fetchAll, bör du vanligtvis aktivera detta. Om du bara hämtar en sida i taget via fortsättningstoken bör du undvika detta. Om du tömmer mer än en sida, men inte hela resultatuppsättningen, kan det förbättra svarstiden, men det ökar den totala mängden RU/s som används för att hantera hela frågan (eftersom vissa sidor hämtas mer än en gång).

bufferItems?: boolean

Egenskapsvärde

boolean

continuation

Varning

Det här API:et är nu inaktuellt.

Use continuationToken instead.

Täckande token för att fortsätta uppräkningen. Standard: odefinierad

continuation?: string

Egenskapsvärde

string

continuationToken

Täckande token för att fortsätta uppräkningen. Standard: odefinierad

continuationToken?: string

Egenskapsvärde

string

continuationTokenLimitInKB

Begränsar storleken på fortsättningstoken i svaret. Standard: odefinierad

Fortsättningstoken innehåller valfria data som kan tas bort från serialiseringen innan du skriver ut dem till ett sidhuvud. Som standard begränsar vi detta till 1 kB för att undvika långa rubriker (Node.js har en global storleksgräns för sidhuvuden). En användare kan ange att det här fältet ska tillåta längre rubriker, vilket kan hjälpa serverdelen att optimera frågekörningen."

continuationTokenLimitInKB?: number

Egenskapsvärde

number

enableScanInQuery

Tillåt genomsökning på de frågor som inte kunde hanteras eftersom indexering har avregistrerats på de begärda sökvägarna. Standard: false

I allmänhet är det bäst att undvika att använda den här inställningen. Skanningar är relativt dyra och tar lång tid att betjäna.

enableScanInQuery?: boolean

Egenskapsvärde

boolean

forceQueryPlan

Den här inställningen tvingar frågan att använda en frågeplan. Standard: false

Obs! Detta inaktiverar stöd för fortsättningstoken, även för frågor med en enda partition.

För frågor som aggregeringar och de flesta frågor mellan partitioner händer detta ändå. Men eftersom biblioteket inte vet vilken typ av fråga det är förrän vi får tillbaka det första svaret kan viss optimering inte ske förrän senare.

Om den här inställningen är aktiverad framtvingar den frågeplanen för frågan, vilket sparar vissa nätverksbegäranden och säkerställer att parallelliteten kan ske. Användbart när du vet att du kör frågor mellan partitioner eller aggregeringar.

forceQueryPlan?: boolean

Egenskapsvärde

boolean

maxDegreeOfParallelism

Det maximala antalet samtidiga åtgärder som kör klientsidan under parallell frågekörning i Azure Cosmos DB-databastjänsten. Negativa värden gör att systemet automatiskt bestämmer antalet samtidiga åtgärder som ska köras. Standard: 0 (ingen parallellitet)

maxDegreeOfParallelism?: number

Egenskapsvärde

number

maxItemCount

Maximalt antal objekt som ska returneras i uppräkningsåtgärden. Standard: odefinierad (servern definierar nyttolasten)

Förfallodatum med det här värdet kan vanligtvis resultera i de största prestandaändringarna i frågan.

Ju mindre antal objekt, desto snabbare levereras det första resultatet (för icke-aggregeringar). För större mängder tar det längre tid att hantera begäran, men du får vanligtvis bättre dataflöde för stora frågor (d.v.s. om du behöver 1 000 objekt innan du kan utföra andra åtgärder anger maxItemCount du till 1 000. Om du kan börja arbeta efter de första 100 anger du maxItemCount till 100.)

maxItemCount?: number

Egenskapsvärde

number

partitionKey

Begränsar frågan till en specifik partitionsnyckel. Standard: odefinierad

Omfång för en fråga till en enda partition kan utföras på två sätt:

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

Den förstnämnda är användbar när frågetexten är utom din kontroll, men du fortfarande vill begränsa den till en enda partition. Exempel: en angiven fråga för slutanvändaren.

partitionKey?: PartitionKey

Egenskapsvärde

populateIndexMetrics

Aktivera returnerade indexmått i svarshuvuden. Standard: false

populateIndexMetrics?: boolean

Egenskapsvärde

boolean

populateQueryMetrics

Aktivera returnerade frågemått i svarshuvuden. Standard: false

Används för felsökning av långsamma eller dyra frågor. Dessutom ökar svarsstorleken och om du använder en låg maximal rubrikstorlek i Node.js kan du stöta på problem snabbare.

populateQueryMetrics?: boolean

Egenskapsvärde

boolean

useIncrementalFeed

Obs! Överväg att använda changeFeed i stället.

Anger en ändringsflödesbegäran. Måste anges till "Inkrementell feed" eller utelämnas på annat sätt. Standard: false

useIncrementalFeed?: boolean

Egenskapsvärde

boolean

Information om ärvda egenskaper

abortSignal

abortSignal för att skicka till alla underliggande nätverksbegäranden som skapats av det här metodanropet. Se https://developer.mozilla.org/en-US/docs/Web/API/AbortController

Exempel

Avbryta en läsbegäran

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

Egenskapsvärde

AbortSignal

Ärvd frånSharedOptions.abortSignal

initialHeaders

(Avancerat användningsfall) Inledande rubriker att börja med när du skickar begäranden till Cosmos

initialHeaders?: CosmosHeaders

Egenskapsvärde

Ärvd frånSharedOptions.initialHeaders

maxIntegratedCacheStalenessInMs

Anger det föråldringsvärde som är associerat med begäran i Azure CosmosDB-tjänsten. För begäranden där <xref:com.azure.cosmos.ConsistencyLevel> är <xref:com.azure.cosmos.ConsistencyLevel%23EVENTUAL> eller <xref:com.azure.cosmos.ConsistencyLevel%23SESSION>är svaren från den integrerade cachen garanterat inte föråldrade än det värde som anges av denna maxIntegratedCacheStaleness. När konsekvensnivån inte har angetts ignoreras den här egenskapen.

Standardvärdet är null

Cacheföråldring stöds i millisekunders kornighet. Allt som är mindre än millisekunder ignoreras.

maxIntegratedCacheStalenessInMs?: number

Egenskapsvärde

number

Ärvd frånSharedOptions.maxIntegratedCacheStalenessInMs

priorityLevel

Prioritetsnivå (låg/hög) för varje begäran. Begäranden med låg prioritet begränsas alltid före begäranden med hög prioritet.

Standardvärdet är null. Som standard har alla begäranden hög prioritet

priorityLevel?: PriorityLevel

Egenskapsvärde

Ärvd frånSharedOptions.priorityLevel

sessionToken

Aktiverar/inaktiverar hämtar dokumentcontainerkvotrelaterad statistik för läsbegäranden för dokumentcontainer.

sessionToken?: string

Egenskapsvärde

string

Ärvd frånSharedOptions.sessionToken