مَعلمات الإعداد التي توفّرها Google

يحتوي كل موصِّل على ملف إعداد مرتبط به يحتوي على المَعلمات التي يستخدمها الموصِّل، مثل رقم التعريف الخاص بمستودعك. ويتم تعريف المَعلمات على أنّها أزواج من القيم الأساسية، مثل api.sourceId=1234567890abcdef.

تحتوي حزمة تطوير البرامج (SDK) لخدمة Google Cloud Search على العديد من معلَمات الإعداد التي توفّرها Google وتستخدمها موصِّلات مختلفة. من بين مَعلمات الإعداد التي توفّرها Google، يجب تحديد معلَمات الوصول إلى مصدر البيانات فقط في ملف الإعداد. لن تحتاج إلى إعادة تعريف المَعلمات التي توفّرها Google في ملف الإعداد إلا إذا أردت إلغاء قيمها التلقائية.

يصف هذا المرجع مَعلمات الضبط التي توفّرها Google.

مثال على ملف الإعداد

يعرض المثال التالي ملف إعداد هوية يحتوي على أزواج المفتاح/القيمة للمعلَمات.

#
# Configuration file sample
#
api.sourceId=1234567890abcdef
api.identitySourceId=0987654321lmnopq
api.serviceAccountPrivateKeyFile= ./PrivateKey.json

#
# Traversal schedules
#
schedule.traversalIntervalSecs=7200
schedule.incrementalTraversalIntervalSecs=600
#
# Default ACLs
#
defaultAcl.mode=fallback
defaultAcl.public=true
  

المَعلمات المحدَّدة بشكل شائع

يسرد هذا القسم معلَمات الإعدادات المطلوبة والاختيارية بشكل شائع. إذا لم تغيّر قيم المَعلمات الاختيارية، يستخدم الموصِّل القيم التلقائية التي توفّرها حزمة تطوير البرامج (SDK).

الوصول إلى مصدر البيانات

يسرد الجدول التالي جميع المَعلمات المطلوبة للظهور في ملف إعداد. تعتمد المعلمات التي تستخدمها على نوع الموصل الذي يتم إنشاؤه (موصِّل المحتوى أو موصِّل الهوية).

المكان المَعلمة
رقم تعريف مصدر البيانات api.sourceId=1234567890abcdef

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

رقم تعريف مصدر الهوية api.identitySourceId=0987654321lmnopq

هذه المَعلمة مطلوبة من خلال موصِّلات الهوية لتحديد موقع مصدر الهوية الخارجي. لقد حصلت على هذه القيمة عند ربط هويات المستخدمين في Cloud Search. يجب أن تكون هذه المَعلمة في جميع ملفات إعداد موصِّل الهويات.

ملف المفتاح الخاص لحساب الخدمة api.serviceAccountPrivateKeyFile=./PrivateKey.json

تحتوي هذه المعلمة على المفتاح الخاص المطلوب للوصول إلى المستودع. لقد حصلت على هذه القيمة عند ضبط أذونات الوصول إلى واجهة برمجة تطبيقات Google Cloud Search REST. يجب أن تكون هذه المعلمة في جميع ملفات الإعداد.

رقم تعريف حساب الخدمة api.serviceAccountId=123abcdef4567890

تحدّد هذه المَعلمة رقم تعريف حساب الخدمة. يُسمح باستخدام القيمة التلقائية للسلسلة الفارغة فقط عندما يحدِّد ملف الإعداد معلَمة ملف مفتاح خاص. يجب إدخال هذه المَعلمة إذا لم يكن ملف المفتاح الخاص مفتاح JSON.

رقم تعريف حساب Google Workspace api.customerId=123abcdef4567890

تحدِّد هذه المَعلمة رقم تعريف حساب المؤسسة على Google Workspace. لقد حصلت على هذه القيمة عند ربط هويات المستخدمين في Cloud Search. هذه المَعلمة مطلوبة عند مزامنة المستخدمين باستخدام موصِّل هويات.

عنوان URL الجذر api.rootUrl=baseURLPath

تحدِّد هذه المَعلمة مسار عنوان URL الأساسي لخدمة الفهرسة.

