FeedOptions interface
Možnosti informačního kanálu a metody dotazů.
- Extends
Vlastnosti
access |
Podmínky přidružené k žádosti. |
allow |
Platné pouze pro pořadí bez streamování podle dotazu. Výchozí hodnota: false; Pokud je nastavená hodnota true, umožňuje dotazům obejít výchozí chování, které blokuje nestreamingové dotazy bez klauzulí top nebo limit. |
buffer |
Povolte ukládání dalších položek do vyrovnávací paměti během dotazů. Výchozí hodnota: false Tím se na pozadí uloží další stránka do vyrovnávací paměti (vynásobená maxDegreeOfParallelism) ze serveru na pozadí.
Tím se zvýší latence načtením stránek před tím, než je klient potřebuje. Pokud vyprázdníte všechny výsledky ze serveru, například |
continuation | Neprůhlásný token pro pokračování výčtu. Výchozí: nedefinováno |
continuation |
Neprůhlásný token pro pokračování výčtu. Výchozí: nedefinováno |
continuation |
Omezuje velikost tokenu pokračování v odpovědi. Výchozí: nedefinováno Tokeny pokračování obsahují volitelná data, která lze odebrat ze serializace před zápisem do hlavičky. Ve výchozím nastavení toto omezení omezujeme na 1 kB, aby nedocházelo k dlouhým záhlavím (Node.js má globální limit velikosti záhlaví). Uživatel může toto pole nastavit tak, aby umožňovalo delší hlavičky, což může back-endu pomoct optimalizovat provádění dotazů." |
disable |
Zakažte funkci dotazu nonStreamingOrderBy v podporovaných funkcích dotazů. Výchozí hodnota: false. Nastavte hodnotu true, aby se zabránilo chybě ze staré brány, která tuto funkci nepodporuje. |
enable |
Povolte prohledávání dotazů, které se nedají obsluhovat jako indexování, na požadovaných cestách se odhlásilo. Výchozí hodnota: false Obecně je nejlepší se vyhnout použití tohoto nastavení. Kontroly jsou poměrně drahé a jejich obsluha trvá dlouho. |
force |
Toto nastavení vynutí dotaz, aby používal plán dotazu. Výchozí hodnota: false Poznámka: Tím zakážete podporu pokračovacích tokenů, a to i u dotazů na jeden oddíl. U dotazů, jako jsou agregace a většina dotazů napříč oddíly, k tomu dochází i přesto. Vzhledem k tomu, že knihovna neví, o jaký typ dotazu se jedná, dokud nedostaneme zpět první odpověď, některé optimalizace se nedají provést až později. Pokud je toto nastavení povolené, vynutí plán dotazů pro dotaz, který uloží některé síťové požadavky a zajistí, že k paralelismu může dojít. Užitečné pro to, když víte, že provádíte dotazy napříč oddíly nebo agregacemi. |
max |
Maximální počet souběžných operací, které běží na straně klienta během paralelního spouštění dotazů v databázové službě Azure Cosmos DB. Záporné hodnoty činí, že systém automaticky rozhodne o počtu souběžných operací, které se mají spustit. Výchozí hodnota: 0 (bez paralelismu) |
max |
Maximální počet položek, které se mají vrátit v operaci výčtu Výchozí hodnota: nedefinovaná (server definuje datovou část) Vypršení platnosti s touto hodnotou obvykle může vést k největším změnám výkonu dotazu. Čím menší je počet položek, tím rychleji se první výsledek doručí (pro neagregace). U větších částek bude zpracování požadavku trvat déle, ale obvykle získáte lepší propustnost pro velké dotazy (tj. pokud potřebujete 1 000 položek, než budete moct provést jakékoli další akce, nastavte |
partition |
Omezuje dotaz na konkrétní klíč oddílu. Výchozí: nedefinováno Rozsah dotazu na jeden oddíl lze provést dvěma způsoby:
První část je užitečná, když je tělo dotazu mimo vaši kontrolu, ale přesto ho chcete omezit na jeden oddíl. Příklad: Zadaný dotaz koncového uživatele |
populate |
Povolte vrácení metrik indexu v hlavičkách odpovědi. Výchozí hodnota: false |
populate |
Povolte vrácení metrik dotazů v hlavicích odpovědí. Výchozí hodnota: false Používá se k ladění pomalých nebo drahých dotazů. Zvýší se také velikost odpovědi a pokud v Node.jspoužíváte malou maximální velikost záhlaví, můžete narazit na problémy rychleji. |
use |
Poznámka: Místo toho zvažte použití funkce ChangeFeed. Označuje požadavek kanálu změn. Musí být nastavená na přírůstkový informační kanál nebo jinak vynechána. Výchozí hodnota: false |
vector |
Určuje vlastní maximální velikost vyrovnávací paměti pro ukládání konečných výsledků pro dotazy nonStreamingOrderBy. Tato hodnota se ignoruje, pokud dotaz obsahuje klauzule top/offset+limit. |
Zděděné vlastnosti
abort |
abortSignal předat všem podkladovým síťovým požadavkům vytvořeným tímto voláním metody. Viz https://developer.mozilla.org/en-US/docs/Web/API/AbortController příklad Zrušení žádosti o čtení
|
bypass |
Nastaví, jestli se má integrovaná mezipaměť obejít nebo povolit pro požadavek ve službě Azure CosmosDB. Výchozí hodnota je false. Ve výchozím nastavení je povolená integrovaná mezipaměť. |
initial |
(Případ rozšířeného použití) Počáteční hlavičky, se kterými začnete při odesílání požadavků do Cosmos |
max |
Nastaví hodnotu zastaralosti přidruženou k požadavku ve službě Azure CosmosDB. U požadavků, kde je <xref:com.azure.cosmos.ConsistencyLevel><xref:com.azure.cosmos.ConsistencyLevel%23EVENTUAL> nebo <xref:com.azure.cosmos.ConsistencyLevel%23SESSION>, jsou zaručeny, že odpovědi z integrované mezipaměti nebudou zastaralé než hodnota určená tímto maxIntegratedCacheStaleness. Pokud úroveň konzistence není nastavena, bude tato vlastnost ignorována. Výchozí hodnota je null Zastaralost mezipaměti se podporuje v milisekundách členitosti. Bude ignorováno cokoli menšího než milisekundy. |
priority |
Úroveň priority (nízká/vysoká) pro každý požadavek. Požadavky s nízkou prioritou se vždy omezují před všemi požadavky s vysokou prioritou. Výchozí hodnota je null. Ve výchozím nastavení mají všechny požadavky vysokou prioritu. |
session |
Povolí nebo zakáže získání statistik souvisejících s kvótou kontejneru dokumentů pro požadavky na čtení kontejneru dokumentů. |
Podrobnosti vlastnosti
accessCondition
Podmínky přidružené k žádosti.
accessCondition?: { condition: string, type: string }
Hodnota vlastnosti
{ condition: string, type: string }
allowUnboundedNonStreamingQueries
Platné pouze pro pořadí bez streamování podle dotazu. Výchozí hodnota: false; Pokud je nastavená hodnota true, umožňuje dotazům obejít výchozí chování, které blokuje nestreamingové dotazy bez klauzulí top nebo limit.
allowUnboundedNonStreamingQueries?: boolean
Hodnota vlastnosti
boolean
bufferItems
Povolte ukládání dalších položek do vyrovnávací paměti během dotazů. Výchozí hodnota: false
Tím se na pozadí uloží další stránka do vyrovnávací paměti (vynásobená maxDegreeOfParallelism) ze serveru na pozadí.
Tím se zvýší latence načtením stránek před tím, než je klient potřebuje. Pokud vyprázdníte všechny výsledky ze serveru, například .fetchAll
, měli byste to obvykle povolit. Pokud načítáte jenom jednu stránku najednou prostřednictvím tokenu pokračování, měli byste se tomu vyhnout. Pokud vyprázdníte více než jednu stránku, ale ne celou sadu výsledků, může to pomoct zlepšit latenci, ale zvýší se celkové množství RU/s, které se použije k obsluhování celého dotazu (protože některé stránky se načtou více než jednou).
bufferItems?: boolean
Hodnota vlastnosti
boolean
continuation
Upozornění
Toto rozhraní API je teď zastaralé.
Use continuationToken instead.
Neprůhlásný token pro pokračování výčtu. Výchozí: nedefinováno
continuation?: string
Hodnota vlastnosti
string
continuationToken
Neprůhlásný token pro pokračování výčtu. Výchozí: nedefinováno
continuationToken?: string
Hodnota vlastnosti
string
continuationTokenLimitInKB
Omezuje velikost tokenu pokračování v odpovědi. Výchozí: nedefinováno
Tokeny pokračování obsahují volitelná data, která lze odebrat ze serializace před zápisem do hlavičky. Ve výchozím nastavení toto omezení omezujeme na 1 kB, aby nedocházelo k dlouhým záhlavím (Node.js má globální limit velikosti záhlaví). Uživatel může toto pole nastavit tak, aby umožňovalo delší hlavičky, což může back-endu pomoct optimalizovat provádění dotazů."
continuationTokenLimitInKB?: number
Hodnota vlastnosti
number
disableNonStreamingOrderByQuery
Zakažte funkci dotazu nonStreamingOrderBy v podporovaných funkcích dotazů. Výchozí hodnota: false. Nastavte hodnotu true, aby se zabránilo chybě ze staré brány, která tuto funkci nepodporuje.
disableNonStreamingOrderByQuery?: boolean
Hodnota vlastnosti
boolean
enableScanInQuery
Povolte prohledávání dotazů, které se nedají obsluhovat jako indexování, na požadovaných cestách se odhlásilo. Výchozí hodnota: false
Obecně je nejlepší se vyhnout použití tohoto nastavení. Kontroly jsou poměrně drahé a jejich obsluha trvá dlouho.
enableScanInQuery?: boolean
Hodnota vlastnosti
boolean
forceQueryPlan
Toto nastavení vynutí dotaz, aby používal plán dotazu. Výchozí hodnota: false
Poznámka: Tím zakážete podporu pokračovacích tokenů, a to i u dotazů na jeden oddíl.
U dotazů, jako jsou agregace a většina dotazů napříč oddíly, k tomu dochází i přesto. Vzhledem k tomu, že knihovna neví, o jaký typ dotazu se jedná, dokud nedostaneme zpět první odpověď, některé optimalizace se nedají provést až později.
Pokud je toto nastavení povolené, vynutí plán dotazů pro dotaz, který uloží některé síťové požadavky a zajistí, že k paralelismu může dojít. Užitečné pro to, když víte, že provádíte dotazy napříč oddíly nebo agregacemi.
forceQueryPlan?: boolean
Hodnota vlastnosti
boolean
maxDegreeOfParallelism
Maximální počet souběžných operací, které běží na straně klienta během paralelního spouštění dotazů v databázové službě Azure Cosmos DB. Záporné hodnoty činí, že systém automaticky rozhodne o počtu souběžných operací, které se mají spustit. Výchozí hodnota: 0 (bez paralelismu)
maxDegreeOfParallelism?: number
Hodnota vlastnosti
number
maxItemCount
Maximální počet položek, které se mají vrátit v operaci výčtu Výchozí hodnota: nedefinovaná (server definuje datovou část)
Vypršení platnosti s touto hodnotou obvykle může vést k největším změnám výkonu dotazu.
Čím menší je počet položek, tím rychleji se první výsledek doručí (pro neagregace). U větších částek bude zpracování požadavku trvat déle, ale obvykle získáte lepší propustnost pro velké dotazy (tj. pokud potřebujete 1 000 položek, než budete moct provést jakékoli další akce, nastavte maxItemCount
na 1 000. Pokud můžete začít pracovat po prvních 100, nastavte maxItemCount
na 100.)
maxItemCount?: number
Hodnota vlastnosti
number
partitionKey
Omezuje dotaz na konkrétní klíč oddílu. Výchozí: nedefinováno
Rozsah dotazu na jeden oddíl lze provést dvěma způsoby:
container.items.query('SELECT * from c', { partitionKey: "foo" }).toArray()
container.items.query('SELECT * from c WHERE c.yourPartitionKey = "foo"').toArray()
První část je užitečná, když je tělo dotazu mimo vaši kontrolu, ale přesto ho chcete omezit na jeden oddíl. Příklad: Zadaný dotaz koncového uživatele
partitionKey?: PartitionKey
Hodnota vlastnosti
populateIndexMetrics
Povolte vrácení metrik indexu v hlavičkách odpovědi. Výchozí hodnota: false
populateIndexMetrics?: boolean
Hodnota vlastnosti
boolean
populateQueryMetrics
Povolte vrácení metrik dotazů v hlavicích odpovědí. Výchozí hodnota: false
Používá se k ladění pomalých nebo drahých dotazů. Zvýší se také velikost odpovědi a pokud v Node.jspoužíváte malou maximální velikost záhlaví, můžete narazit na problémy rychleji.
populateQueryMetrics?: boolean
Hodnota vlastnosti
boolean
useIncrementalFeed
Poznámka: Místo toho zvažte použití funkce ChangeFeed.
Označuje požadavek kanálu změn. Musí být nastavená na přírůstkový informační kanál nebo jinak vynechána. Výchozí hodnota: false
useIncrementalFeed?: boolean
Hodnota vlastnosti
boolean
vectorSearchBufferSize
Určuje vlastní maximální velikost vyrovnávací paměti pro ukládání konečných výsledků pro dotazy nonStreamingOrderBy. Tato hodnota se ignoruje, pokud dotaz obsahuje klauzule top/offset+limit.
vectorSearchBufferSize?: number
Hodnota vlastnosti
number
Podrobnosti zděděných vlastností
abortSignal
abortSignal předat všem podkladovým síťovým požadavkům vytvořeným tímto voláním metody. Viz https://developer.mozilla.org/en-US/docs/Web/API/AbortController
příklad
Zrušení žádosti o čtení
const controller = new AbortController()
const {result: item} = await items.query('SELECT * from c', { abortSignal: controller.signal});
controller.abort()
abortSignal?: AbortSignal
Hodnota vlastnosti
AbortSignal
zděděno zeSharedOptions.abortSignal
bypassIntegratedCache
Nastaví, jestli se má integrovaná mezipaměť obejít nebo povolit pro požadavek ve službě Azure CosmosDB.
Výchozí hodnota je false. Ve výchozím nastavení je povolená integrovaná mezipaměť.
bypassIntegratedCache?: boolean
Hodnota vlastnosti
boolean
zděděno zeSharedOptions.bypassIntegratedCache
initialHeaders
(Případ rozšířeného použití) Počáteční hlavičky, se kterými začnete při odesílání požadavků do Cosmos
initialHeaders?: CosmosHeaders
Hodnota vlastnosti
zděděno zeSharedOptions.initialHeaders
maxIntegratedCacheStalenessInMs
Nastaví hodnotu zastaralosti přidruženou k požadavku ve službě Azure CosmosDB. U požadavků, kde je <xref:com.azure.cosmos.ConsistencyLevel><xref:com.azure.cosmos.ConsistencyLevel%23EVENTUAL> nebo <xref:com.azure.cosmos.ConsistencyLevel%23SESSION>, jsou zaručeny, že odpovědi z integrované mezipaměti nebudou zastaralé než hodnota určená tímto maxIntegratedCacheStaleness. Pokud úroveň konzistence není nastavena, bude tato vlastnost ignorována.
Výchozí hodnota je null
Zastaralost mezipaměti se podporuje v milisekundách členitosti. Bude ignorováno cokoli menšího než milisekundy.
maxIntegratedCacheStalenessInMs?: number
Hodnota vlastnosti
number
priorityLevel
Úroveň priority (nízká/vysoká) pro každý požadavek. Požadavky s nízkou prioritou se vždy omezují před všemi požadavky s vysokou prioritou.
Výchozí hodnota je null. Ve výchozím nastavení mají všechny požadavky vysokou prioritu.
priorityLevel?: PriorityLevel
Hodnota vlastnosti
zděděno zeSharedOptions.priorityLevel
sessionToken
Povolí nebo zakáže získání statistik souvisejících s kvótou kontejneru dokumentů pro požadavky na čtení kontejneru dokumentů.
sessionToken?: string
Hodnota vlastnosti
string
zděděno zeSharedOptions.sessionToken