SDK Google Cloud Search bao gồm các thông số cấu hình do Google cung cấp cho tất cả các trình kết nối. Việc điều chỉnh các chế độ cài đặt này có thể giúp đơn giản hoá quy trình lập chỉ mục dữ liệu. Hướng dẫn này liệt kê các vấn đề thường gặp khi lập chỉ mục và các chế độ cài đặt để giải quyết các vấn đề đó.
Thông lượng lập chỉ mục thấp cho FullTraversalConnector
Bảng sau đây liệt kê các chế độ cài đặt để cải thiện thông lượng cho FullTraversalConnector:
| Cài đặt | Mô tả | Mặc định | Thay đổi đề xuất |
|---|---|---|---|
traverse.partitionSize |
Số lượng mặt hàng ApiOperation() được xử lý theo lô. SDK sẽ đợi một phân vùng hoàn tất rồi mới tìm nạp thêm. |
50 | Tăng lên 1000 hoặc hơn nếu bạn có đủ bộ nhớ. |
batch.batchSize |
Số lượng yêu cầu được gộp lại với nhau. | 10 | Hãy thử giảm kích thước lô. |
batch.maxActiveBatches |
Số lượng lô đồng thời được phép. | 20 | Nếu bạn giảm batchSize, hãy tăng giá này bằng cách sử dụng: (partitionSize / batchSize) + 50. |
traverse.threadPoolSize |
Số lượng luồng để xử lý song song. | 50 | Tăng số này theo bội số của 10. |
Hãy cân nhắc sử dụng setRequestMode() để chuyển đổi giữa các chế độ yêu cầu API ASYNCHRONOUS và SYNCHRONOUS.
Thông lượng lập chỉ mục thấp cho ListTraversalConnector
Theo mặc định, ListTraversalConnector sử dụng một trình duyệt. Để tăng thông lượng, hãy tạo nhiều trình duyệt cho các trạng thái cụ thể của mặt hàng (ví dụ:
NEW_ITEM, MODIFIED).
| Cài đặt | Mô tả | Mặc định | Chuyển |
|---|---|---|---|
repository.traversers | Tạo các trình duyệt riêng lẻ có tên riêng biệt (ví dụ: t1, t2). | Một trình duyệt | Thêm nhiều trình duyệt khác. |
traversers.t1.hostload | Số lượng luồng để lập chỉ mục đồng thời các mục. | 5 | Hãy thử các giá trị từ 10 trở lên. |
schedule.pollQueueIntervalSecs | Số giây chờ trước khi thăm dò lại một hàng đợi trống. | 10 | Hãy thử giảm xuống 1. |
traverser.t1.pollRequest.statuses | Trạng thái cần lập chỉ mục (ví dụ: NEW_ITEM). | Tất cả | Sử dụng các trình duyệt khác nhau cho các trạng thái khác nhau. |
SDK hết thời gian chờ hoặc bị gián đoạn
Nếu bạn gặp phải tình trạng hết thời gian chờ khi tải tệp lớn lên, hãy tăng thời gian chờ bằng cách sử dụng traverser.timeout=seconds (mặc định là 60 giây). Bạn cũng có thể tăng thời gian chờ yêu cầu API:
| Tham số | Mô tả | Mặc định |
|---|---|---|
indexingService.connectTimeoutSeconds |
Thời gian chờ kết nối cho các yêu cầu API. | 120 giây |
indexingService.readTimeoutSeconds |
Thời gian chờ đọc cho các yêu cầu API. | 120 giây |