FeedOptions interface

خيارات الموجز وأساليب الاستعلام.

يمتد

الخصائص

accessCondition

الشروط المقترنة بالطلب.

allowUnboundedNonStreamingQueries

صالح فقط للطلب غير المتدفق حسب الاستعلام. الافتراضي: خطأ؛ عند التعيين إلى true، فإنه يسمح للاستعلامات بتجاوز السلوك الافتراضي الذي يحظر الاستعلامات غير المتلقين للمعلومات دون عبارات أعلى أو حد.

bufferItems

تمكين التخزين المؤقت للعناصر الإضافية أثناء الاستعلامات. الافتراضي: خطأ

سيؤدي ذلك إلى تخزين صفحة إضافية مؤقتا في كل مرة (مضروبة في maxDegreeOfParallelism) من الخادم في الخلفية. يؤدي هذا إلى تحسين زمن الانتقال عن طريق جلب الصفحات قبل أن يحتاجها العميل. إذا كنت تستنزف جميع النتائج من الخادم، مثل .fetchAll، يجب عليك عادة تمكين هذا. إذا كنت تقوم بإحضار صفحة واحدة فقط في كل مرة عبر رمز المتابعة المميز، يجب تجنب ذلك. إذا كنت تستنزف أكثر من صفحة واحدة، ولكن ليس مجموعة النتائج بأكملها، فقد يساعد ذلك في تحسين زمن الانتقال، ولكنه سيزيد من إجمالي مقدار استخدام RU/s لخدمة الاستعلام بأكمله (حيث سيتم جلب بعض الصفحات أكثر من مرة).

continuation

رمز مميز مبهم لمتابعة التعداد. الافتراضي: غير معرف

continuationToken

رمز مميز مبهم لمتابعة التعداد. الافتراضي: غير معرف

continuationTokenLimitInKB

يحد من حجم رمز المتابعة المميز في الاستجابة. الافتراضي: غير معرف

تحتوي الرموز المميزة للمتابعة على بيانات اختيارية يمكن إزالتها من التسلسل قبل كتابتها إلى عنوان. بشكل افتراضي، نقوم بالحد الأقصى هذا إلى 1 كيلوبايت لتجنب الرؤوس الطويلة (Node.js لها حد حجم رأس عام). قد يقوم المستخدم بتعيين هذا الحقل للسماح برؤوس أطول، مما يساعد الواجهة الخلفية على تحسين تنفيذ الاستعلام."

disableNonStreamingOrderByQuery

تعطيل ميزة الاستعلام nonStreamingOrderBy في ميزات الاستعلام المدعومة. الافتراضي: خطأ. قم بتعيين إلى صحيح لتجنب الخطأ من بوابة قديمة لا تدعم هذه الميزة.

enableScanInQuery

السماح بالمسح الضوئي على الاستعلامات التي لا يمكن تقديمها كفهرسة تم تعطيلها على المسارات المطلوبة. الافتراضي: خطأ

بشكل عام، من الأفضل تجنب استخدام هذا الإعداد. عمليات الفحص مكلفة نسبيا وتستغرق وقتا طويلا للخدمة.

forceQueryPlan

يفرض هذا الإعداد على الاستعلام استخدام خطة استعلام. الافتراضي: خطأ

ملاحظة: سيؤدي ذلك إلى تعطيل دعم الرمز المميز للمتابعة، حتى لاستعلامات القسم الفردي.

بالنسبة للاستعلامات مثل التجميعات ومعظم استعلامات الأقسام المتقاطعة، يحدث هذا على أي حال. ومع ذلك، نظرا لأن المكتبة لا تعرف نوع الاستعلام حتى نسترجع الاستجابة الأولى، لا يمكن أن يحدث بعض التحسين حتى وقت لاحق.

إذا تم تمكين هذا الإعداد، فرض خطة الاستعلام للاستعلام، والتي ستحفظ بعض طلبات الشبكة وتضمن حدوث التوازي. مفيد عندما تعرف أنك تقوم بالاستعلامات المشتركة أو التجميعية.

maxDegreeOfParallelism

