本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon RDS/Aurora
您可以使用資料庫資料來源為存放在資料庫中的文件編製索引。在您提供資料庫的連線資訊之後, 會 Amazon Kendra 連接文件並編製索引。
Amazon Kendra 支援下列資料庫:
不支援 Serverless Aurora 資料庫。
此 Amazon RDS/Aurora 連接器已排定在 2023 年底前取代。
Amazon Kendra 現在支援新的資料庫資料來源連接器。為了改善體驗,建議您針對使用案例選擇下列新連接器:
您可以使用 Amazon Kendra 主控台和 DatabaseConfiguration API Amazon Kendra 連線到資料庫資料來源。
如需對 Amazon Kendra 資料庫資料來源連接器進行故障診斷,請參閱對資料來源進行故障診斷。
支援的功能
Amazon Kendra 資料庫資料來源連接器支援下列功能:
-
欄位映射
-
使用者內容篩選
-
虛擬私有雲端 (VPC)
先決條件
在您可以使用 Amazon Kendra 為資料庫資料來源編製索引之前,請在資料庫和 AWS 帳戶中進行這些變更。
在您的資料庫中,請確定您擁有:
-
記下資料庫使用者名稱和密碼的基本身分驗證憑證。
-
已複製主機名稱、連接埠號碼、主機地址、資料庫名稱,以及包含文件資料的資料表名稱。對於 PostgreSQL,資料表必須是公有資料表或公有結構描述。
主機和連接埠會告知在網際網路上尋找資料庫伺服器 Amazon Kendra 的位置。資料庫名稱和資料表名稱會告知在資料庫伺服器上尋找文件資料 Amazon Kendra 的位置。
-
複製包含文件資料之資料表中的資料欄名稱。您必須包含文件 ID、文件內文、要偵測文件是否已變更的資料欄 (例如,上次更新的資料欄),以及對應至自訂索引欄位的選用資料表資料欄。您也可以將任何Amazon Kendra 預留欄位名稱映射到資料表資料欄。
-
已複製資料庫引擎類型資訊,例如您使用 Amazon RDS 做為 MySQL 或其他類型。
-
已檢查每個文件在資料庫中和您計劃用於相同索引的其他資料來源中都是唯一的。您想要用於索引的每個資料來源,在資料來源中不得包含相同的文件。文件 IDs是索引的全域 ID,且每個索引必須是唯一的。
在您的 中 AWS 帳戶,請確定您有:
-
建立 Amazon Kendra 索引,如果使用 API, 會記下索引 ID。
-
為您的資料來源建立 IAM 角色,如果使用 API, 會記下 IAM 角色的 ARN。
如果您變更身分驗證類型和登入資料,則必須更新您的 IAM 角色以存取正確的 AWS Secrets Manager 秘密 ID。
-
將您的資料庫身分驗證憑證存放在 AWS Secrets Manager 秘密中,如果使用 API, 會記下秘密的 ARN。
我們建議您定期重新整理或輪換您的登入資料和秘密。僅提供必要的存取層級,以維護您自己的安全。我們不建議您在資料來源和連接器 1.0 和 2.0 版 (如適用) 之間重複使用登入資料和秘密。
如果您沒有現有的 IAM 角色或秘密,則可以使用 主控台,在將資料庫資料來源連線到 時建立新的 IAM 角色和 Secrets Manager 秘密 Amazon Kendra。如果您使用 API,則必須提供現有 IAM 角色和 Secrets Manager 秘密的 ARN,以及索引 ID。
連線指示
若要 Amazon Kendra 連線至資料庫資料來源,您必須提供資料庫資料來源的必要詳細資訊,以便 Amazon Kendra 可以存取您的資料。如果您尚未設定 資料庫 Amazon Kendra,請參閱 先決條件。
- Console
-
Amazon Kendra 連線至資料庫
-
登入 AWS Management Console 並開啟 Amazon Kendra 主控台。
-
從左側導覽窗格中,選擇索引,然後從索引清單中選擇您要使用的索引。
您可以選擇在索引設定下設定或編輯使用者存取控制設定。
-
在入門頁面上,選擇新增資料來源。
-
在新增資料來源頁面上,選擇資料庫連接器,然後選擇新增連接器。如果使用第 2 版 (如適用),請選擇具有「V2.0」標籤的資料庫連接器。
-
在指定資料來源詳細資訊頁面上,輸入下列資訊:
-
在名稱和描述中,針對資料來源名稱—輸入資料來源的名稱。您可以包含連字號,但不能包含空格。
-
(選用) 描述 — 輸入資料來源的選用描述。
-
在預設語言 - 選擇語言來篩選索引的文件。除非您另有指定,否則語言預設為英文。文件中繼資料中指定的語言會覆寫選取的語言。
-
在標籤中,針對新增標籤 - 包含選用標籤,以搜尋和篩選您的資源或追蹤您的 AWS 成本。
-
選擇 Next (下一步)。
-
在定義存取和安全頁面上,輸入下列資訊:
-
Endpoint:DNS 主機名稱、IPv4 地址或 IPv6 地址。
-
Port:連接埠號碼。
-
資料庫 - 資料庫名稱。
-
資料表名稱 - 資料表名稱。
-
針對身分驗證類型,選擇現有和新增以存放資料庫身分驗證憑證。如果您選擇建立新的秘密,則會 AWS 開啟 Secrets Manager 秘密視窗。
-
在建立 AWS Secrets Manager 秘密視窗中輸入以下資訊:
-
秘密名稱 — 秘密的名稱。字首「AmazonKendra-database-」會自動新增至您的秘密名稱。
-
針對使用者名稱和密碼 - 輸入資料庫帳戶的身分驗證憑證值。
-
選擇儲存身分驗證。
-
Virtual Private Cloud (VPC):您可以選擇使用 VPC。如果是這樣,您必須新增子網路和 VPC 安全群組。
您必須使用私有子網路。如果您的 RDS 執行個體位於 VPC 中的公有子網路中,您可以建立私有子網路,該子網路具有公有子網路中 NAT 閘道的傳出存取權。VPC 組態中提供的子網路必須位於美國西部 (奧勒岡)、美國東部 (維吉尼亞北部)、歐洲 (愛爾蘭)。
-
IAM role—選擇現有 IAM 角色或建立新的 IAM 角色,以存取您的儲存庫登入資料和索引內容。
IAM 用於索引的 角色無法用於資料來源。如果您不確定現有角色是否用於索引或常見問答集,請選擇建立新角色以避免錯誤。
-
選擇 Next (下一步)。
-
在設定同步設定頁面上,輸入下列資訊:
-
根據您的使用案例,在 Aurora MySQL、MySQL、Aurora PostgreSQL 和 PostgreSQL 之間選取。
-
使用雙引號括住 SQL 識別符 - 選取以雙引號括住 SQL 識別符。例如,「columnName」。
-
ACL 資料欄和變更偵測資料欄—設定 Amazon Kendra 用於變更偵測的資料欄 (例如,上次更新的資料欄) 和存取控制清單。
-
在同步執行排程中,針對頻率 - 選擇與您的資料來源 Amazon Kendra 同步的頻率。
-
選擇 Next (下一步)。
-
在設定欄位映射頁面上,輸入下列資訊:
-
Amazon Kendra 預設欄位映射 - 從您要映射到索引 Amazon Kendra 的預設資料來源欄位中選取 。您必須新增 document_id
和 的資料庫欄值 document_body
-
自訂欄位映射 - 新增自訂資料來源欄位,以建立要映射的索引欄位名稱和欄位資料類型。
-
選擇 Next (下一步)。
-
在檢閱和建立頁面上,檢查您輸入的資訊是否正確,然後選取新增資料來源。您也可以選擇從此頁面編輯您的資訊。成功新增資料來源後,您的資料來源會出現在資料來源頁面上。
- API
-
Amazon Kendra 連線至資料庫
您必須指定下列 DatabaseConfiguration API:
-
ColumnConfiguration - 索引應從資料庫取得文件資訊的相關資訊。如需詳細資訊,請參閱 ColumnConfiguration。您必須指定 DocumentDataColumnName
(文件內文或主文) 和 DocumentIdColumnName
,以及 ChangeDetectingColumn
(例如,上次更新的資料欄) 欄位。對應至 DocumentIdColumnName
欄位的資料欄必須是整數資料欄。下列範例顯示資料庫資料來源的簡易資料欄組態:
"ColumnConfiguration": {
"ChangeDetectingColumns": [
"LastUpdateDate",
"LastUpdateTime"
],
"DocumentDataColumnName": "TextColumn",
"DocumentIdColumnName": "IdentifierColumn",
"DocoumentTitleColumnName": "TitleColumn",
"FieldMappings": [
{
"DataSourceFieldName": "AbstractColumn",
"IndexFieldName": "Abstract"
}
]
}
-
ConnectionConfiguration - 連線到資料庫所需的組態資訊。如需詳細資訊,請參閱 ConnectionConfiguration。
-
DatabaseEngineType - 執行資料庫的資料庫引擎類型。的 DatabaseHost
欄位ConnectionConfiguration
必須是資料庫的 Amazon Relational Database Service (Amazon RDS) 執行個體端點。請勿使用叢集端點。
-
機密 Amazon Resource Name (ARN) — 提供機密的 Amazon Resource Name (ARN) Secrets Manager ,其中包含資料庫帳戶的身分驗證憑證。秘密會以下列金鑰存放在 JSON 結構中:
{
"username": "user name"
,
"password": "password"
}
下列範例顯示資料庫組態,包括秘密 ARN。
"DatabaseConfiguration": {
"ConnectionConfiguration": {
"DatabaseHost": "host.subdomain.domain.tld",
"DatabaseName": "DocumentDatabase",
"DatabasePort": 3306,
"SecretArn": "arn:aws:secretmanager:region:account ID:secret/secret name",
"TableName": "DocumentTable"
}
}
我們建議您定期重新整理或輪換您的登入資料和秘密。僅為您自己的安全提供必要的存取層級。我們不建議您重複使用跨資料來源和連接器 1.0 和 2.0 版 (如適用) 的登入資料和秘密。
-
IAM role—指定RoleArn
您何時呼叫 CreateDataSource
以提供 IAM 角色存取 Secrets Manager 秘密的許可,以及呼叫資料庫連接器所需的公有 APIs 和 Amazon Kendra。如需詳細資訊,請參閱IAM 資料庫資料來源的角色。
您也可以新增下列選用功能:
-
Virtual Private Cloud (VPC) — 指定 VpcConfiguration
做為資料來源組態的一部分。請參閱設定 Amazon Kendra 以使用 VPC。
您必須僅使用私有子網路。如果您的 RDS 執行個體位於 VPC 中的公有子網路中,您可以建立私有子網路,該子網路具有公有子網路中 NAT 閘道的傳出存取權。VPC 組態中提供的子網路必須位於美國西部 (奧勒岡)、美國東部 (維吉尼亞北部)、歐洲 (愛爾蘭)。
-
欄位映射 - 選擇將資料庫資料來源欄位映射至您的 Amazon Kendra 索引欄位。如需詳細資訊,請參閱映射資料來源欄位。
文件的內文欄位或文件內文等同項目為必要欄位, Amazon Kendra 才能搜尋您的文件。您必須將資料來源中的文件內文欄位名稱映射至索引欄位名稱 _document_body
。所有其他欄位是選用的。
-
使用者內容篩選和存取控制 —Amazon Kendra 如果您擁有文件的 ACL, 會為您的文件編目存取控制清單 (ACL)。ACL 資訊用於根據使用者或其群組對文件的存取來篩選搜尋結果。如需詳細資訊,請參閱使用者內容篩選。