القيمة التلقائية لهذه المَعلمة هي سلسلة فارغة يتم تحويلها إلى السمة https://cloudsearch.googleapis.com.

جداول الاجتياز

تحدد مَعلمات الجدولة عدد المرات التي ينتظرها الرابط بين عمليات الاجتياز.

المكان المَعلمة
الاجتياز الكامل عند بدء تشغيل الموصل schedule.performTraversalOnStart=true|false

يُجري الموصل اجتيازًا كاملاً عند بدء تشغيل الموصل، بدلاً من انتظار انتهاء صلاحية الفاصل الزمني الأول. القيمة التلقائية هي true..

الاجتياز الكامل بعد فاصل زمني schedule.traversalIntervalSecs=intervalInSeconds

يقوم الموصل باجتياز كامل بعد فاصل زمني محدد. حدِّد الفاصل الزمني بين عمليات الاجتياز بالثواني. القيمة التلقائية هي 86400 (عدد الثواني في يوم واحد).

الخروج بعد إجراء اجتياز واحد connector.runOnce=true|false

يُجري الموصل مسحًا كاملاً مرة واحدة، ثم يخرج. يجب ضبط هذه المَعلمة على true فقط إذا كنت تستخدم استراتيجية الاجتياز الكامل، لأنّ استراتيجيات البيانات والرسم البياني تتطلّب عمليات فحص متعددة لرصد التغييرات وفهرسة المحتوى. القيمة التلقائية هي false (لا يتم الخروج بعد إجراء اجتياز واحد).

الاجتياز الإضافي بعد فاصل زمني schedule.incrementalTraversalIntervalSecs=intervalInSeconds

يقوم الموصل باجتياز متزايد بعد فاصل زمني محدد. حدد الفاصل الزمني بين عمليات الاجتياز بالثواني. القيمة التلقائية هي 300 (عدد الثواني بعد 5 دقائق).

الفواصل الزمنية المجدوَلة لقائمة انتظار الاستطلاع schedule.pollQueueIntervalSecs=interval_in_seconds

الفاصل الزمني بين الفواصل الزمنية لقائمة انتظار الاستطلاع المجدولة (بالثواني). ولا يستخدم هذا الإعداد سوى من خلال موصل اجتياز القائمة. القيمة التلقائية هي 10..

قوائم التحكّم بالوصول

يتحكم الموصِّل في الوصول إلى العناصر باستخدام قوائم التحكم بالوصول. وتسمح لك المعلَمات المتعدّدة بحماية وصول المستخدمين إلى السجلّات المفهرَسة باستخدام قوائم التحكم في الوصول.

إذا كان المستودع يحتوي على معلومات ACL فردية مرتبطة بكل عنصر، يمكنك تحميل جميع معلومات ACL للتحكم في الوصول إلى العناصر ضمن Cloud Search. إذا كان المستودع لا يقدم معلومات جزئية أو لا يوفر أي معلومات قائمة التحكم بالوصول، يمكنك توفير معلومات قائمة التحكم بالوصول التلقائية في المعلمات التالية، والتي توفرها حزمة تطوير البرامج (SDK) للموصل.

المكان المَعلمة
وضع ACL defaultAcl.mode=mode

يحدد وقت تطبيق قائمة التحكم بالوصول (ACL) الافتراضية. قيم صالحة:

  • none: لا تستخدم قائمة التحكم بالوصول (ACL) التلقائية (في هذا الوضع، تكون السجلات غير قابلة للبحث ما لم تحدد قوائم التحكم في الوصول (ACLs) الفردية)
  • fallback: استخدام قائمة التحكم بالوصول التلقائية فقط إذا لم تكن هناك قائمة التحكم بالوصول
  • append: إضافة قائمة التحكم بالوصول التلقائية إلى قائمة التحكم بالوصول الحالية
  • override: استبدال قائمة التحكم بالوصول (ACL) الحالية بـ ACL التلقائي

الوضع التلقائي هو none.

قائمة التحكم بالوصول العامة التلقائية defaultAcl.public=true|false

يتم تعيين قائمة التحكم بالوصول (ACL) الافتراضية المستخدمة للمستودع بأكمله على الوصول إلى النطاق العام. القيمة التلقائية هي false. .