الحد الأقصى لعدد العمليات المتزامنة التي تقوم بتشغيل جانب العميل أثناء تنفيذ الاستعلام المتوازي في خدمة قاعدة بيانات Azure Cosmos DB. تجعل القيم السالبة النظام يقرر تلقائيا عدد العمليات المتزامنة التي سيتم تشغيلها. الافتراضي: 0 (بدون توازي)

maxItemCount

الحد الأقصى لعدد العناصر التي سيتم إرجاعها في عملية التعداد. الافتراضي: غير معرف (سيقوم الخادم بتعريف البيانات الأساسية)

يمكن أن يؤدي انتهاء الصلاحية بهذه القيمة عادة إلى أكبر تغييرات في الأداء للاستعلام.

كلما كان عدد العناصر أصغر، كلما تم تسليم النتيجة الأولى بشكل أسرع (لغير التجميعات). بالنسبة للمبالغ الأكبر، سيستغرق الأمر وقتا أطول لخدمة الطلب، ولكن عادة ما تحصل على معدل نقل أفضل للاستعلامات الكبيرة (أي إذا كنت بحاجة إلى 1000 عنصر قبل أن تتمكن من القيام بأي إجراءات أخرى، قم بتعيين maxItemCount إلى 1000. إذا كان بإمكانك البدء في العمل بعد أول 100، فقم بتعيين maxItemCount إلى 100.)

partitionKey

يقيد الاستعلام بمفتاح قسم معين. الافتراضي: غير معرف

يمكن إنجاز تحديد نطاق استعلام إلى قسم واحد بطريقتين:

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

الأول مفيد عندما يكون نص الاستعلام خارج نطاق سيطرتك ولكنك لا تزال ترغب في تقييده إلى قسم واحد. مثال: استعلام محدد من قبل المستخدم.

populateIndexMetrics

تمكين إرجاع مقاييس الفهرس في رؤوس الاستجابة. الافتراضي: خطأ

populateQueryMetrics

تمكين إرجاع مقاييس الاستعلام في عناوين الاستجابة. الافتراضي: خطأ

يستخدم لتصحيح أخطاء الاستعلامات البطيئة أو المكلفة. يزيد أيضا حجم الاستجابة وإذا كنت تستخدم الحد الأقصى لحجم الرأس المنخفض في Node.js، يمكنك مواجهة المشكلات بشكل أسرع.

useIncrementalFeed

ملاحظة: ضع في اعتبارك استخدام changeFeed بدلا من ذلك.

يشير إلى طلب موجز التغيير. يجب تعيين إلى "موجز تزايدي"، أو حذفه بخلاف ذلك. الافتراضي: خطأ

vectorSearchBufferSize

يحدد الحد الأقصى المخصص لحجم المخزن المؤقت لتخزين النتائج النهائية للاستعلامات nonStreamingOrderBy. يتم تجاهل هذه القيمة إذا كان الاستعلام يتضمن عبارات top/offset+limit.

الخصائص الموروثة

abortSignal

abortSignal لتمرير إلى كافة طلبات الشبكة الأساسية التي تم إنشاؤها بواسطة استدعاء الأسلوب هذا. راجع https://developer.mozilla.org/en-US/docs/Web/API/AbortController

المثال

إلغاء طلب قراءة

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

تعيين ما إذا كان يجب تجاوز ذاكرة التخزين المؤقت المتكاملة أو تمكينها للطلب في خدمة Azure CosmosDB.

القيمة الافتراضية خاطئة. يتم تمكين ذاكرة التخزين المؤقت المتكاملة بشكل افتراضي

initialHeaders

(حالة الاستخدام المتقدمة) العناوين الأولية التي يجب البدء بها عند إرسال الطلبات إلى Cosmos

maxIntegratedCacheStalenessInMs

