FeedOptions interface
Opsi umpan dan metode kueri.
- Extends
Properti
access |
Kondisi yang Terkait dengan permintaan. |
buffer |
Aktifkan buffering item tambahan selama kueri. Default: false Ini akan buffer halaman tambahan pada satu waktu (dikalikan dengan maxDegreeOfParallelism) dari server di latar belakang.
Ini meningkatkan latensi dengan mengambil halaman sebelum diperlukan oleh klien. Jika Anda menguras semua hasil dari server, seperti |
continuation | Token buram untuk melanjutkan enumerasi. Default: tidak terdefinis |
continuation |
Token buram untuk melanjutkan enumerasi. Default: tidak terdefinis |
continuation |
Membatasi ukuran token kelanjutan dalam respons. Default: tidak terdefinis Token Kelanjutan berisi data opsional yang dapat dihapus dari serialisasi sebelum menulisnya ke header. Secara default, kami membatasi ini hingga 1kb untuk menghindari header panjang (Node.js memiliki batas ukuran header global). Pengguna dapat mengatur bidang ini untuk memungkinkan header yang lebih panjang, yang dapat membantu backend mengoptimalkan eksekusi kueri." |
enable |
Izinkan pemindaian pada kueri yang tidak dapat dilayani karena pengindeksan ditolak pada jalur yang diminta. Default: false Secara umum, yang terbaik adalah menghindari penggunaan pengaturan ini. Pemindaian relatif mahal dan membutuhkan waktu lama untuk melayani. |
force |
Pengaturan ini memaksa kueri untuk menggunakan rencana kueri. Default: false Catatan: ini akan menonaktifkan dukungan token kelanjutan, bahkan untuk kueri partisi tunggal. Untuk kueri seperti agregat dan sebagian besar kueri partisi silang, ini tetap terjadi. Namun, karena pustaka tidak tahu jenis kueri itu sampai kita mendapatkan kembali respons pertama, beberapa pengoptimalan tidak dapat terjadi sampai nanti. Jika pengaturan ini diaktifkan, pengaturan ini akan memaksa rencana kueri untuk kueri, yang akan menyimpan beberapa permintaan jaringan dan memastikan paralelisme dapat terjadi. Berguna ketika Anda tahu bahwa Anda melakukan kueri lintas partisi atau agregat. |
max |
Jumlah maksimum operasi bersamaan yang menjalankan sisi klien selama eksekusi kueri paralel dalam layanan database Azure Cosmos DB. Nilai negatif membuat sistem secara otomatis memutuskan jumlah operasi bersamaan yang akan dijalankan. Default: 0 (tanpa paralelisme) |
max |
Jumlah maksimum item yang akan dikembalikan dalam operasi enumerasi. Default: tidak terdefinisi (server akan menentukan payload) Expirimenting dengan nilai ini biasanya dapat mengakibatkan perubahan performa terbesar pada kueri. Semakin kecil jumlah item, semakin cepat hasil pertama akan dikirimkan (untuk non-agregat). Untuk jumlah yang lebih besar, akan memakan waktu lebih lama untuk melayani permintaan, tetapi Anda biasanya akan mendapatkan throughput yang lebih baik untuk kueri besar (yaitu jika Anda membutuhkan 1000 item sebelum Anda dapat melakukan tindakan lain, atur |
partition |
Membatasi kueri ke kunci partisi tertentu. Default: tidak terdefinis Cakupan kueri ke satu partisi dapat dicapai dengan dua cara:
Yang pertama berguna ketika isi kueri berada di luar kontrol Anda tetapi Anda masih ingin membatasinya ke satu partisi. Contoh: kueri yang ditentukan pengguna akhir. |
populate |
Aktifkan mengembalikan metrik indeks di header respons. Default: false |
populate |
Aktifkan metrik kueri yang dikembalikan di header respons. Default: false Digunakan untuk men-debug kueri lambat atau mahal. Juga meningkatkan ukuran respons dan jika Anda menggunakan ukuran header maks rendah dalam Node.js, Anda dapat mengalami masalah lebih cepat. |
use |
Catatan: pertimbangkan untuk menggunakan changeFeed sebagai gantinya. Menunjukkan permintaan umpan perubahan. Harus diatur ke "Umpan inkremental", atau dihilangkan sebaliknya. Default: false |
Properti yang Diwariskan
abort |
abortSignal untuk meneruskan ke semua permintaan jaringan dasar yang dibuat oleh panggilan metode ini. Lihat https://developer.mozilla.org/en-US/docs/Web/API/AbortController Contoh Membatalkan permintaan baca
|
initial |
(Kasus penggunaan tingkat lanjut) Header awal untuk memulai saat mengirim permintaan ke Cosmos |
max |
Mengatur nilai keusangan yang terkait dengan permintaan dalam layanan Azure CosmosDB. Untuk permintaan di mana <xref:com.azure.cosmos.ConsistencyLevel> adalah <xref:com.azure.cosmos.ConsistencyLevel%23EVENTUAL> atau <xref:com.azure.cosmos.ConsistencyLevel%23SESSION>, respons dari cache terintegrasi dijamin tidak akan ada staler daripada nilai yang ditunjukkan oleh maxIntegratedCacheStaleness ini. Ketika tingkat konsistensi tidak diatur, properti ini diabaikan. Nilai default adalah null Cache Staleness didukung dalam granularitas milidetik. Apa pun yang lebih kecil dari milidetik akan diabaikan. |
priority |
Tingkat Prioritas (Rendah/Tinggi) untuk setiap permintaan. Permintaan berprioritas rendah selalu dibatasi sebelum permintaan prioritas tinggi. Nilai default adalah null. Secara default semua permintaan memiliki prioritas tinggi |
session |
Mengaktifkan/menonaktifkan mendapatkan statistik terkait kuota kontainer dokumen untuk permintaan baca kontainer dokumen. |
Detail Properti
accessCondition
Kondisi yang Terkait dengan permintaan.
accessCondition?: { condition: string, type: string }
Nilai Properti
{ condition: string, type: string }
bufferItems
Aktifkan buffering item tambahan selama kueri. Default: false
Ini akan buffer halaman tambahan pada satu waktu (dikalikan dengan maxDegreeOfParallelism) dari server di latar belakang.
Ini meningkatkan latensi dengan mengambil halaman sebelum diperlukan oleh klien. Jika Anda menguras semua hasil dari server, seperti .fetchAll
, Anda biasanya harus mengaktifkan ini. Jika Anda hanya mengambil satu halaman pada satu waktu melalui token kelanjutan, Anda harus menghindari hal ini. Jika Anda menguras lebih dari satu halaman, tetapi bukan seluruh tataan hasil, ini dapat membantu meningkatkan latensi, tetapi akan meningkatkan jumlah total penggunaan RU untuk melayani seluruh kueri (karena beberapa halaman akan diambil lebih dari sekali).
bufferItems?: boolean
Nilai Properti
boolean
continuation
Peringatan
API ini sudah tidak digunakan lagi.
Use continuationToken instead.
Token buram untuk melanjutkan enumerasi. Default: tidak terdefinis
continuation?: string
Nilai Properti
string
continuationToken
Token buram untuk melanjutkan enumerasi. Default: tidak terdefinis
continuationToken?: string
Nilai Properti
string
continuationTokenLimitInKB
Membatasi ukuran token kelanjutan dalam respons. Default: tidak terdefinis
Token Kelanjutan berisi data opsional yang dapat dihapus dari serialisasi sebelum menulisnya ke header. Secara default, kami membatasi ini hingga 1kb untuk menghindari header panjang (Node.js memiliki batas ukuran header global). Pengguna dapat mengatur bidang ini untuk memungkinkan header yang lebih panjang, yang dapat membantu backend mengoptimalkan eksekusi kueri."
continuationTokenLimitInKB?: number
Nilai Properti
number
enableScanInQuery
Izinkan pemindaian pada kueri yang tidak dapat dilayani karena pengindeksan ditolak pada jalur yang diminta. Default: false
Secara umum, yang terbaik adalah menghindari penggunaan pengaturan ini. Pemindaian relatif mahal dan membutuhkan waktu lama untuk melayani.
enableScanInQuery?: boolean
Nilai Properti
boolean
forceQueryPlan
Pengaturan ini memaksa kueri untuk menggunakan rencana kueri. Default: false
Catatan: ini akan menonaktifkan dukungan token kelanjutan, bahkan untuk kueri partisi tunggal.
Untuk kueri seperti agregat dan sebagian besar kueri partisi silang, ini tetap terjadi. Namun, karena pustaka tidak tahu jenis kueri itu sampai kita mendapatkan kembali respons pertama, beberapa pengoptimalan tidak dapat terjadi sampai nanti.
Jika pengaturan ini diaktifkan, pengaturan ini akan memaksa rencana kueri untuk kueri, yang akan menyimpan beberapa permintaan jaringan dan memastikan paralelisme dapat terjadi. Berguna ketika Anda tahu bahwa Anda melakukan kueri lintas partisi atau agregat.
forceQueryPlan?: boolean
Nilai Properti
boolean
maxDegreeOfParallelism
Jumlah maksimum operasi bersamaan yang menjalankan sisi klien selama eksekusi kueri paralel dalam layanan database Azure Cosmos DB. Nilai negatif membuat sistem secara otomatis memutuskan jumlah operasi bersamaan yang akan dijalankan. Default: 0 (tanpa paralelisme)
maxDegreeOfParallelism?: number
Nilai Properti
number
maxItemCount
Jumlah maksimum item yang akan dikembalikan dalam operasi enumerasi. Default: tidak terdefinisi (server akan menentukan payload)
Expirimenting dengan nilai ini biasanya dapat mengakibatkan perubahan performa terbesar pada kueri.
Semakin kecil jumlah item, semakin cepat hasil pertama akan dikirimkan (untuk non-agregat). Untuk jumlah yang lebih besar, akan memakan waktu lebih lama untuk melayani permintaan, tetapi Anda biasanya akan mendapatkan throughput yang lebih baik untuk kueri besar (yaitu jika Anda membutuhkan 1000 item sebelum Anda dapat melakukan tindakan lain, atur maxItemCount
ke 1000. Jika Anda dapat mulai melakukan pekerjaan setelah 100 pertama, atur maxItemCount
ke 100.)
maxItemCount?: number
Nilai Properti
number
partitionKey
Membatasi kueri ke kunci partisi tertentu. Default: tidak terdefinis
Cakupan kueri ke satu partisi dapat dicapai dengan dua cara:
container.items.query('SELECT * from c', { partitionKey: "foo" }).toArray()
container.items.query('SELECT * from c WHERE c.yourPartitionKey = "foo"').toArray()
Yang pertama berguna ketika isi kueri berada di luar kontrol Anda tetapi Anda masih ingin membatasinya ke satu partisi. Contoh: kueri yang ditentukan pengguna akhir.
partitionKey?: PartitionKey
Nilai Properti
populateIndexMetrics
Aktifkan mengembalikan metrik indeks di header respons. Default: false
populateIndexMetrics?: boolean
Nilai Properti
boolean
populateQueryMetrics
Aktifkan metrik kueri yang dikembalikan di header respons. Default: false
Digunakan untuk men-debug kueri lambat atau mahal. Juga meningkatkan ukuran respons dan jika Anda menggunakan ukuran header maks rendah dalam Node.js, Anda dapat mengalami masalah lebih cepat.
populateQueryMetrics?: boolean
Nilai Properti
boolean
useIncrementalFeed
Catatan: pertimbangkan untuk menggunakan changeFeed sebagai gantinya.
Menunjukkan permintaan umpan perubahan. Harus diatur ke "Umpan inkremental", atau dihilangkan sebaliknya. Default: false
useIncrementalFeed?: boolean
Nilai Properti
boolean
Detail Properti yang Diwariskan
abortSignal
abortSignal untuk meneruskan ke semua permintaan jaringan dasar yang dibuat oleh panggilan metode ini. Lihat https://developer.mozilla.org/en-US/docs/Web/API/AbortController
Contoh
Membatalkan permintaan baca
const controller = new AbortController()
const {result: item} = await items.query('SELECT * from c', { abortSignal: controller.signal});
controller.abort()
abortSignal?: AbortSignal
Nilai Properti
AbortSignal
Diwarisi DariSharedOptions.abortSignal
initialHeaders
(Kasus penggunaan tingkat lanjut) Header awal untuk memulai saat mengirim permintaan ke Cosmos
initialHeaders?: CosmosHeaders
Nilai Properti
Diwarisi DariSharedOptions.initialHeaders
maxIntegratedCacheStalenessInMs
Mengatur nilai keusangan yang terkait dengan permintaan dalam layanan Azure CosmosDB. Untuk permintaan di mana <xref:com.azure.cosmos.ConsistencyLevel> adalah <xref:com.azure.cosmos.ConsistencyLevel%23EVENTUAL> atau <xref:com.azure.cosmos.ConsistencyLevel%23SESSION>, respons dari cache terintegrasi dijamin tidak akan ada staler daripada nilai yang ditunjukkan oleh maxIntegratedCacheStaleness ini. Ketika tingkat konsistensi tidak diatur, properti ini diabaikan.
Nilai default adalah null
Cache Staleness didukung dalam granularitas milidetik. Apa pun yang lebih kecil dari milidetik akan diabaikan.
maxIntegratedCacheStalenessInMs?: number
Nilai Properti
number
Diwarisi DariSharedOptions.maxIntegratedCacheStalenessInMs
priorityLevel
Tingkat Prioritas (Rendah/Tinggi) untuk setiap permintaan. Permintaan berprioritas rendah selalu dibatasi sebelum permintaan prioritas tinggi.
Nilai default adalah null. Secara default semua permintaan memiliki prioritas tinggi
priorityLevel?: PriorityLevel
Nilai Properti
Diwarisi DariSharedOptions.priorityLevel
sessionToken
Mengaktifkan/menonaktifkan mendapatkan statistik terkait kuota kontainer dokumen untuk permintaan baca kontainer dokumen.
sessionToken?: string
Nilai Properti
string
Diwarisi DariSharedOptions.sessionToken