每個連接器都有一個相關的設定檔,其中包含連接器使用的參數
  例如存放區的 ID參數是以鍵/值組合定義,例如
  api.sourceId=1234567890abcdef。
Google Cloud Search SDK 包含多項 Google 提供的設定 參數。Google 提供的設定參數中 您只需要在原始碼中定義資料來源存取權參數 設定檔您不需要在 設定檔 (「除非」您想要覆寫預設值)。
本參考資料說明 Google 提供的設定參數。
設定檔範例
以下範例顯示包含參數鍵/值組合的身分設定檔。
# # Configuration file sample # api.sourceId=1234567890abcdef api.identitySourceId=0987654321lmnopq api.serviceAccountPrivateKeyFile= ./PrivateKey.json # # Traversal schedules # schedule.traversalIntervalSecs=7200 schedule.incrementalTraversalIntervalSecs=600 # # Default ACLs # defaultAcl.mode=fallback defaultAcl.public=true
通常會設定的參數
本節列出必要及選擇性的常用設定參數。如果您不 如要變更選擇性參數的值,連接器會使用預設值 SDK 提供的功能
資料來源存取權
下表列出了設定中需要顯示的所有參數 檔案。您使用的參數取決於您建立的連接器類型 (內容連接器) 或識別資訊連接器)。
| 設定 | 參數 | 
|---|---|
| 資料來源 ID | api.sourceId=1234567890abcdef連接器需要這個參數,才能識別 存放區的所在位置如果 在搜尋中加入資料來源。 此參數必須位於連接器設定檔中。 | 
| 識別資訊來源 ID | api.identitySourceId=0987654321lmnopq識別資訊連接器必須使用這個參數,才能識別 外部識別資訊來源的位置您在 在 Cloud Search 中對應使用者身分。 所有識別資訊連接器設定檔都必須含有這個參數。 | 
| 服務帳戶私密金鑰檔案 | api.serviceAccountPrivateKeyFile=./PrivateKey.json這個參數包含所需的私密金鑰 存取存放區您在 設定了 Google Cloud Search REST 的存取權 API。所有設定檔都必須包含這個參數。 | 
| 服務帳戶 ID | api.serviceAccountId=123abcdef4567890這個參數會指定服務帳戶 編號。只有在設定檔時才允許預設的空白字串值 會指定私密金鑰檔案參數。如果您的私密金鑰檔案,此為必要參數 並非 JSON 金鑰。 | 
| Google Workspace 帳戶 ID | api.customerId=123abcdef4567890這個參數可指定企業 Google Workspace 帳戶的帳戶 ID。您取得了 也就是用在對應使用者 以及在 Cloud Search 中的身分使用以下參數同步處理使用者時,必須提供這個參數 識別資訊連接器 | 
| 根網址 | api.rootUrl=baseURLPath這個參數會指定索引服務的基本網址路徑。  此參數的預設值是空字串,並會轉換為
        | 
週遊時間表
排程參數會決定連接器在 反向傳播
| 設定 | 參數 | 
|---|---|
| 連接器啟動時的完整週遊 | schedule.performTraversalOnStart=true|false 連接器會在連接器啟動時執行完整的周遊,
        等待第一次間隔過期預設值為  | 
| 間隔後完整週遊 | schedule.traversalIntervalSecs=intervalInSeconds 連接器會在指定的時間間隔後執行完整的周遊。請指定
        週遊之間的間隔時間,以秒為單位預設值為  | 
| 一週遍歷後結束 | connector.runOnce=true|false 連接器會執行一次完整的周遊,然後關閉。這個參數應該只會
        如果採用完整的周遊策略,請將值設為  | 
| 間隔後漸進式週遊 | schedule.incrementalTraversalIntervalSecs=intervalInSeconds 連接器會在指定的時間間隔後執行漸進式週遊。
        指定週遊的間隔秒數。預設值為
         | 
| 排定的輪詢佇列間隔 | schedule.pollQueueIntervalSecs=interval_in_seconds 排程輪詢佇列間隔 (以秒為單位) 之間的間隔。這會使用
        僅由列表週遊連接器傳回。預設值為  | 
