FeedOptions interface
Opzioni del feed e metodi di query.
- Extends
Proprietà
| access |
Condizioni associate alla richiesta. |
| allow |
Valido solo per l'ordine non di streaming per query. Impostazione predefinita: false; Se impostato su true, consente alle query di ignorare il comportamento predefinito che blocca le query nonstreaming senza clausole top o limit. |
| buffer |
Abilitare il buffering di elementi aggiuntivi durante le query. Impostazione predefinita: false In questo modo verrà memorizzata una pagina aggiuntiva alla volta (moltiplicata per maxDegreeOfParallelism) dal server in background.
Ciò migliora la latenza recuperando le pagine prima che siano necessarie dal client. Se si svuotano tutti i risultati dal server, ad esempio |
| continuation | Token opaco per continuare l'enumerazione. Impostazione predefinita: non definito |
| continuation |
Token opaco per continuare l'enumerazione. Impostazione predefinita: non definito |
| continuation |
Limita le dimensioni del token di continuazione nella risposta. Impostazione predefinita: non definito I token di continuazione contengono dati facoltativi che possono essere rimossi dalla serializzazione prima di scriverli in un'intestazione. Per impostazione predefinita, questo valore viene limitato a 1 kb per evitare intestazioni lunghe (Node.js ha un limite di dimensioni dell'intestazione globale). Un utente può impostare questo campo per consentire intestazioni più lunghe, che consentono al back-end di ottimizzare l'esecuzione delle query." |
| disable |
Impostazione predefinita: false. Se impostato su true, disabilita l'ottimizzazione del piano di query di ricerca ibrida. Questa ottimizzazione è abilitata per impostazione predefinita e viene utilizzata per migliorare le prestazioni delle query di ricerca ibride. |
| disable |
Disabilitare la funzionalità di query nonStreamingOrderBy nelle funzionalità di query supportate. Impostazione predefinita: false. Impostare su true per evitare errori da un gateway precedente che non supporta questa funzionalità. |
| enable |
Controlla il comportamento di esecuzione delle query.
Impostazione predefinita: false. Se impostato su false, la query ritenterà fino a quando i risultati non saranno pronti e |
| enable |
Consentire l'analisi sulle query che non possono essere gestite come indicizzazione è stata esplicitamente disattivata nei percorsi richiesti. Impostazione predefinita: false In generale, è consigliabile evitare di usare questa impostazione. Le scansioni sono relativamente costose e richiedono molto tempo per servire. |
| force |
Questa impostazione forza la query a usare un piano di query. Impostazione predefinita: false Nota: ciò disabiliterà il supporto del token di continuazione, anche per le query a partizione singola. Per le query come aggregazioni e la maggior parte delle query tra partizioni, questo avviene comunque. Tuttavia, poiché la libreria non conosce il tipo di query che è fino a quando non viene restituita la prima risposta, alcune ottimizzazioni non possono verificarsi fino a un secondo momento. Se questa impostazione è abilitata, forza il piano di query per la query, che salverà alcune richieste di rete e garantirà che il parallelismo possa verificarsi. Utile per quando si sa che si eseguono query tra partizioni o aggregazioni. |
| max |
Numero massimo di operazioni simultanee eseguite sul lato client durante l'esecuzione di query parallele nel servizio di database di Azure Cosmos DB. I valori negativi rendono automaticamente il sistema decide il numero di operazioni simultanee da eseguire. Impostazione predefinita: 0 (nessun parallelismo) |
| max |
Numero massimo di elementi da restituire nell'operazione di enumerazione. Impostazione predefinita: non definito (payload definito dal server) La scadenza con questo valore può in genere comportare le modifiche di prestazioni maggiori alla query. Minore è il numero di elementi, più veloce verrà recapitato il primo risultato (per le aggregazioni non). Per quantità maggiori, ci vorrà più tempo per gestire la richiesta, ma in genere si otterrà una velocità effettiva migliore per query di grandi dimensioni (ad esempio, se sono necessari 1000 elementi prima di poter eseguire qualsiasi altra azione, impostare |
| partition |
Limita la query a una chiave di partizione specifica. Impostazione predefinita: non definito L'ambito di una query in una singola partizione può essere eseguito in due modi:
Il primo è utile quando il corpo della query non è incluso nel controllo, ma si vuole comunque limitarlo a una singola partizione. Esempio: una query specificata dall'utente finale. |
| populate |
Abilitare la restituzione delle metriche dell'indice nelle intestazioni di risposta. Impostazione predefinita: false |
| populate |
Abilitare la restituzione delle metriche di query nelle intestazioni di risposta. Impostazione predefinita: false Usato per il debug di query lente o costose. Aumenta anche le dimensioni della risposta e se si usa una dimensione di intestazione massima bassa in Node.js, è possibile che si verifichino problemi più velocemente. |
| use |
Nota: prendere in considerazione l'uso di changeFeed. Indica una richiesta del feed di modifiche. Deve essere impostato su "Feed incrementale" o omesso in caso contrario. Impostazione predefinita: false |
| vector |
Specifica una dimensione massima del buffer personalizzata per l'archiviazione dei risultati finali per le query nonStreamingOrderBy. Questo valore viene ignorato se la query include clausole top/offset+limit. |
Proprietà ereditate
| abort |
abortSignal per passare a tutte le richieste di rete sottostanti create da questa chiamata al metodo. Fare riferimento a https://developer.mozilla.org/en-US/docs/Web/API/AbortController Esempio Annullare una richiesta di lettura
|
| bypass |
Imposta se la cache integrata deve essere ignorata o abilitata per la richiesta nel servizio Azure CosmosDB. Il valore predefinito è false. Per impostazione predefinita, la cache integrata è abilitata |
| consistency |
Livello di coerenza richiesto dal client. |
| disable |
DisableRUPerMinuteUsage viene usato per abilitare/disabilitare la capacità delle unità richiesta (UR)/minuto per soddisfare la richiesta se le UR con provisioning regolare al secondo sono esaurite. |
| excluded |
Esclude una o più aree di Azure per l'operazione. Questa opzione viene applicata solo quando enableEndPointDiscovery è impostato su true. |
| initial |
(Caso d'uso avanzato) Intestazioni iniziali da iniziare con quando si inviano richieste a Cosmos |
| max |
Imposta il valore di decadimento associato alla richiesta nel servizio Azure CosmosDB. Per le richieste in cui il <xref:com.azure.cosmos.ConsistencyLevel> è <xref:com.azure.cosmos.ConsistencyLevel%23EVENTUAL> o <xref:com.azure.cosmos.ConsistencyLevel%23SESSION>, le risposte dalla cache integrata non sono necessariamente diverse dal valore indicato da questo valore maxIntegratedCacheStaleness. Quando il livello di coerenza non è impostato, questa proprietà viene ignorata. Il valore predefinito è Null La granularità della cache è supportata in millisecondi di granularità. Qualsiasi valore inferiore a millisecondi verrà ignorato. |
| priority |
Livello di priorità (basso/alto) per ogni richiesta. Le richieste con priorità bassa vengono sempre limitate prima di qualsiasi richiesta con priorità alta. Il valore predefinito è Null. Per impostazione predefinita, tutte le richieste hanno priorità alta |
| session |
Abilita/disabilita il recupero delle statistiche correlate alla quota del contenitore di documenti per le richieste di lettura del contenitore di documenti. |
| throughput |
Bucket di velocità effettiva per una richiesta. Il valore predefinito è Null. In questo caso, la richiesta può utilizzare 100% della velocità effettiva della partizione. Per altre informazioni, visitare [Bucket della velocità effettiva di Cosmos DB](https://aka.ms/cosmsodb-bucketing). |
Dettagli proprietà
accessCondition
Condizioni associate alla richiesta.
accessCondition?: { condition: string, type: string }
Valore della proprietà
{ condition: string, type: string }
allowUnboundedNonStreamingQueries
Valido solo per l'ordine non di streaming per query. Impostazione predefinita: false; Se impostato su true, consente alle query di ignorare il comportamento predefinito che blocca le query nonstreaming senza clausole top o limit.
allowUnboundedNonStreamingQueries?: boolean
Valore della proprietà
boolean
bufferItems
Abilitare il buffering di elementi aggiuntivi durante le query. Impostazione predefinita: false
In questo modo verrà memorizzata una pagina aggiuntiva alla volta (moltiplicata per maxDegreeOfParallelism) dal server in background.
Ciò migliora la latenza recuperando le pagine prima che siano necessarie dal client. Se si svuotano tutti i risultati dal server, ad esempio .fetchAll, in genere è consigliabile abilitare questo. Se si recupera una sola pagina alla volta tramite token di continuazione, è consigliabile evitare questo problema. Se si svuotano più pagine, ma non l'intero set di risultati, può contribuire a migliorare la latenza, ma aumenterà la quantità totale di UR/s per gestire l'intera query (poiché alcune pagine verranno recuperate più volte).
bufferItems?: boolean
Valore della proprietà
boolean
continuation
Avviso
Questa API è ora deprecata.
Use continuationToken instead.
Token opaco per continuare l'enumerazione. Impostazione predefinita: non definito
continuation?: string
Valore della proprietà
string
continuationToken
Token opaco per continuare l'enumerazione. Impostazione predefinita: non definito
continuationToken?: string
Valore della proprietà
string
continuationTokenLimitInKB
Limita le dimensioni del token di continuazione nella risposta. Impostazione predefinita: non definito
I token di continuazione contengono dati facoltativi che possono essere rimossi dalla serializzazione prima di scriverli in un'intestazione. Per impostazione predefinita, questo valore viene limitato a 1 kb per evitare intestazioni lunghe (Node.js ha un limite di dimensioni dell'intestazione globale). Un utente può impostare questo campo per consentire intestazioni più lunghe, che consentono al back-end di ottimizzare l'esecuzione delle query."
continuationTokenLimitInKB?: number
Valore della proprietà
number
disableHybridSearchQueryPlanOptimization
Impostazione predefinita: false. Se impostato su true, disabilita l'ottimizzazione del piano di query di ricerca ibrida. Questa ottimizzazione è abilitata per impostazione predefinita e viene utilizzata per migliorare le prestazioni delle query di ricerca ibride.
disableHybridSearchQueryPlanOptimization?: boolean
Valore della proprietà
boolean
disableNonStreamingOrderByQuery
Disabilitare la funzionalità di query nonStreamingOrderBy nelle funzionalità di query supportate. Impostazione predefinita: false. Impostare su true per evitare errori da un gateway precedente che non supporta questa funzionalità.
disableNonStreamingOrderByQuery?: boolean
Valore della proprietà
boolean
enableQueryControl
Controlla il comportamento di esecuzione delle query.
Impostazione predefinita: false. Se impostato su false, la query ritenterà fino a quando i risultati non saranno pronti e maxItemCount non verranno raggiunti, il che può richiedere tempo per partizioni di grandi dimensioni con dati relativamente piccoli.
Se impostato su true, analizza le partizioni fino a maxDegreeOfParallelism, aggiunge i risultati al buffer e restituisce ciò che è disponibile. Se i risultati non sono pronti, restituisce una risposta vuota.
enableQueryControl?: boolean
Valore della proprietà
boolean
enableScanInQuery
Consentire l'analisi sulle query che non possono essere gestite come indicizzazione è stata esplicitamente disattivata nei percorsi richiesti. Impostazione predefinita: false
In generale, è consigliabile evitare di usare questa impostazione. Le scansioni sono relativamente costose e richiedono molto tempo per servire.
enableScanInQuery?: boolean
Valore della proprietà
boolean
forceQueryPlan
Questa impostazione forza la query a usare un piano di query. Impostazione predefinita: false
Nota: ciò disabiliterà il supporto del token di continuazione, anche per le query a partizione singola.
Per le query come aggregazioni e la maggior parte delle query tra partizioni, questo avviene comunque. Tuttavia, poiché la libreria non conosce il tipo di query che è fino a quando non viene restituita la prima risposta, alcune ottimizzazioni non possono verificarsi fino a un secondo momento.
Se questa impostazione è abilitata, forza il piano di query per la query, che salverà alcune richieste di rete e garantirà che il parallelismo possa verificarsi. Utile per quando si sa che si eseguono query tra partizioni o aggregazioni.
forceQueryPlan?: boolean
Valore della proprietà
boolean
maxDegreeOfParallelism
Numero massimo di operazioni simultanee eseguite sul lato client durante l'esecuzione di query parallele nel servizio di database di Azure Cosmos DB. I valori negativi rendono automaticamente il sistema decide il numero di operazioni simultanee da eseguire. Impostazione predefinita: 0 (nessun parallelismo)
maxDegreeOfParallelism?: number
Valore della proprietà
number
maxItemCount
Numero massimo di elementi da restituire nell'operazione di enumerazione. Impostazione predefinita: non definito (payload definito dal server)
La scadenza con questo valore può in genere comportare le modifiche di prestazioni maggiori alla query.
Minore è il numero di elementi, più veloce verrà recapitato il primo risultato (per le aggregazioni non). Per quantità maggiori, ci vorrà più tempo per gestire la richiesta, ma in genere si otterrà una velocità effettiva migliore per query di grandi dimensioni (ad esempio, se sono necessari 1000 elementi prima di poter eseguire qualsiasi altra azione, impostare maxItemCount su 1000. Se è possibile iniziare a lavorare dopo i primi 100, impostare maxItemCount su 100.
maxItemCount?: number
Valore della proprietà
number
partitionKey
Limita la query a una chiave di partizione specifica. Impostazione predefinita: non definito
L'ambito di una query in una singola partizione può essere eseguito in due modi:
container.items.query('SELECT * from c', { partitionKey: "foo" }).toArray()
container.items.query('SELECT * from c WHERE c.yourPartitionKey = "foo"').toArray()
Il primo è utile quando il corpo della query non è incluso nel controllo, ma si vuole comunque limitarlo a una singola partizione. Esempio: una query specificata dall'utente finale.
partitionKey?: PartitionKey
Valore della proprietà
populateIndexMetrics
Abilitare la restituzione delle metriche dell'indice nelle intestazioni di risposta. Impostazione predefinita: false
populateIndexMetrics?: boolean
Valore della proprietà
boolean
populateQueryMetrics
Abilitare la restituzione delle metriche di query nelle intestazioni di risposta. Impostazione predefinita: false
Usato per il debug di query lente o costose. Aumenta anche le dimensioni della risposta e se si usa una dimensione di intestazione massima bassa in Node.js, è possibile che si verifichino problemi più velocemente.
populateQueryMetrics?: boolean
Valore della proprietà
boolean
useIncrementalFeed
Nota: prendere in considerazione l'uso di changeFeed.
Indica una richiesta del feed di modifiche. Deve essere impostato su "Feed incrementale" o omesso in caso contrario. Impostazione predefinita: false
useIncrementalFeed?: boolean
Valore della proprietà
boolean
vectorSearchBufferSize
Specifica una dimensione massima del buffer personalizzata per l'archiviazione dei risultati finali per le query nonStreamingOrderBy. Questo valore viene ignorato se la query include clausole top/offset+limit.
vectorSearchBufferSize?: number
Valore della proprietà
number
Dettagli proprietà ereditate
abortSignal
abortSignal per passare a tutte le richieste di rete sottostanti create da questa chiamata al metodo. Fare riferimento a https://developer.mozilla.org/en-US/docs/Web/API/AbortController
Esempio
Annullare una richiesta di lettura
import { CosmosClient } from "@azure/cosmos";
const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { container } = await database.containers.createIfNotExists({ id: "Test Container" });
const controller = new AbortController();
const results = container.items.query("SELECT * from c", {
abortSignal: controller.signal,
});
abortSignal?: AbortSignal
Valore della proprietà
AbortSignal
ereditato daSharedOptions.abortSignal
bypassIntegratedCache
Imposta se la cache integrata deve essere ignorata o abilitata per la richiesta nel servizio Azure CosmosDB.
Il valore predefinito è false. Per impostazione predefinita, la cache integrata è abilitata
bypassIntegratedCache?: boolean
Valore della proprietà
boolean
Ereditato daSharedOptions.bypassIntegratedCache
consistencyLevel
Livello di coerenza richiesto dal client.
consistencyLevel?: string
Valore della proprietà
string
Ereditato daSharedOptions.consistencyLevel
disableRUPerMinuteUsage
DisableRUPerMinuteUsage viene usato per abilitare/disabilitare la capacità delle unità richiesta (UR)/minuto per soddisfare la richiesta se le UR con provisioning regolare al secondo sono esaurite.
disableRUPerMinuteUsage?: boolean
Valore della proprietà
boolean
Ereditato daSharedOptions.disableRUPerMinuteUsage
excludedLocations
Esclude una o più aree di Azure per l'operazione.
Questa opzione viene applicata solo quando enableEndPointDiscovery è impostato su true.
excludedLocations?: string[]
Valore della proprietà
string[]
Ereditato daSharedOptions.excludedLocations
initialHeaders
(Caso d'uso avanzato) Intestazioni iniziali da iniziare con quando si inviano richieste a Cosmos
initialHeaders?: CosmosHeaders
Valore della proprietà
ereditato daSharedOptions.initialHeaders
maxIntegratedCacheStalenessInMs
Imposta il valore di decadimento associato alla richiesta nel servizio Azure CosmosDB. Per le richieste in cui il <xref:com.azure.cosmos.ConsistencyLevel> è <xref:com.azure.cosmos.ConsistencyLevel%23EVENTUAL> o <xref:com.azure.cosmos.ConsistencyLevel%23SESSION>, le risposte dalla cache integrata non sono necessariamente diverse dal valore indicato da questo valore maxIntegratedCacheStaleness. Quando il livello di coerenza non è impostato, questa proprietà viene ignorata.
Il valore predefinito è Null
La granularità della cache è supportata in millisecondi di granularità. Qualsiasi valore inferiore a millisecondi verrà ignorato.
maxIntegratedCacheStalenessInMs?: number
Valore della proprietà
number
Ereditato daSharedOptions.maxIntegratedCacheStalenessInMs
priorityLevel
Livello di priorità (basso/alto) per ogni richiesta. Le richieste con priorità bassa vengono sempre limitate prima di qualsiasi richiesta con priorità alta.
Il valore predefinito è Null. Per impostazione predefinita, tutte le richieste hanno priorità alta
priorityLevel?: PriorityLevel
Valore della proprietà
ereditato daSharedOptions.priorityLevel
sessionToken
Abilita/disabilita il recupero delle statistiche correlate alla quota del contenitore di documenti per le richieste di lettura del contenitore di documenti.
sessionToken?: string
Valore della proprietà
string
ereditato daSharedOptions.sessionToken
throughputBucket
Bucket di velocità effettiva per una richiesta.
Il valore predefinito è Null. In questo caso, la richiesta può utilizzare 100% della velocità effettiva della partizione.
Per altre informazioni, visitare [Bucket della velocità effettiva di Cosmos DB](https://aka.ms/cosmsodb-bucketing).throughputBucket?: number
Valore della proprietà
number
Ereditato daSharedOptions.throughputBucket