تعيين قيمة staleness المقترنة بالطلب في خدمة Azure CosmosDB. بالنسبة للطلبات التي يكون فيها <xref:com.azure.cosmos.ConsistencyLevel><xref:com.azure.cosmos.ConsistencyLevel%23EVENTUAL> أو <xref:com.azure.cosmos.ConsistencyLevel%23SESSION>، تضمن الاستجابات من ذاكرة التخزين المؤقت المتكاملة أن تكون لا تالفة من القيمة المشار إليها بواسطة maxIntegratedCacheStaleness هذا. عند عدم تعيين مستوى التناسق، يتم تجاهل هذه الخاصية.

القيمة الافتراضية فارغة

ذاكرة التخزين المؤقت Staleness مدعومة بنقاوة بالمللي ثانية. سيتم تجاهل أي شيء أصغر من مللي ثانية.

priorityLevel

مستوى الأولوية (منخفض/مرتفع) لكل طلب. يتم دائما تقييد الطلبات ذات الأولوية المنخفضة قبل أي طلبات ذات أولوية عالية.

القيمة الافتراضية خالية. تكون جميع الطلبات ذات أولوية عالية بشكل افتراضي

sessionToken

تمكين/تعطيل الحصول على الإحصائيات ذات الصلة بالحصة النسبية لحاوية المستندات لطلبات قراءة حاوية المستند.

تفاصيل الخاصية

accessCondition

الشروط المقترنة بالطلب.

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

قيمة الخاصية

{ condition: string, type: string }

allowUnboundedNonStreamingQueries

صالح فقط للطلب غير المتدفق حسب الاستعلام. الافتراضي: خطأ؛ عند التعيين إلى true، فإنه يسمح للاستعلامات بتجاوز السلوك الافتراضي الذي يحظر الاستعلامات غير المتلقين للمعلومات دون عبارات أعلى أو حد.

allowUnboundedNonStreamingQueries?: boolean

قيمة الخاصية

boolean

bufferItems

تمكين التخزين المؤقت للعناصر الإضافية أثناء الاستعلامات. الافتراضي: خطأ

سيؤدي ذلك إلى تخزين صفحة إضافية مؤقتا في كل مرة (مضروبة في maxDegreeOfParallelism) من الخادم في الخلفية. يؤدي هذا إلى تحسين زمن الانتقال عن طريق جلب الصفحات قبل أن يحتاجها العميل. إذا كنت تستنزف جميع النتائج من الخادم، مثل .fetchAll، يجب عليك عادة تمكين هذا. إذا كنت تقوم بإحضار صفحة واحدة فقط في كل مرة عبر رمز المتابعة المميز، يجب تجنب ذلك. إذا كنت تستنزف أكثر من صفحة واحدة، ولكن ليس مجموعة النتائج بأكملها، فقد يساعد ذلك في تحسين زمن الانتقال، ولكنه سيزيد من إجمالي مقدار استخدام RU/s لخدمة الاستعلام بأكمله (حيث سيتم جلب بعض الصفحات أكثر من مرة).

bufferItems?: boolean

قيمة الخاصية

boolean

continuation

تحذير

واجهة برمجة التطبيقات هذه مهملة الآن.

Use continuationToken instead.

رمز مميز مبهم لمتابعة التعداد. الافتراضي: غير معرف

continuation?: string

قيمة الخاصية

string

continuationToken

رمز مميز مبهم لمتابعة التعداد. الافتراضي: غير معرف

continuationToken?: string

قيمة الخاصية

string

continuationTokenLimitInKB

يحد من حجم رمز المتابعة المميز في الاستجابة. الافتراضي: غير معرف

تحتوي الرموز المميزة للمتابعة على بيانات اختيارية يمكن إزالتها من التسلسل قبل كتابتها إلى عنوان. بشكل افتراضي، نقوم بالحد الأقصى هذا إلى 1 كيلوبايت لتجنب الرؤوس الطويلة (Node.js لها حد حجم رأس عام). قد يقوم المستخدم بتعيين هذا الحقل للسماح برؤوس أطول، مما يساعد الواجهة الخلفية على تحسين تنفيذ الاستعلام."

continuationTokenLimitInKB?: number

قيمة الخاصية

number

disableNonStreamingOrderByQuery

