本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon RDS/Aurora
您可以使用資料庫資料來源為存放在資料庫中的文件編製索引。在您提供資料庫的連線資訊之後, 會Amazon Kendra連接和索引文件。
Amazon Kendra支援下列資料庫:
-
Amazon Aurora MySQL
-
Amazon Aurora PostgreSQL
-
Amazon RDSfor MySQL
-
Amazon RDSfor PostgreSQL
不支援 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 管理主控台並開啟 Amazon Kendra主控台。
-
從左側導覽窗格中,選擇索引,然後從索引清單中選擇您要使用的索引。
您可以選擇在索引設定下設定或編輯使用者存取控制設定。
-
在入門頁面上,選擇新增資料來源。
-
在新增資料來源頁面上,選擇資料庫連接器,然後選擇新增連接器。如果使用第 2 版 (如適用),請選擇具有「V2.0」標籤的資料庫連接器。
-
在指定資料來源詳細資訊頁面上,輸入下列資訊:
-
在名稱和描述中,針對資料來源名稱 - 輸入資料來源的名稱。您可以包含連字號,但不能包含空格。
-
(選用) 描述 — 輸入資料來源的選用描述。
-
在預設語言 - 選擇語言來篩選索引的文件。除非您另有指定,否則語言預設為英文。文件中繼資料中指定的語言會覆寫選取的語言。
-
在標籤中,針對新增標籤 - 包含選用標籤,以搜尋和篩選您的資源或追蹤您的AWS成本。
-
選擇下一步。
-
在定義存取和安全性頁面上,輸入下列資訊:
-
端點 - DNS 主機名稱、IPv4 地址或 IPv6 地址。
-
連接埠 - 連接埠號碼。
-
資料庫 - 資料庫名稱。
-
資料表名稱 - 資料表名稱。
-
針對身分驗證類型,選擇現有和新增以存放資料庫身分驗證憑證。如果您選擇建立新的秘密,則會AWS開啟Secrets Manager秘密視窗。
-
在建立AWSSecrets Manager秘密視窗中輸入下列資訊:
-
機密名稱 - 輸入您的機密名稱。字首「AmazonKendra-database-」會自動新增至您的秘密名稱。
-
針對使用者名稱和密碼 - 輸入資料庫帳戶的身分驗證憑證值。
-
選擇儲存身分驗證。
-
Virtual Private Cloud (VPC) — 您可以選擇使用 VPC。若是如此,您必須新增子網路和 VPC 安全群組。
您必須使用私有子網路。如果您的 RDS 執行個體位於 VPC 的公有子網路中,您可以建立具有公有子網路中 NAT 閘道傳出存取權的私有子網路。VPC 組態中提供的子網路必須位於美國西部 (奧勒岡)、美國東部 (維吉尼亞北部)、歐洲 (愛爾蘭)。
-
IAMrole - 選擇現有IAM角色或建立新的IAM角色,以存取您的儲存庫登入資料和索引內容。
IAM用於索引的 角色無法用於資料來源。如果您不確定現有角色是否用於索引或常見問答集,請選擇建立新角色以避免錯誤。
-
選擇下一步。
-
在設定同步設定頁面上,輸入下列資訊:
-
根據您的使用案例,在 Aurora MySQL、MySQL、Aurora PostgreSQL 和 PostgreSQL 之間選取。
-
使用雙引號括住 SQL 識別符 - 選取以雙引號括住 SQL 識別符。例如,「columnName」。
-
ACL 資料欄和變更偵測資料欄—設定Amazon Kendra用於變更偵測的資料欄 (例如,上次更新的資料欄) 和存取控制清單。
-
在同步執行排程中,針對頻率 - 選擇與您的資料來源Amazon Kendra同步的頻率。
-
選擇下一步。
-
在設定欄位映射頁面上,輸入下列資訊:
-
Amazon Kendra預設欄位映射 - 從您要映射到索引的Amazon Kendra產生預設資料來源欄位中選取 。您必須新增 document_id和 的資料庫欄值 document_body
-
自訂欄位映射 - 新增自訂資料來源欄位,以建立要映射的索引欄位名稱和欄位資料類型。
-
選擇下一步。
-
在檢閱和建立頁面上,檢查您輸入的資訊是否正確,然後選取新增資料來源。您也可以選擇從此頁面編輯您的資訊。成功新增資料來源後,您的資料來源將顯示在資料來源頁面上。
- 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) 執行個體端點。請勿使用叢集端點。
-
Secret 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 (如適用) 之間重複使用登入資料和秘密。
-
IAMrole—指定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 資訊用於根據使用者或其群組對文件的存取來篩選搜尋結果。如需詳細資訊,請參閱使用者內容篩選。