Настройка параметров коннектора

The Google Cloud Search SDK includes Google-supplied configuration parameters for all connectors. Tuning these settings can streamline data indexing. This guide lists common indexing issues and the settings to resolve them.

Низкая пропускная способность индексирования для FullTraversalConnector

В таблице ниже перечислены настройки для повышения пропускной способности FullTraversalConnector :

Параметр Описание По умолчанию Suggested Change
traverse.partitionSize Количество элементов ApiOperation() , обработанных партиями. SDK ожидает завершения обработки каждой части запроса, прежде чем получать новые данные. 50 Увеличьте значение до 1000 или более, если у вас достаточно памяти.
batch.batchSize The number of requests batched together. 10 Try lowering the batch size.
batch.maxActiveBatches Allowable concurrent batches. 20 Если вы уменьшите batchSize , увеличьте его, используя формулу: (partitionSize / batchSize) + 50 .
traverse.threadPoolSize Number of threads for parallel processing. 50 Increase this by multiples of 10.

Рекомендуется использовать setRequestMode() для переключения между ASYNCHRONOUS и SYNCHRONOUS режимами запросов API.

Низкая пропускная способность индексирования для ListTraversalConnector

Объект ListTraversalConnector по умолчанию использует один обработчик. Для повышения пропускной способности создайте несколько обработчиков для определенных статусов элементов (например, NEW_ITEM , MODIFIED ).

Параметр Описание По умолчанию Изменять
repository.traversers Создает отдельные обходчики с уникальными именами (например, t1, t2 ). One traverser Add more traversers.
traversers. t1 .hostload Number of threads to simultaneously index items. 5 Try values of 10 or greater.
schedule.pollQueueIntervalSecs Количество секунд, которое нужно подождать перед повторным опросом пустой очереди. 10 Try lowering to 1.
traverser. t1 .pollRequest.statuses Statuses to index (eg, NEW_ITEM ). Все Use different traversers for different statuses.

SDK timeouts or interrupts

Если при загрузке больших файлов возникают ошибки таймаута, увеличьте время ожидания, используя traverser.timeout= seconds (по умолчанию — 60 секунд). Вы также можете увеличить время ожидания запросов к API:

Параметр Описание По умолчанию
indexingService.connectTimeoutSeconds Connect timeout for API requests. 120-е
indexingService.readTimeoutSeconds Read timeout for API requests. 120-е