Google Cloud Search SDK में, सभी कनेक्टर के लिए Google की ओर से दिए गए कॉन्फ़िगरेशन पैरामीटर शामिल होते हैं. इन सेटिंग को ट्यून करने से, डेटा इंडेक्सिंग को बेहतर बनाया जा सकता है. इस गाइड में, इंडेक्स करने से जुड़ी सामान्य समस्याओं और उन्हें हल करने के लिए सेटिंग की सूची दी गई है.
FullTraversalConnector के लिए इंडेक्सिंग थ्रूपुट कम है
नीचे दी गई टेबल में, FullTraversalConnector के थ्रूपुट को बेहतर बनाने के लिए सेटिंग दी गई हैं:
| सेटिंग | ब्यौरा | डिफ़ॉल्ट | सुझाया गया बदलाव |
|---|---|---|---|
traverse.partitionSize |
बैच में प्रोसेस किए गए ApiOperation() आइटम की संख्या. एसडीके, किसी पार्टीशन के पूरा होने का इंतज़ार करता है. इसके बाद ही, वह ज़्यादा डेटा फ़ेच करता है. |
50 | अगर आपके पास ज़रूरत के मुताबिक मेमोरी है, तो इसे 1,000 या इससे ज़्यादा पर सेट करें. |
batch.batchSize |
एक साथ बैच किए गए अनुरोधों की संख्या. | 10 | बैच का साइज़ कम करके देखें. |
batch.maxActiveBatches |
एक साथ प्रोसेस किए जा सकने वाले बैच. | 20 | अगर batchSize को कम किया जाता है, तो इसे बढ़ाने के लिए इसका इस्तेमाल करें: (partitionSize / batchSize) + 50. |
traverse.threadPoolSize |
एक साथ प्रोसेस करने के लिए थ्रेड की संख्या. | 50 | इसे 10 के गुणज में बढ़ाएं. |
ASYNCHRONOUS और SYNCHRONOUS एपीआई अनुरोध मोड के बीच स्विच करने के लिए, setRequestMode() का इस्तेमाल करें.
ListTraversalConnector के लिए इंडेक्सिंग थ्रूपुट कम है
ListTraversalConnector डिफ़ॉल्ट रूप से एक ट्रैवर्सर का इस्तेमाल करता है. थ्रूपुट बढ़ाने के लिए, आइटम की खास स्थितियों (जैसे, NEW_ITEM, MODIFIED) के लिए एक से ज़्यादा ट्रैवर्सर बनाएं.
| सेटिंग | ब्यौरा | डिफ़ॉल्ट | बदलें |
|---|---|---|---|
repository.traversers | यह फ़ंक्शन, यूनीक नामों वाले अलग-अलग ट्रैवर्सर बनाता है. जैसे, t1, t2. | One traverser | ज़्यादा ट्रैवर्सर जोड़ें. |
traversers.t1.hostload | एक साथ आइटम इंडेक्स करने के लिए थ्रेड की संख्या. | 5 | वैल्यू को 10 या इससे ज़्यादा पर सेट करें. |
schedule.pollQueueIntervalSecs | खाली कतार को फिर से पोल करने से पहले, इंतज़ार करने के लिए सेकंड की संख्या. | 10 | इसे 1 पर सेट करके देखें. |
traverser.t1.pollRequest.statuses | इंडेक्स करने के स्टेटस (जैसे, NEW_ITEM). | सभी | अलग-अलग स्टेटस के लिए, अलग-अलग ट्रैवर्सर का इस्तेमाल करें. |
एसडीके टूल के टाइम आउट या इंटरप्ट होने की समस्याएं
अगर बड़ी फ़ाइलें अपलोड करते समय टाइमआउट की समस्या आ रही है, तो traverser.timeout=seconds का इस्तेमाल करके टाइमआउट की अवधि बढ़ाएं (डिफ़ॉल्ट रूप से यह 60 सेकंड होती है). एपीआई अनुरोध के टाइमआउट को भी बढ़ाया जा सकता है:
| पैरामीटर | ब्यौरा | डिफ़ॉल्ट |
|---|---|---|
indexingService.connectTimeoutSeconds |
एपीआई अनुरोधों के लिए कनेक्ट होने का समय खत्म हो गया. | 120 सेकंड |
indexingService.readTimeoutSeconds |
एपीआई अनुरोधों के लिए, जवाब मिलने में लगने वाला समय. | 120 सेकंड |