存取控制清單 (ACL)
連接器會使用 ACL 控制項目的存取權。多個參數 可讓您透過 ACL 保護使用者存取已編入索引的記錄。
如果您的存放區有與每個項目相關聯的個別 ACL 資訊, 上傳所有 ACL 資訊,藉此控管 Cloud Search 中的項目存取權。如果 存放區僅提供部分或不包含 ACL 資訊,您可以提供預設值 包含下列參數中的 ACL 資訊,SDK 會將該參數提供給 。
| 設定 | 參數 | 
|---|---|
| ACL 模式 | defaultAcl.mode=mode決定套用預設 ACL 的時機。有效值: 
 預設模式為  | 
| 預設公開 ACL | defaultAcl.public=true|false 整個存放區的預設 ACL 為公開網域存取權。
        預設值為  | 
| 常用 ACL 群組讀取者 | defaultAcl.readers.groups=google:group1@mydomain.com,
       group2 | 
| 常用 ACL 讀取者 | defaultAcl.readers.users=user1, user2,
    google:user3@mydomain.com | 
| 常見的 ACL 拒絕群組讀取者 | defaultAcl.denied.groups=group3 | 
| 常見 Acl 拒絕的讀取者 | defaultAcl.denied.users=user4, user5 | 
| 整個網域存取權 | 如何指定每位使用者都能公開存取每筆已建立索引的記錄
      請用值設定以下兩個參數: 
 | 
| 常見的定義的 ACL | 如要為資料存放區的每筆記錄指定一個 ACL,請將
      下列參數值: 
 | 
中繼資料設定參數
部分項目中繼資料可以設定。連接器可以在 建立索引如果連接器未設定欄位,則會使用設定檔中的參數 設定欄位。
設定檔的
.field 後置字串,例如
itemMetadata.title.field=movieTitle。如果這些
參數,用於設定中繼資料欄位。如果沒有
中繼資料參數,則會使用帶有
  .defaultValue 後置字串)。
下表顯示中繼資料設定參數。
| 設定 | 參數 | 
| 標題 | itemMetadata.title.field=movieTitle敬上itemMetadata.title.defaultValue=敬上項目名稱。如果 title.field未設為值,
     已使用title.defaultValue。 | 
| 原始碼存放區網址 | itemMetadata.sourceRepositoryUrl.field=url敬上itemMetadata.sourceRepositoryUrl.defaultValue=https://www.imdb.com/title/tt0031381/敬上搜尋結果中使用的項目網址。您只需將 defaultValue設為
     整個存放區的網址,例如您的頁面是 CSV 檔案,但只有一個檔案
  每個項目的網址。如未設定sourceRepositoryUrl.field為值,則會使用sourceRepositoryUrl.defaultValue的值。 | 
| 容器名稱 | itemMetadata.containerName.field=containerName敬上itemMetadata.containerName.defaultValue=myDefaultContainerName敬上項目容器的名稱,例如檔案系統目錄或資料夾的名稱。如果 containerName.field未設為值。
     已使用containerName.defaultValue。 | 
| 物件類型 | itemMetadata.objectType.field=typeitemMetadata.objectType.defaultValue=敬上連接器所使用的物件類型,如 結構定義。 如未指定這項屬性,連接器就不會為任何結構化資料建立索引。 如果 objectType.field未設為值,
     使用的是objectType.defaultValue。 | 
| 建立時間 | itemMetadata.createTime.field=releaseDate敬上itemMetadata.createTime.defaultValue=1940-01-17敬上文件建立時間戳記。如果 createTime.field未設為值,createTime.defaultValue的值。 | 
| 更新時間 | itemMetadata.updateTime.field=releaseDate敬上itemMetadata.updateTime.defaultValue=1940-01-17敬上項目上次修改時間戳記。如果 updateTime.field未設為
     值,會使用updateTime.defaultValue的值。 | 
| 內容語言 | itemMetadata.contentLanguage.field=languageCode敬上itemMetadata.contentLanguage.defaultValue=敬上已建立索引文件的內容語言。如果 contentLanguage.field未設定值,就會使用contentLanguage.defaultValue的值。 | 
| MIME 類型 | itemMetadata.mimeType.field=mimeType敬上itemMetadata.mimeType.defaultValue=敬上來源存放區中 ItemContent.content 的原始 MIME 類型。長度上限是 256 個半形字元,如果 mimeType.field未設為值,
     已使用mimeType.defaultValue。 | 