قارئات مجموعة قائمة التحكم بالوصول الشائعة defaultAcl.readers.groups=google:group1@mydomain.com, group2
قارئات قائمة التحكم بالوصول الشائعة defaultAcl.readers.users=user1, user2, google:user3@mydomain.com
تم رفض قائمة التحكم بالوصول الشائعة في قراءة المجموعة defaultAcl.denied.groups=group3
رفض القرّاء الشائعين لـ Acl defaultAcl.denied.users=user4, user5
الوصول إلى النطاق بالكامل للسماح لجميع المستخدمين في النطاق بالوصول إلى كل سجلّ مفهرَس، اضبط المَعلمتَين التاليتَين باستخدام القيم:
  • defaultAcl.mode=override
  • defaultACL.public=true
قائمة التحكم بالوصول المشتركة المحدّدة لتحديد قائمة تحكّم بالوصول (ACL) واحدة لكل سجلّ في مستودع البيانات، اضبط جميع قيم المَعلمات التالية:
  • defaultAcl.mode=fallback
  • defaultAcl.public=false
  • defaultAcl.readers.groups=google:group1@mydomain.com, group2 code>
  • defaultAcl.readers.users=user1@mydomain.com, user2, google:user3@mydomain.com
  • defaultAcl.denied.groups=group3
  • defaultAcl.denied.users=user4, user5

    يُفترض أن يكون كل مستخدم ومجموعة محدّدة عبارة عن مستخدم/مجموعة محدّدة عن النطاق المحلي ما لم تكن مسبوقة بـ "google:" (ثابت حرفي).

    المجموعة التلقائية أو المستخدم التلقائي هي سلسلة فارغة. لا تقدِّم مَعلمات المستخدمين والمجموعات إلا في حال ضبط defaultAcl.public على false. لإدراج عدة مجموعات ومستخدمين، استخدِم قوائم مفصولة بفواصل.

    في حال ضبط defaultAcl.mode على none، لن تكون السجلّات قابلة للبحث بدون قوائم ACL فردية محدّدة.

معلمات ضبط البيانات الوصفية

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

يحتوي ملف الإعداد على سلسلة من معلَمات ضبط البيانات الوصفية المسماة التي تتم الإشارة إليها من خلال لاحقة .field، مثل itemMetadata.title.field=movieTitle. إذا كانت هناك قيمة لهذه المعلمات، فسيتم استخدامها لتهيئة حقل بيانات التعريف. في حال عدم توفّر قيمة لمَعلمة البيانات الوصفية المحدّدة، يتم ضبط البيانات الوصفية باستخدام معلَمة تتضمّن اللاحقة .defaultValue).

يعرض الجدول التالي مَعلمات إعداد البيانات الوصفية.

