کیت توسعه نرمافزاری جستجوی ابری گوگل (Google Cloud Search SDK) شامل پارامترهای پیکربندی ارائه شده توسط گوگل برای همه کانکتورها است. تنظیم این تنظیمات میتواند نمایهسازی دادهها را ساده کند. این راهنما مشکلات رایج نمایهسازی و تنظیمات لازم برای حل آنها را فهرست میکند.
توان عملیاتی پایین ایندکسگذاری برای FullTraversalConnector
جدول زیر تنظیماتی را برای بهبود توان عملیاتی برای FullTraversalConnector فهرست میکند:
| تنظیم | توضیحات | پیشفرض | تغییر پیشنهادی |
|---|---|---|---|
traverse.partitionSize | تعداد آیتمهای پردازششدهی ApiOperation() به صورت دستهای. SDK قبل از دریافت تعداد بیشتر، منتظر تکمیل یک پارتیشن میماند. | ۵۰ | اگر حافظه کافی دارید، آن را به ۱۰۰۰ یا بیشتر افزایش دهید. |
batch.batchSize | تعداد درخواستهای دستهبندیشده با هم. | ۱۰ | سعی کنید اندازه دسته را کاهش دهید. |
batch.maxActiveBatches | دستههای همزمان مجاز. | ۲۰ | اگر batchSize کاهش میدهید، با استفاده از (partitionSize / batchSize) + 50 آن را افزایش دهید. |
traverse.threadPoolSize | تعداد رشتههای پردازش موازی | ۵۰ | این را چند برابر 10 افزایش دهید. |
برای تغییر بین حالتهای درخواست API ASYNCHRONOUS و SYNCHRONOUS )، استفاده از setRequestMode() را در نظر بگیرید.
توان عملیاتی پایین در ایندکسگذاری برای ListTraversalConnector
یک ListTraversalConnector به طور پیشفرض از یک پیمایشگر استفاده میکند. برای افزایش توان عملیاتی، چندین پیمایشگر برای وضعیتهای خاص آیتم (مثلاً NEW_ITEM ، MODIFIED ) ایجاد کنید.
| تنظیم | توضیحات | پیشفرض | تغییر |
|---|---|---|---|
repository.traversers | پیمایشگرهای مجزا با نامهای منحصر به فرد (مثلاً t1, t2 ) ایجاد میکند. | یک مسافر | تراورسهای بیشتری اضافه کنید. |
traversers. t1 .hostload | تعداد رشتهها برای فهرستبندی همزمان موارد. | ۵ | مقادیر ۱۰ یا بیشتر را امتحان کنید. |
schedule.pollQueueIntervalSecs | ثانیههایی برای انتظار قبل از دوباره رأیگیری در یک صف خالی. | ۱۰ | سعی کنید به ۱ کاهش دهید. |
traverser. t1 .pollRequest.statuses | وضعیتهایی که باید ایندکس شوند (مثلاً NEW_ITEM ). | همه | برای وضعیتهای مختلف از تراورسهای مختلف استفاده کنید. |
وقفهها یا وقفههای SDK
اگر هنگام آپلود فایلهای بزرگ با مشکل تایم اوت مواجه شدید، با استفاده از traverser.timeout= seconds (پیشفرض ۶۰ ثانیه است) تایم اوت را افزایش دهید. همچنین میتوانید تایم اوت درخواستهای API را افزایش دهید:
| پارامتر | توضیحات | پیشفرض |
|---|---|---|
indexingService.connectTimeoutSeconds | زمان اتصال برای درخواستهای API را مشخص کنید. | دهه ۱۲۰ میلادی |
indexingService.readTimeoutSeconds | زمان انقضای درخواستهای API را بخوانید. | دهه ۱۲۰ میلادی |