| 搜尋品質中繼資料 | itemMetadata.searchQualityMetadata.quality.field=quality敬上itemMetadata.searchQualityMetadata.quality.defaultValue=敬上項目品質,用來影響搜尋品質。值應為 最低品質介於 0.0 到 1.0 之間 (最高畫質)。預設值為 0.0。如果 「 quality.field」未設為值。
     已使用quality.defaultValue。 | 
| 雜湊 | itemMetadata.hash.field=hash敬上itemMetadata.hash.defaultValue=f0fda58630310a6dd91a7d8f0a4ceda2敬上
     API 呼叫端提供的雜湊值。這可與 items.push方法,計算修改後的狀態。長度上限為 2048 個字元
     字元。如果hash.field未設為值,
     已使用hash.defaultValue。 | 
日期時間格式
日期時間格式會指定中繼資料屬性中預期的格式。如果設定檔 不含這個參數,系統會使用預設值。下表顯示此參數。
| 設定 | 參數 | 
| 其他日期時間格式 | structuredData.dateTimePatterns=MM/dd/uuuu HH:mm:ssXXX敬上以半形分號分隔的其他 java.time.format.DateTimeFormatter清單
      例如模式剖析任何日期或日期時間欄位的字串值時,系統會使用模式
      在中繼資料或結構定義中
使用相同標籤預設值為空白清單,但 RFC 3339 和 RFC 1123
      。 | 
結構化資料
您可以透過 Cloud Search Indexing API 提供的結構定義服務, 您可以自訂 Cloud Search 建立索引及提供資料的方式。如果您使用 本機存放區結構定義,您必須指定本機儲存的結構化資料 結構定義名稱
| 設定 | 參數 | 
|---|---|
| 本機結構定義名稱 | structuredData.localSchema=mySchemaName系統會從資料來源讀取結構定義名稱,並用於存放區 結構化資料, 預設值為空字串。 | 
內容和搜尋品質
適用於包含記錄或欄位型內容的存放區 (例如客戶關係管理系統、CVS、 或資料庫),SDK 允許自動為資料欄位設定 HTML 格式。您的 連接器會定義連接器執行一開始的資料欄位,以及 然後使用內容範本設定每筆資料記錄的格式,再將記錄傳送至 Cloud Search
 內容範本定義了每個欄位值進行搜尋的重要性。
  HTML <title>
  ] 欄位,並定義為最高優先順序。你可以
  為所有其他內容欄位指定搜尋品質的重要性等級:
  高、中或低特定類別中未定義的任何內容欄位
  並預設為低優先順序。
| 設定 | 參數 | 
|---|---|
| 內容 HTML 標題 | contentTemplate.templateName.title=myTitleField內容 HTML 標題和最高搜尋品質欄位。必須提供這個參數 只有在使用 HTML 內容範本時才會發生預設值為空白 字串。 | 
| 內容欄位適用的高搜尋品質 | contentTemplate.templateName.quality.high=hField1,hField2搜尋優先順序較高的內容欄位。預設值為空字串。 | 
| 內容欄位的搜尋品質中等 | contentTemplate.templateName.quality.medium=mField1,mField2指定為中度搜尋優先順序的內容欄位。預設值為空字串。 | 
| 內容欄位搜尋品質不佳 | contentTemplate.templateName.quality.low=lField1,lField2搜尋優先順序偏低的內容欄位。預設值為空字串。 | 
| 未指定的內容欄位 | contentTemplate.templateName.unmappedColumnsMode=value連接器如何處理未指定的內容欄位。有效的值包括: 
 | 
| 在 HTML 範本中加入欄位名稱 | contentTemplate.templateName.includeFieldName=true|false 指定 HTML 中是否要納入欄位名稱與欄位資料
        範本。預設值為  | 
