कनेक्टर की सेटिंग को ट्यून करें

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.एक ट्रैवर्सरज़्यादा ट्रैवर्सर जोड़ें.
traversers.t1.hostloadएक साथ आइटम इंडेक्स करने के लिए थ्रेड की संख्या.510 या उससे ज़्यादा वैल्यू का इस्तेमाल करें.
schedule.pollQueueIntervalSecsखाली क्यू को फिर से पोल करने से पहले इंतज़ार करने के लिए सेकंड में वैल्यू.10इसे कम करके 1 करें.
traverser.t1.pollRequest.statusesइंडेक्स करने के लिए स्टेटस . जैसे, NEW_ITEM.सभीअलग-अलग स्टेटस के लिए अलग-अलग ट्रैवर्सर का इस्तेमाल करें.

एसडीके के टाइम आउट या इंटरप्ट होने की समस्या

अगर बड़ी फ़ाइलें अपलोड करते समय टाइम आउट की समस्या आ रही है, तो टाइम आउट बढ़ाएं का इस्तेमाल करके traverser.timeout=seconds डिफ़ॉल्ट रूप से, यह 60 सेकंड होता है. एपीआई अनुरोधों के लिए टाइम आउट भी बढ़ाया जा सकता है:

पैरामीटर ब्यौरा डिफ़ॉल्ट
indexingService.connectTimeoutSeconds एपीआई अनुरोधों के लिए कनेक्ट होने का टाइम आउट. 120 सेकंड
indexingService.readTimeoutSeconds एपीआई अनुरोधों के लिए रीड होने का टाइम आउट. 120 सेकंड