Google Cloud Search SDK에는 모든 커넥터에 대한 Google 제공 구성 매개변수가 포함되어 있습니다. 이러한 설정을 미세 조정하면 데이터 색인 생성을 간소화할 수 있습니다. 이 가이드에는 일반적인 색인 생성 문제와 이를 해결하는 설정이 나와 있습니다.
FullTraversalConnector의 색인 생성 처리량이 낮음
다음 표에는
FullTraversalConnector의 처리량을 개선하기 위한 설정이 나와 있습니다.
| 설정 | 설명 | 기본값 | 권장 변경사항 |
|---|---|---|---|
traverse.partitionSize |
일괄 처리로 처리되는 ApiOperation() 항목의 수입니다. SDK는 파티션이 완료될 때까지 기다린 후 추가 항목을 가져옵니다. |
50 | 메모리가 충분한 경우 1,000 이상으로 늘립니다. |
batch.batchSize |
함께 일괄 처리할 요청의 수입니다. | 10 | 일괄 처리 크기를 낮춰 보세요. |
batch.maxActiveBatches |
허용 가능한 동시 일괄 처리입니다. | 20 | batchSize를 낮추는 경우 (partitionSize / batchSize) + 50을 사용하여 이 값을 늘립니다. |
traverse.threadPoolSize |
병렬 처리를 위한 스레드 수입니다. | 50 | 10의 배수로 늘립니다. |
setRequestMode()를 사용하여 ASYNCHRONOUS 및
SYNCHRONOUS API 요청 모드 간에 전환하는 것이 좋습니다.
ListTraversalConnector의 색인 생성 처리량이 낮음
ListTraversalConnector는 기본적으로 하나의 순회자를 사용합니다. 처리량을 늘리려면 특정 항목 상태 (예: NEW_ITEM, MODIFIED)에 대해 여러 순회자를 만듭니다.
| 설정 | 설명 | 기본값 | 변경 |
|---|---|---|---|
repository.traversers | 고유한 이름 (예: t1, t2)으로 개별
순회자를 만듭니다. | 순회자 하나 | 순회자를 더 추가합니다. |
traversers.t1.hostload | 항목을 동시에 색인 생성할 스레드 수입니다. | 5 | 10 이상의 값을 사용해 보세요. |
schedule.pollQueueIntervalSecs | 빈 큐를 다시 폴링하기 전에 기다릴 시간(초)입니다. | 10 | 1로 낮춥니다. |
traverser.t1.pollRequest.statuses | 색인 생성할 상태 (예: NEW_ITEM)입니다. | 전체 | 다양한 상태에 대해 다양한 순회자를 사용합니다. |
SDK 시간 초과 또는 중단
대용량 파일을 업로드할 때 시간 초과가 발생하는 경우 시간 초과를 늘립니다.
사용 traverser.timeout=seconds
(기본값은 60초). API 요청 시간 초과를 늘릴 수도 있습니다.
| 매개변수 | 설명 | 기본값 |
|---|---|---|
indexingService.connectTimeoutSeconds |
API 요청의 연결 시간 초과입니다. | 120초 |
indexingService.readTimeoutSeconds |
API 요청의 읽기 시간 초과입니다. | 120초 |