الإعداد المعلَمة
العنوان itemMetadata.title.field=movieTitle
itemMetadata.title.defaultValue=Gone with the Wind
عنوان السلعة. وإذا لم يتم ضبط title.field على قيمة، يتم استخدام قيمة title.defaultValue.
عنوان URL لمستودع المصدر itemMetadata.sourceRepositoryUrl.field=url
itemMetadata.sourceRepositoryUrl.defaultValue=https://www.imdb.com/title/tt0031381/
عنوان URL للسلعة المستخدَم في نتائج البحث يمكنك فقط ضبط السمة defaultValue للاحتفاظ بعنوان URL للمستودع بأكمله، مثلاً إذا كان تقريرك عبارة عن ملف CSV وهناك عنوان URL واحد فقط لكل عنصر. وإذا لم يتم ضبط sourceRepositoryUrl.field على قيمة، يتم استخدام قيمة sourceRepositoryUrl.defaultValue.
اسم الحاوية itemMetadata.containerName.field=containerName
itemMetadata.containerName.defaultValue=myDefaultContainerName
اسم حاوية العنصر، مثل اسم دليل أو مجلد نظام الملفات وإذا لم يتم ضبط containerName.field على قيمة، يتم استخدام قيمة containerName.defaultValue.
نوع الكائن itemMetadata.objectType.field=type
itemMetadata.objectType.defaultValue=movie
نوع الكائن الذي يستخدمه الموصِّل، كما هو محدّد في المخطط. لن يفهرس الموصِّل أي بيانات منظَّمة إذا لم يتم تحديد هذه السمة.
إذا لم يتم ضبط objectType.field على قيمة، سيتم استخدام قيمة objectType.defaultValue.
وقت الإنشاء itemMetadata.createTime.field=releaseDate
itemMetadata.createTime.defaultValue=1940-01-17
الطابع الزمني لإنشاء المستند. وإذا لم يتم ضبط createTime.field على قيمة، يتم استخدام قيمة createTime.defaultValue.
وقت التعديل itemMetadata.updateTime.field=releaseDate
itemMetadata.updateTime.defaultValue=1940-01-17
الطابع الزمني لآخر تعديل على السلعة وإذا لم يتم ضبط updateTime.field على قيمة، يتم استخدام قيمة updateTime.defaultValue.
لغة المحتوى itemMetadata.contentLanguage.field=languageCode
itemMetadata.contentLanguage.defaultValue=en-US
لغة المحتوى للمستندات التي تتم فهرستها. وإذا لم يتم ضبط contentLanguage.field على قيمة، يتم استخدام قيمة contentLanguage.defaultValue.
نوع MIME itemMetadata.mimeType.field=mimeType
itemMetadata.mimeType.defaultValue=image/bmp
نوع mime الأصلي من ItemContent.content في مستودع المصدر. ويبلغ الحدّ الأقصى للطول 256 حرفًا. وإذا لم يتم ضبط mimeType.field على قيمة، يتم استخدام قيمة mimeType.defaultValue.
البيانات الوصفية لجودة البحث itemMetadata.searchQualityMetadata.quality.field=quality
itemMetadata.searchQualityMetadata.quality.defaultValue=1
يشير إلى جودة السلعة، ويتم استخدامها للتأثير في جودة البحث. ويجب أن تتراوح القيمة بين 0.0 (أقل جودة) و1.0 (أعلى جودة). والقيمة التلقائية هي 0.0. وإذا لم يتم ضبط quality.field على قيمة، يتم استخدام قيمة quality.defaultValue.
تجزئة itemMetadata.hash.field=hash
itemMetadata.hash.defaultValue=f0fda58630310a6dd91a7d8f0a4ceda2
قيمة التجزئة التي قدّمها مقدِّم طلب البيانات من واجهة برمجة التطبيقات ويمكن استخدام هذه البيانات مع طريقة items.push لاحتساب حالة التعديل. ويبلغ الحدّ الأقصى للطول 2,048 حرفًا. وإذا لم يتم ضبط hash.field على قيمة، يتم استخدام قيمة hash.defaultValue.

تنسيقات التاريخ والوقت

تحدد تنسيقات التاريخ والوقت التنسيقات المتوقعة في سمات البيانات الوصفية. إذا لم يكن ملف الإعداد يحتوي على هذه المَعلمة، يتم استخدام القيم التلقائية. يعرض الجدول التالي هذه المَعلمة.

الإعداد المعلَمة
تنسيقات إضافية للتاريخ والوقت structuredData.dateTimePatterns=MM/dd/uuuu HH:mm:ssXXX
قائمة مفصولة بفواصل منقوطة لأنماط java.time.format.DateTimeFormatter الإضافية. يتم استخدام الأنماط عند تحليل قيم السلسلة لأي حقول تاريخ أو وقت في البيانات الوصفية أو المخطط. القيمة التلقائية هي قائمة فارغة، ولكن يمكن دائمًا استخدام التنسيقَين RFC 3339 وRFC 1123.

البيانات المنظمة

توفّر واجهة Cloud Search Indexing API خدمة مخطط يمكنك استخدامها لتخصيص طريقة فهرسة Cloud Search لبياناتك وعرضها. إذا كنت تستخدم مخطط مستودع محلي، يجب تحديد اسم المخطط المحلي للبيانات المنظَّمة.

المكان المَعلمة
اسم المخطط المحلي structuredData.localSchema=mySchemaName

تتم قراءة اسم المخطط من مصدر البيانات واستخدامه في البيانات المنظَّمة للمستودع.

القيمة التلقائية هي سلسلة فارغة.

جودة المحتوى والبحث

