پارامترهای پیکربندی ارائه شده توسط Google

هر رابط دارای یک فایل پیکربندی مرتبط است که حاوی پارامترهایی است که توسط کانکتور استفاده می شود، مانند شناسه مخزن شما. پارامترها به عنوان جفت کلید-مقدار تعریف می شوند، مانند api.sourceId=1234567890abcdef .

Google Cloud Search SDK حاوی چندین پارامتر پیکربندی ارائه شده توسط 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 را پیکربندی کردید، این مقدار را به دست آوردید. این پارامتر باید در تمام فایل های پیکربندی باشد.

شناسه حساب سرویس 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 محافظت کنید.

اگر مخزن شما دارای اطلاعات ACL فردی مرتبط با هر مورد است، تمام اطلاعات ACL را برای کنترل دسترسی به موارد در جستجوی ابری آپلود کنید. اگر مخزن شما اطلاعات ACL جزئی یا بدون ارائه می دهد، می توانید اطلاعات ACL پیش فرض را در پارامترهای زیر که SDK در اختیار کانکتور قرار می دهد، ارائه دهید.

تنظیم پارامتر
حالت ACL defaultAcl.mode = mode

زمان اعمال ACL پیش فرض را تعیین می کند. مقادیر معتبر:

  • none : از ACL پیش فرض استفاده نکنید (در این حالت، رکوردها غیرقابل جستجو هستند مگر اینکه ACL های جداگانه را تعریف کنید)
  • fallback : فقط در صورتی از ACL پیش فرض استفاده کنید که قبلاً ACL وجود نداشته باشد
  • append : ACL پیش فرض را به ACL موجود اضافه کنید
  • override : جایگزین ACL موجود با ACL پیش فرض

حالت پیش فرض none است.

ACL عمومی پیش فرض defaultAcl.public = true|false

ACL پیش‌فرض مورد استفاده برای کل مخزن روی دسترسی دامنه عمومی تنظیم شده است. مقدار پیش فرض false.

خوانندگان رایج گروه ACL defaultAcl.readers.groups = google: group1@mydomain.com, group2
خوانندگان ACL رایج defaultAcl.readers.users = user1, user2, google: user3@mydomain.com
ACL معمولی خوانندگان گروه را رد کرد defaultAcl.denied.groups = group3
مشترک Acl خوانندگان را تکذیب کرد defaultAcl.denied.users = user4, user5
دسترسی کل دامنه برای تعیین اینکه هر رکورد ایندکس شده برای همه کاربران دامنه قابل دسترسی باشد، هر دو پارامتر زیر را با مقادیر تنظیم کنید:
  • defaultAcl.mode =override
  • defaultACL.public =true
ACL تعریف شده رایج برای تعیین یک 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 استفاده می شود.
نوع میم 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
مقدار هش ارائه شده توسط تماس گیرنده API. این را می توان با روش items.push برای محاسبه حالت اصلاح شده استفاده کرد. حداکثر طول 2048 کاراکتر است. اگر hash.field روی یک مقدار تنظیم نشده باشد، از مقدار hash.defaultValue استفاده می‌شود.

فرمت های زمان تاریخ

قالب‌های Datetime قالب‌های مورد انتظار در ویژگی‌های ابرداده را مشخص می‌کنند. اگر فایل پیکربندی حاوی این پارامتر نباشد، از مقادیر پیش فرض استفاده می شود. جدول زیر این پارامتر را نشان می دهد.

تنظیم پارامتر
فرمت‌های زمان تاریخ اضافی 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

نام طرحواره از منبع داده خوانده می شود و برای داده های ساختار یافته مخزن استفاده می شود.

پیش فرض یک رشته خالی است.

محتوا و کیفیت جستجو

برای مخازنی که حاوی محتوای رکورد یا فیلد هستند (مانند CRM، CVS یا پایگاه داده)، SDK امکان قالب‌بندی خودکار HTML برای فیلدهای داده را می‌دهد. رابط شما فیلدهای داده را در ابتدای اجرای رابط تعریف می‌کند و سپس از یک الگوی محتوا برای قالب‌بندی هر رکورد داده قبل از آپلود آن در Cloud Search استفاده می‌کند.