不常見的設定參數
您很少需要設定這個部分中列出的參數。參數的預設值是 可達到最佳成效Google 不建議您將這些參數設為 設定與預設值不同的 Cloud Storage 也提供目錄同步處理功能
Proxy 配置
SDK 可讓您設定連接器,在連出連線中使用 Proxy。
transport.proxy.hostname 和 transport.proxy.port 參數為
  啟用通過 Proxy 傳輸所需的憑證可能還需要其他參數
  是否需要透過 SOCKS 通訊協定 (而非 HTTP) 進行驗證或運作。如果
    未設定 transport.proxy.hostname,SDK 不會使用 Proxy。
| 設定 | 參數 | 
|---|---|
| 主機名稱 | transport.proxy.hostname=hostnameProxy 伺服器的主機名稱。使用 Proxy 時,必須提供這個參數。 | 
| 通訊埠 | transport.proxy.port=portProxy 伺服器的通訊埠號碼。使用 Proxy 時,必須提供這個參數。 | 
| Proxy 類型 | transport.proxy.type=typeProxy 類型。有效的值包括: 
  預設值為  | 
| 使用者名稱 | transport.proxy.username=username建構 Proxy 授權權杖時使用的使用者名稱, 此參數為選用項目,建議只在您的 Proxy 需要驗證的情況下設定。 | 
| 密碼 | transport.proxy.password=password建構 Proxy 授權權杖時使用的密碼, 此參數為選用項目,建議只在您的 Proxy 需要驗證的情況下設定。 | 
週遊者
SDK 可讓您指定多個 資料存放區的平行週遊功能SDK 範本連接器會使用 而不是每個特徵的分數
| 設定 | 參數 | 
|---|---|
| 執行緒集區大小 | traverse.threadPoolSize=size連接器建立允許平行處理的執行緒數量。A 罩杯 單一疊代器依序擷取作業 (通常是 RepositoryDoc 物件), 但 API 會使用這個數量的執行緒數量,並行處理程序。  預設值為  | 
| 分區大小 | traverse.partitionSize=batchSize   預設值為  | 
路人投票要求
Cloud Search 索引佇列的核心是優先佇列,內含 每個已知項目的項目清單項目連接器可以要求意見調查 個索引 API 套用的項目意見調查要求會取得優先順序最高的項目 從索引佇列中移除
SDK 清單連接器範本會使用下列參數, 會定義輪詢參數
| 設定 | 參數 | 
|---|---|
| 存放區週遊 | repository.traversers=t1, t2, t3, ...建立一或多位個別週遊,包括 t1、t2、t3、
        ... 是每個欄位的專屬名稱。每個指定的周遊者都有各自的一組設定
        這些功能是以周遊者的獨特名稱識別,例如
        《 | 
| 接受輪詢的工作佇列 | traverser.pollRequest.queue=mySpecialQueue這項週遊輪詢的佇列名稱。預設值為空白字串 (即 「預設」)。 | 
| traverser.t1.pollRequest.queue=mySpecialQueue如果有多位週遊者,請為每位週遊者設定項目狀態 (其中 t1 代表特定週遊)。 | |
| 輪詢行為 | traverser.pollRequest.limit=maxItems 透過輪詢要求傳回的項目數量上限。
      預設值為  | 
| traverser.t1.pollRequest.limit=limit如果有多位週遊者,請為每位週遊者設定項目狀態 (其中 t1 代表特定週遊)。 | |
| 項目狀態 | traverser.pollRequest.statuses=statuses這項週遊輪詢的特定項目狀態,statuses 可以
        任何  | 
| traverser.t1.pollRequest.statuses=statusesForThisTraverser如果有多位週遊者,請為每位週遊者設定項目狀態 (其中 t1、 代表特定週遊程序)。 | |
| 主機負載 | traverser.hostload=threads 用於輪詢的有效平行執行緒數量上限。預設
        值為  | 