بالنسبة إلى المستودعات التي تتضمّن محتوى سجلّاً أو محتوى مستندًا إلى حقول (مثل نظام إدارة علاقات العملاء أو CVS أو قاعدة بيانات)، تتيح حزمة تطوير البرامج (SDK) تنسيق HTML التلقائي لحقول البيانات. ويحدِّد الموصِّل حقول البيانات في بداية تنفيذ الموصل، ثم يستخدم نموذج محتوى لتنسيق كل سجل بيانات قبل تحميله إلى Cloud Search.

يحدد قالب المحتوى أهمية كل قيمة حقل للبحث. يجب ملء حقل HTML <title>، ويجب تحديده على أنّه ذو أولوية قصوى. ويمكنك تحديد مستويات أهمية جودة البحث لجميع حقول المحتوى الأخرى، وهي: "مرتفعة" أو "متوسطة" أو "منخفضة". أي حقل محتوى لم يتم تحديده في فئة معيّنة يتم ضبطه تلقائيًا على أولوية منخفضة.

المكان المَعلمة
عنوان HTML للمحتوى contentTemplate.templateName.title=myTitleField

عنوان HTML للمحتوى والحقل الأعلى جودة للبحث هذه المَعلمة مطلوبة فقط في حال استخدام نموذج لمحتوى HTML. القيمة التلقائية هي سلسلة فارغة.

جودة بحث عالية لحقول المحتوى contentTemplate.templateName.quality.high=hField1,hField2

حقول المحتوى التي تحظى بأولوية بحث عالية. القيمة التلقائية هي سلسلة فارغة.

جودة بحث متوسطة في حقول المحتوى contentTemplate.templateName.quality.medium=mField1,mField2

حقول المحتوى التي تم منحها أولوية بحث متوسطة. القيمة التلقائية هي سلسلة فارغة.

جودة البحث منخفضة لحقول المحتوى contentTemplate.templateName.quality.low=lField1,lField2

حقول المحتوى التي تم منحها أولوية بحث منخفضة. القيمة التلقائية هي سلسلة فارغة.

حقول محتوى غير محدّدة contentTemplate.templateName.unmappedColumnsMode=value

كيفية معالجة الموصِّل لحقول المحتوى غير المحدَّدة القيم الصالحة هي:

  • APPEND: إلحاق حقول محتوى غير محدَّدة بالنموذج
  • IGNORE: تجاهل حقول محتوى غير محدَّدة

    ستكون القيمة التلقائية APPEND.

تضمين أسماء الحقول في نموذج HTML contentTemplate.templateName.includeFieldName=true|false

تحدِّد هذه السمة ما إذا كان سيتم تضمين أسماء الحقول مع بيانات الحقول في نموذج HTML. القيمة التلقائية هي true وتجعل أسماء الحقول قابلة للبحث كجزء من بيانات المحتوى.

المعلَمات غير المألوفة

نادرًا ما تحتاج إلى ضبط المعلمات المدرجة في هذا القسم. ويتم ضبط الإعدادات التلقائية للمعلَمات لتحقيق الأداء الأمثل. تنصح Google بضبط هذه المعلَمات على قيم مختلفة عن قيمها التلقائية بدون تحديد متطلبات معيّنة ضمن مستودعك.

إعداد الخادم الوكيل

تسمح لك حزمة تطوير البرامج (SDK) بضبط الموصل لاستخدام خادم وكيل للاتصالات الصادرة.

يجب إدراج المَعلمتَين transport.proxy.hostname وtransport.proxy.port لتفعيل النقل من خلال خادم وكيل. قد تكون المعلمات الأخرى مطلوبة إذا كان الخادم الوكيل يتطلب المصادقة أو يعمل عبر بروتوكول SOCKS بدلاً من HTTP. في حال عدم ضبط transport.proxy.hostname، لن تستخدم حزمة تطوير البرامج (SDK) خادمًا وكيلاً.

المكان المَعلمة
اسم المضيف transport.proxy.hostname=hostname

اسم المضيف للخادم الوكيل. هذه المَعلمة مطلوبة عند استخدام خادم وكيل.

ميناء transport.proxy.port=port

رقم المنفذ للخادم الوكيل. هذه المَعلمة مطلوبة عند استخدام خادم وكيل.

نوع الخادم الوكيل transport.proxy.type=type