الگوی محتوا اهمیت هر مقدار فیلد را برای جستجو مشخص می کند. فیلد <title> HTML الزامی است و به عنوان بالاترین اولویت تعریف شده است. می‌توانید سطوح اهمیت کیفیت جستجو را برای همه زمینه‌های محتوای دیگر تعیین کنید: بالا، متوسط ​​یا پایین. هر فیلد محتوایی که در یک دسته بندی خاص تعریف نشده باشد، به طور پیش فرض دارای اولویت پایین است.

تنظیم پارامتر
عنوان 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 برای فعال کردن انتقال از طریق یک پروکسی مورد نیاز هستند. اگر پروکسی شما نیاز به احراز هویت داشته باشد یا به جای HTTP از طریق پروتکل SOCKS کار کند، ممکن است پارامترهای دیگر مورد نیاز باشد. اگر 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)، اما API با استفاده از این تعداد رشته، فرآیندها را به صورت موازی فراخوانی می کند.

مقدار پیش فرض 5 است.

اندازه پارتیشن traverse.partitionSize = batchSize

تعداد ApiOperation() که باید قبل از واکشی APIOperation اضافی به صورت دسته ای پردازش شوند.

مقدار پیش فرض 50 است.

درخواست های نظرسنجی Traverser

هسته صف فهرست بندی Cloud Search یک صف اولویتی است که حاوی ورودی برای هر مورد شناخته شده است. یک رابط فهرست می‌تواند درخواست نظرسنجی موارد را از 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 است (به معنی حداکثر API است).

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,

ترورسر t1 .timeunit = timeoutUnit

هنگامی که چندین تراورس دارید، وضعیت های مورد را برای هر تراورس تنظیم کنید (که t1 نشان دهنده یک ترورسر خاص است).

در بیشتر موارد، اتصال دهنده ای که از الگوی اتصال دهنده لیست SDK استفاده می کند، تنها به مجموعه ای از پارامترها برای نظرسنجی نیاز دارد. در برخی موارد، اگر الگوریتم پیمایش شما نیاز به جداسازی پردازش آیتم با استفاده از صف‌های مختلف دارد، ممکن است لازم باشد بیش از یک معیار نظرسنجی را تعریف کنید.

در این مورد، شما می توانید چندین مجموعه از پارامترهای نظرسنجی را تعریف کنید. با تعیین نام مجموعه پارامترها با استفاده از repository.traversers شروع کنید. برای هر نام تراورس تعریف شده، فایل پیکربندی را با پارامترهای جدول بالا وارد کنید و t1 را با نام تراورس جایگزین کنید. این یک مجموعه از پارامترهای نظرسنجی برای هر تراورس تعریف شده ایجاد می کند.

ایست های بازرسی

یک ایست بازرسی برای ردیابی وضعیت پیمایش تدریجی مفید است.

تنظیم پارامتر
دایرکتوری ایست بازرسی connector.checkpointDirectory = /path/to/checkpoint

مسیر دایرکتوری محلی را برای استفاده برای نقاط بازرسی افزایشی و کامل تعیین می کند.

بارگذاری محتوا

زمانی که اندازه محتوا از آستانه تعیین شده تجاوز نکند، محتوای مورد با آن مورد در جستجوی ابری آپلود می شود. اگر اندازه محتوا از آستانه فراتر رود، محتوا جدا از فراداده و داده های ساختاری مورد آپلود می شود.

تنظیم پارامتر
آستانه محتوا api.contentUploadThresholdBytes = bytes

آستانه محتوایی که تعیین می‌کند آیا «در خط» با آیتم آپلود شده است یا نه با استفاده از یک آپلود جداگانه.

مقدار پیش فرض 100000 (~100KB) است.

ظروف

الگوی اتصال کامل از الگوریتمی استفاده می‌کند که شامل مفهوم تغییر صف منبع داده موقت برای شناسایی رکوردهای حذف شده در پایگاه داده است. این بدان معنی است که در هر پیمایش کامل، رکوردهای واکشی شده، که در یک صف جدید قرار دارند، جایگزین تمام رکوردهای جستجوی ابری موجود که از پیمایش قبلی فهرست شده اند، که در یک صف قدیمی هستند، می شوند.

تنظیم پارامتر
برچسب نام کانتینر 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 است.