تعطيل ميزة الاستعلام nonStreamingOrderBy في ميزات الاستعلام المدعومة. الافتراضي: خطأ. قم بتعيين إلى صحيح لتجنب الخطأ من بوابة قديمة لا تدعم هذه الميزة.

disableNonStreamingOrderByQuery?: boolean

قيمة الخاصية

boolean

enableScanInQuery

السماح بالمسح الضوئي على الاستعلامات التي لا يمكن تقديمها كفهرسة تم تعطيلها على المسارات المطلوبة. الافتراضي: خطأ

بشكل عام، من الأفضل تجنب استخدام هذا الإعداد. عمليات الفحص مكلفة نسبيا وتستغرق وقتا طويلا للخدمة.

enableScanInQuery?: boolean

قيمة الخاصية

boolean

forceQueryPlan

يفرض هذا الإعداد على الاستعلام استخدام خطة استعلام. الافتراضي: خطأ

ملاحظة: سيؤدي ذلك إلى تعطيل دعم الرمز المميز للمتابعة، حتى لاستعلامات القسم الفردي.

بالنسبة للاستعلامات مثل التجميعات ومعظم استعلامات الأقسام المتقاطعة، يحدث هذا على أي حال. ومع ذلك، نظرا لأن المكتبة لا تعرف نوع الاستعلام حتى نسترجع الاستجابة الأولى، لا يمكن أن يحدث بعض التحسين حتى وقت لاحق.

إذا تم تمكين هذا الإعداد، فرض خطة الاستعلام للاستعلام، والتي ستحفظ بعض طلبات الشبكة وتضمن حدوث التوازي. مفيد عندما تعرف أنك تقوم بالاستعلامات المشتركة أو التجميعية.

forceQueryPlan?: boolean

قيمة الخاصية

boolean

maxDegreeOfParallelism

الحد الأقصى لعدد العمليات المتزامنة التي تقوم بتشغيل جانب العميل أثناء تنفيذ الاستعلام المتوازي في خدمة قاعدة بيانات Azure Cosmos DB. تجعل القيم السالبة النظام يقرر تلقائيا عدد العمليات المتزامنة التي سيتم تشغيلها. الافتراضي: 0 (بدون توازي)

maxDegreeOfParallelism?: number

قيمة الخاصية

number

maxItemCount

الحد الأقصى لعدد العناصر التي سيتم إرجاعها في عملية التعداد. الافتراضي: غير معرف (سيقوم الخادم بتعريف البيانات الأساسية)

يمكن أن يؤدي انتهاء الصلاحية بهذه القيمة عادة إلى أكبر تغييرات في الأداء للاستعلام.

كلما كان عدد العناصر أصغر، كلما تم تسليم النتيجة الأولى بشكل أسرع (لغير التجميعات). بالنسبة للمبالغ الأكبر، سيستغرق الأمر وقتا أطول لخدمة الطلب، ولكن عادة ما تحصل على معدل نقل أفضل للاستعلامات الكبيرة (أي إذا كنت بحاجة إلى 1000 عنصر قبل أن تتمكن من القيام بأي إجراءات أخرى، قم بتعيين maxItemCount إلى 1000. إذا كان بإمكانك البدء في العمل بعد أول 100، فقم بتعيين maxItemCount إلى 100.)

maxItemCount?: number

قيمة الخاصية

number

partitionKey

يقيد الاستعلام بمفتاح قسم معين. الافتراضي: غير معرف

يمكن إنجاز تحديد نطاق استعلام إلى قسم واحد بطريقتين:

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

الأول مفيد عندما يكون نص الاستعلام خارج نطاق سيطرتك ولكنك لا تزال ترغب في تقييده إلى قسم واحد. مثال: استعلام محدد من قبل المستخدم.

partitionKey?: PartitionKey

قيمة الخاصية

populateIndexMetrics

تمكين إرجاع مقاييس الفهرس في رؤوس الاستجابة. الافتراضي: خطأ

populateIndexMetrics?: boolean

قيمة الخاصية

boolean

populateQueryMetrics

تمكين إرجاع مقاييس الاستعلام في عناوين الاستجابة. الافتراضي: خطأ