نوع الخادم الوكيل. القيم الصالحة هي:

  • HTTP: يقبل الخادم الوكيل الطلبات ويعيد توجيهها عبر بروتوكول HTTP.
  • SOCKS: يقبل الخادم الوكيل الحزم ويعيد توجيهها عبر بروتوكول SOCKS.

ستكون القيمة التلقائية HTTP.

اسم المستخدم transport.proxy.username=username

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

كلمة المرور transport.proxy.password=password

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

أجهزة كشف

تتيح لك حزمة تطوير البرامج (SDK) تحديد عدة أدوات اجتياز فردية للسماح بالاجتيازات المتوازية لمستودع البيانات. تستخدم موصِّلات نماذج حزمة تطوير البرامج (SDK) هذه الميزة.

المكان المَعلمة
حجم مجموعة سلاسل التعليمات traverse.threadPoolSize=size

عدد سلاسل المحادثات التي ينشئها الموصِّل للسماح بالمعالجة المتوازية. يجلب مكرّر واحد العمليات بشكل تسلسلي (عادةً كائنات RepositoryDoc)، ولكن تتم معالجة الطلبات من خلال واجهة برمجة التطبيقات بشكل متوازٍ باستخدام هذا العدد من سلاسل المحادثات.

ستكون القيمة التلقائية 5.

حجم القسم traverse.partitionSize=batchSize

عدد ApiOperation() التي ستتم معالجتها على دفعات قبل جلب APIOperation إضافية.

ستكون القيمة التلقائية 50.

طلبات استطلاع رأي المشاركين

تعتمد قائمة انتظار فهرسة Cloud Search على قائمة انتظار للأولوية تحتوي على إدخال لكل عنصر معروف بتوفّره. يمكن لموصِّل البيانات طلب استطلاع رأي عن العناصر من Indexing API. يحصل طلب الاستطلاع على الإدخالات ذات الأولوية القصوى من قائمة انتظار الفهرسة.

يستخدم نموذج موصِّل بطاقة بيانات حزمة تطوير البرامج (SDK) المَعلمات التالية لتحديد مَعلمات الاستطلاع.

المكان المَعلمة
برنامج اجتياز المستودع repository.traversers=t1, t2, t3, ...

تنشئ واحدًا أو أكثر من أدوات الاجتياز الفردية، ويكون t1 وt2 وt3 و... هو الاسم الفريد لكل منها. ولكل شخص يحمل مجموعة الإعدادات الخاصة به، والتي يتم تحديدها باستخدام الاسم الفريد للاجتياز، مثل traversers.t1.hostload وtraversers.t2.hostload.

قائمة الانتظار للاستطلاع traverser.pollRequest.queue=mySpecialQueue

أسماء قوائم الانتظار التي يسحبها هذا المشارك. الإعداد التلقائي هو سلسلة فارغة (يشير إلى "تلقائية").

traverser.t1.pollRequest.queue=mySpecialQueue

عندما يكون لديك عدة عناصر اجتياز، اضبط حالات العناصر لكل عابرة (حيث أنّ t1، تشير إلى شخص يجتازه).

سلوك الاستطلاع traverser.pollRequest.limit=maxItems

الحد الأقصى لعدد العناصر المطلوب عرضها من طلب استطلاع. القيمة التلقائية هي 0 (يعني ذلك الحد الأقصى لواجهة برمجة التطبيقات).

traverser.t1.pollRequest.limit=limit

عندما يكون لديك عدة عناصر اجتياز، اضبط حالات العناصر لكل عابرة (حيث أنّ t1، تشير إلى شخص يجتازه).

حالة العنصر traverser.pollRequest.statuses=statuses

تمثّل هذه السمة حالات العنصر المحدّد التي يُجريها هذا الشخص اجتياز الاستطلاع، حيث يمكن أن يتكوّن الحقل statuses من أي مجموعة من MODIFIED, NEW_ITEM (مفصولة بفواصل)، وتكون القيمة التلقائية سلسلة فارغة (تتضمّن جميع قيم الحالة).

traverser.t1.pollRequest.statuses=statusesForThisTraverser

عندما يكون لديك عدة عناصر اجتياز، اضبط حالات العناصر لكل عابرة (حيث أنّ t1، تمثِّل شخصًا عابرًا معيّنًا).