| traverser.t1.hostload=threadsForThisTraverser如果有多位週遊者,請為每位週遊者設定項目狀態 (其中 t1、 代表特定週遊程序)。 | |
| 逾時 | traverser.timeout=timeout中斷這項遍歷調查嘗試的逾時值。  預設值為  | 
| traverser.t1.timeout=timeoutForThisTraverser如果有多位週遊者,請為每位週遊者設定項目狀態 (其中 t1、 代表特定週遊程序)。 | |
| traverser.timeunit= timeoutUunit 逾時單位。有效值為  | |
| traverser.t1.timeunit= timeoutUnit如果有多位週遊者,請為每位週遊者設定項目狀態 (其中 t1、 代表特定週遊程序)。 | 
在大多數情況下,只有使用 SDK 清單連接器範本的連接器 需要一組一組參數才能輪詢。在某些情況下,您可能需要 定義多個輪詢條件 (適用於遍歷演算法要求) 例如使用不同的佇列區隔項目處理程序。
 在這種情況下,您可以選擇定義多組輪詢
  參數。首先,使用
  repository.traversers。針對每個已定義的遍歷名稱,提供
  換成上表中的參數,並將
  t1 為週遊名稱。此程序會建立一組輪詢
  參數。
檢查站
查核點很適合用來追蹤漸進式週遊的狀態。
| 設定 | 參數 | 
|---|---|
| 檢查點目錄 | connector.checkpointDirectory=/path/to/checkpoint指定用於漸進式和完整週遊檢查點的本機目錄路徑。 | 
上傳內容
在 內容大小未超過指定門檻。如果內容大小 超過門檻,內容會與作品的 中繼資料和結構化資料
| 設定 | 參數 | 
|---|---|
| 內容門檻 | api.contentUploadThresholdBytes=bytes決定上傳內容是否「內嵌」的門檻同時 而非單獨上傳物件  預設值為  | 
容器
完整連接器範本使用的演算法 暫時性資料來源佇列切換鈕,用於偵測資料庫中已刪除的記錄。 也就是說,每次完整週遊時,擷取到的記錄中 新佇列,替換所有已建立索引的現有 Cloud Search 記錄, 也就是舊佇列中的過去週遊。
| 設定 | 參數 | 
|---|---|
| 容器名稱標記 | traverse.queueTag=instance同時執行多個連接器執行個體,為共用資料建立索引 存放區 (無論是在不同資料存放區上,還是要區分共用資料的 資料存放庫) 而不用彼此幹擾,請指派不重複的容器 命名連接器。不重複的名稱標記可防止連接器 執行個體。 名稱標記會加到「Full Traversal Connector」切換佇列 ID。 | 
| 停用刪除偵測功能 | traverse.useQueues=true|false指出連接器是否使用佇列切換邏輯執行刪除偵測。  預設值為  注意:這個設定參數僅適用於連接器
        實作  | 
批次政策
SDK 支援批次政策,可讓您執行下列操作: 動作:
- 批次處理要求
- 指定批次佇列中的要求數量
- 管理並行執行的批次作業
- 清除批次要求
SDK 會在期間批次傳送連接器的要求,以加快處理量 上傳。上傳一批請求的 SDK 觸發條件是 或逾時 (以先發生者為準)。舉例來說, 超過批量,或者 項目在延遲到期前達到的批量項目, 就會觸發批次上傳
| 設定 | 參數 | 
|---|---|
| 批次處理要求 | batch.batchSize批次處理要求。預設值為  | 
| 批次佇列中的要求數量 | batch.maxQueueLength=maxQueueLength 批次佇列中要執行的要求數量上限。
      預設值為  | 
| 同時執行批次作業 | batch.maxActiveBatches=maxActiveBatches 可並行執行的批次作業數量。
      預設值為  | 
| 自動清除批次要求 | batch.maxBatchDelaySeconds=maxBatchDelay 批次要求完成前的等待秒數
        因此會自動修正
        預設值為  | 
| 關機時清除批次要求 | batch.flushOnShutdown=true|false 在服務關閉期間清除批次要求。
      預設值為  | 
例外狀況處理常式
例外狀況處理常式參數會決定週遊程序在事後繼續進行的方式 就會發生例外狀況
| 設定 | 參數 | 
|---|---|
| 發生錯誤時提供的走路者指示 | traverse.exceptionHandler=exceptions擲回例外狀況後,週遊程序應如何進行。有效值 是: 
 | 
| 例外狀況之間的等待時間 | abortExceptionHander.backoffMilliSeconds=backoff 在偵測到的處理常式例外狀況之間等待的輪詢時間 (以毫秒為單位)
        (通常用於掃遍存放區)。預設值為  |