يستخدم لتصحيح أخطاء الاستعلامات البطيئة أو المكلفة. يزيد أيضا حجم الاستجابة وإذا كنت تستخدم الحد الأقصى لحجم الرأس المنخفض في Node.js، يمكنك مواجهة المشكلات بشكل أسرع.

populateQueryMetrics?: boolean

قيمة الخاصية

boolean

useIncrementalFeed

ملاحظة: ضع في اعتبارك استخدام changeFeed بدلا من ذلك.

يشير إلى طلب موجز التغيير. يجب تعيين إلى "موجز تزايدي"، أو حذفه بخلاف ذلك. الافتراضي: خطأ

useIncrementalFeed?: boolean

قيمة الخاصية

boolean

vectorSearchBufferSize

يحدد الحد الأقصى المخصص لحجم المخزن المؤقت لتخزين النتائج النهائية للاستعلامات nonStreamingOrderBy. يتم تجاهل هذه القيمة إذا كان الاستعلام يتضمن عبارات top/offset+limit.

vectorSearchBufferSize?: number

قيمة الخاصية

number

تفاصيل الخاصية الموروثة

abortSignal

abortSignal لتمرير إلى كافة طلبات الشبكة الأساسية التي تم إنشاؤها بواسطة استدعاء الأسلوب هذا. راجع https://developer.mozilla.org/en-US/docs/Web/API/AbortController

المثال

إلغاء طلب قراءة

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

قيمة الخاصية

AbortSignal

موروث منSharedOptions.abortSignal

bypassIntegratedCache

تعيين ما إذا كان يجب تجاوز ذاكرة التخزين المؤقت المتكاملة أو تمكينها للطلب في خدمة Azure CosmosDB.

القيمة الافتراضية خاطئة. يتم تمكين ذاكرة التخزين المؤقت المتكاملة بشكل افتراضي

bypassIntegratedCache?: boolean

قيمة الخاصية

boolean

موروث منSharedOptions.bypassIntegratedCache

initialHeaders

(حالة الاستخدام المتقدمة) العناوين الأولية التي يجب البدء بها عند إرسال الطلبات إلى Cosmos

initialHeaders?: CosmosHeaders

قيمة الخاصية

موروث منSharedOptions.initialHeaders

maxIntegratedCacheStalenessInMs

تعيين قيمة staleness المقترنة بالطلب في خدمة Azure CosmosDB. بالنسبة للطلبات التي يكون فيها <xref:com.azure.cosmos.ConsistencyLevel><xref:com.azure.cosmos.ConsistencyLevel%23EVENTUAL> أو <xref:com.azure.cosmos.ConsistencyLevel%23SESSION>، تضمن الاستجابات من ذاكرة التخزين المؤقت المتكاملة أن تكون لا تالفة من القيمة المشار إليها بواسطة maxIntegratedCacheStaleness هذا. عند عدم تعيين مستوى التناسق، يتم تجاهل هذه الخاصية.

القيمة الافتراضية فارغة

ذاكرة التخزين المؤقت Staleness مدعومة بنقاوة بالمللي ثانية. سيتم تجاهل أي شيء أصغر من مللي ثانية.

maxIntegratedCacheStalenessInMs?: number

قيمة الخاصية

number

موروثة منSharedOptions.maxIntegratedCacheStalenessInMs

priorityLevel

مستوى الأولوية (منخفض/مرتفع) لكل طلب. يتم دائما تقييد الطلبات ذات الأولوية المنخفضة قبل أي طلبات ذات أولوية عالية.

القيمة الافتراضية خالية. تكون جميع الطلبات ذات أولوية عالية بشكل افتراضي

priorityLevel?: PriorityLevel

قيمة الخاصية

موروث منSharedOptions.priorityLevel

sessionToken

تمكين/تعطيل الحصول على الإحصائيات ذات الصلة بالحصة النسبية لحاوية المستندات لطلبات قراءة حاوية المستند.

sessionToken?: string

قيمة الخاصية

string

موروث منSharedOptions.sessionToken