حِمل المضيف traverser.hostload=threads

الحد الأقصى لعدد سلاسل المحادثات المتوازية النشطة المتاحة للاستطلاع. القيمة التلقائية هي 5..

traverser.t1.hostload=threadsForThisTraverser

عندما يكون لديك عدة عناصر اجتياز، اضبط حالات العناصر لكل عابرة (حيث أنّ t1، تمثِّل شخصًا عابرًا معيّنًا).

عملية استبعاد للقناة لمهلة معيّنة traverser.timeout=timeout

قيمة المهلة لمقاطعة محاولة اجتياز محاولة الاستطلاع.

ستكون القيمة التلقائية 60.

traverser.t1.timeout=timeoutForThisTraverser

عندما يكون لديك عدة عناصر اجتياز، اضبط حالات العناصر لكل عابرة (حيث أنّ t1، تمثِّل شخصًا عابرًا معيّنًا).

traverser.timeunit=timeoutUunit

وحدات المهلة. القيم الصالحة هي SECONDS, MINUTES,

traverser.t1.timeunit=timeoutUnit

عندما يكون لديك عدة عناصر اجتياز، اضبط حالات العناصر لكل عابرة (حيث أنّ t1، تمثِّل شخصًا عابرًا معيّنًا).

في معظم الحالات، يتطلب الموصِّل الذي يستخدم نموذج موصِّل بطاقة بيانات حزمة تطوير البرامج (SDK) مجموعة واحدة فقط من المَعلمات لإجراء الاستطلاعات. وفي بعض الحالات، قد تحتاج إلى تحديد أكثر من معيار واحد للاستطلاع إذا كانت خوارزمية الاجتياز تتطلب مثلاً معالجة العناصر باستخدام قوائم انتظار مختلفة.

في هذه الحالة، يتوفّر لك خيار تحديد مجموعات متعدّدة من معلَمات الاستطلاع. ابدأ بتحديد أسماء مجموعات المَعلمات باستخدام السمة repository.traversers. بالنسبة إلى كل اسم اجتياز محدّد، يجب تزويد ملف الإعداد بالمَعلمات الواردة في الجدول أعلاه، مع استبدال t1 باسم المسفر. يؤدّي ذلك إلى إنشاء مجموعة من معلَمات الاستطلاع لكل اجتياز محدّد.

نقاط تفتيش

تعتبر النقطة المرجعية مفيدة لتتبع حالة الاجتياز التدريجي.

المكان المَعلمة
دليل نقطة تفتيش connector.checkpointDirectory=/path/to/checkpoint

تحدِّد المسار إلى الدليل المحلي لاستخدامه لنقاط الفحص التزايدية والكاملة.

عمليات تحميل المحتوى

يتم تحميل محتوى العنصر إلى Cloud Search مع العنصر عندما لا يتجاوز حجم المحتوى الحد المحدّد. إذا تجاوز حجم المحتوى الحدّ المسموح به، يتم تحميل المحتوى بشكل منفصل عن البيانات الوصفية الخاصة بالعنصر والبيانات المنظَّمة.

المكان المَعلمة
الحد الأدنى للمحتوى api.contentUploadThresholdBytes=bytes

الحدّ الأدنى للمحتوى الذي يحدّد ما إذا كان يتم تحميله "متوافقًا" مع السلعة مقارنةً باستخدام عملية تحميل منفصلة.

القيمة التلقائية هي 100000 (حوالي 100 كيلوبايت).

الحاويات

يستخدم نموذج الموصِّل الكامل خوارزمية تتضمّن مفهوم الإيقاف المؤقت لقائمة انتظار مصدر البيانات لرصد السجلّات المحذوفة في قاعدة البيانات. هذا يعني أنه عند كل عملية اجتياز كاملة، تستبدل السجلات التي تم جلبها، والموجودة في قائمة انتظار جديدة، جميع سجلات Cloud Search الحالية التي تمت فهرستها من عملية الاجتياز السابقة والموجودة في قائمة الانتظار القديمة.

المكان المَعلمة
بطاقة اسم الحاوية traverse.queueTag=instance

لتشغيل مثيلات متعددة من الموصل على التوازي لفهرسة مستودع بيانات مشترك (سواء في مستودعات بيانات مختلفة أو أجزاء منفصلة من مستودع بيانات مشترك) بدون أن تتداخل مع بعضها البعض، يجب تعيين علامة اسم حاوية فريدة لكل تشغيل للموصل. تمنع علامة الاسم الفريدة مثيل موصل من حذف سجلات شخص آخر.

يتم إلحاق علامة الاسم بمعرّف قائمة انتظار تبديل موصل الاجتياز الكامل.

إيقاف رصد الحذف traverse.useQueues=true|false

يشير إلى ما إذا كان الموصِّل يستخدم منطق تبديل قائمة الانتظار لرصد الحذف.

القيمة التلقائية هي true، وتحدّد أنّه يجب استخدام قوائم المحتوى التالي.

ملاحظة: لا تنطبق معلمة الضبط هذه إلا على الموصلات التي تنفّذ نموذج FullTraversalConnector.

سياسة المجموعة

توفِّر حزمة تطوير البرامج (SDK) سياسة مجمَّعة تتيح لك تنفيذ الإجراءات التالية:

  • الطلبات المجمّعة
  • تحديد عدد الطلبات في قائمة انتظار الدفعات
  • إدارة الدفعات التي يتم تنفيذها بشكل متزامن
  • تجاهل الطلبات المجمّعة

تجمّع حزمة تطوير البرامج (SDK) طلبات الموصِّل معًا لتسريع سرعة معالجة البيانات أثناء عمليات التحميل. يستند مشغّل حزمة تطوير البرامج (SDK) لتحميل مجموعة من الطلبات إلى عدد الطلبات أو المهلة المحددة، أيهما أقرب. على سبيل المثال، إذا انتهت مهلة تأخير الدفعة بدون الوصول إلى حجم الدفعة أو إذا تم الوصول إلى عدد العناصر في الدفعة قبل انتهاء مدة التأخير، سيتم بدء التحميل المجمّع.

المكان المَعلمة
الطلبات المجمّعة batch.batchSize=batchSize

طلبات مجمّعة معًا. ستكون القيمة التلقائية 10.

عدد الطلبات في قائمة انتظار الدفعات batch.maxQueueLength=maxQueueLength

الحد الأقصى لعدد الطلبات في قائمة انتظار الدفعة للتنفيذ. القيمة التلقائية هي 1000..

يتم تنفيذ الدفعات حاليًا batch.maxActiveBatches=maxActiveBatches

عدد الدفعات التي يتم تنفيذها بشكل متزامن والمسموح بها ستكون القيمة التلقائية 20.

تدفق الطلبات المجمعة تلقائيًا batch.maxBatchDelaySeconds=maxBatchDelay

عدد الثواني التي يجب الانتظار فيها قبل مسح الطلبات المجمّعة تلقائيًا. القيمة التلقائية هي 5.

تجاهل الطلبات المجمّعة عند إيقاف التشغيل batch.flushOnShutdown=true|false

مسح الطلبات المجمّعة أثناء إيقاف الخدمة. القيمة التلقائية هي true.

معالِجات الاستثناء

تحدّد معلَمات معالِجات الاستثناء كيفية سير عمل العبور بعد مواجهته لأي استثناء.

المكان المَعلمة
تعليمات برنامج التتبع في حال حدوث خطأ traverse.exceptionHandler=exceptions

كيف يجب أن يواصل الشخص العبور بعد طرح استثناء. في ما يلي القيم الصالحة:

  • 0--إلغاء الاجتياز دائمًا بعد مواجهة استثناء
  • num_exceptions (على سبيل المثال، 10)--يجب إلغاء إكماله بعد مصادفة أداة الاجتياز num_exceptions المحددة.

    القيمة التلقائية هي 0 (يتم الإلغاء دائمًا عند حدوث خطأ).

  • ignore--تجاهل الخطأ
وقت الانتظار بين الاستثناءات abortExceptionHander.backoffMilliSeconds=backoff

وقت التراجع بالمللي ثانية للانتظار بين استثناءات المعالجات التي تم اكتشافها (عادةً ما يُستخدم عند اجتياز مستودع). ستكون القيمة التلقائية 10.