Amazon RDS/Aurora - Amazon Kendra

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon RDS/Aurora

데이터베이스 데이터 소스를 사용하여 데이터베이스에 저장된 문서를 인덱싱할 수 있습니다. 데이터베이스의 연결 정보를 제공한 후 문서를 Amazon Kendra 연결하고 색인을 생성합니다.

Amazon Kendra 지원되는 데이터베이스는 다음과 같습니다.

  • Amazon Aurora MySQL

  • Amazon Aurora PostgreSQL

  • Amazon RDS MySQL용

  • Amazon RDS PostgreSQL의 경우

참고

Serverless Aurora 데이터베이스는 지원되지 않습니다.

중요

이 Amazon RDS/Aurora 커넥터는 2023년 말 사용이 중단될 예정입니다.

Amazon Kendra 이제 새 데이터베이스 데이터 소스 커넥터를 지원합니다. 사용 환경을 개선하려면 사용 사례에 맞게 다음과 같은 새 커넥터를 선택하는 것이 좋습니다.

Amazon Kendra 콘솔과 API를 Amazon Kendra 사용하여 데이터베이스 데이터 소스에 연결할 수 있습니다. DatabaseConfiguration

Amazon Kendra 데이터베이스 데이터 원본 커넥터 문제 해결은 을 참조하십시오데이터 소스 문제 해결.

지원되는 기능

Amazon Kendra 데이터베이스 데이터 원본 커넥터는 다음 기능을 지원합니다.

  • 필드 매핑

  • 사용자 컨텍스트 필터링

  • Virtual Private Cloud(VPC)

필수 조건

데이터베이스 데이터 원본을 Amazon Kendra 인덱싱하는 데 사용하려면 먼저 데이터베이스와 AWS 계정에서 다음과 같이 변경하십시오.

데이터베이스에서 다음을 확인하세요.

  • 데이터베이스 사용자 이름과 암호의 기본 보안 인증 정보를 기록했습니다.

  • 호스트 이름, 포트 번호, 호스트 주소, 데이터베이스 이름, 문서 데이터가 포함된 데이터 테이블 이름을 복사했습니다. PostgreSQL의 경우 데이터 테이블은 공개 테이블 또는 공용 스키마여야 합니다.

    참고

    호스트와 포트는 인터넷에서 데이터베이스 서버를 찾을 수 Amazon Kendra 있는 위치를 알려줍니다. 데이터베이스 이름과 테이블 이름은 데이터베이스 서버에서 문서 데이터를 찾을 수 Amazon Kendra 있는 위치를 알려줍니다.

  • 문서 데이터가 포함된 데이터 테이블의 열 이름을 복사했습니다. 문서 ID, 문서 본문, 문서 변경 여부를 감지할 열(예: 마지막으로 업데이트한 열), 사용자 지정 인덱스 필드에 매핑되는 선택적 데이터 테이블 열을 포함해야 합니다. Amazon Kendra 예약된 필드 이름을 테이블 열에 매핑할 수도 있습니다.

  • 데이터베이스 엔진 유형 정보 (예: MySQL 또는 다른 유형에 사용하는지 여부) Amazon RDS 를 복사했습니다.

  • 데이터베이스 및 동일한 인덱스에 사용할 다른 여러 데이터 소스에서 각 문서가 고유한지 확인했습니다. 인덱스에 사용하려는 각 데이터 소스에는 데이터 소스 전체에서 동일한 문서가 포함되어서는 안 됩니다. 문서 ID는 인덱스 전체에 적용되며 인덱스별로 고유해야 합니다.

에 다음이 있는지 확인하십시오. AWS 계정

  • Amazon Kendra 색인을 만들고 API를 사용하는 경우 색인 ID를 기록해 두었습니다.

  • 데이터 소스에 대한 IAM 역할을 만들고 API를 사용하는 경우 역할의 IAM ARN을 기록했습니다.

    참고

    인증 유형 및 자격 증명을 변경하는 경우 올바른 AWS Secrets Manager 비밀 ID에 액세스하려면 IAM 역할을 업데이트해야 합니다.

  • 데이터베이스 보안 인증 정보를 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 연결하려면

  1. 에 AWS Management Console 로그인하고 Amazon Kendra 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 인덱스를 선택한 다음 인덱스 목록에서 사용할 인덱스를 선택합니다.

    참고

    인덱스 설정에서 사용자 액세스 제어 설정을 구성하거나 편집할 수 있습니다.

  3. 시작하기 페이지에서 데이터 소스 추가를 선택합니다.

  4. 데이터 원본 추가 페이지에서 데이터베이스 커넥터를 선택한 다음 커넥터 추가를 선택합니다. 버전 2 (해당하는 경우) 를 사용하는 경우 “V2.0" 태그가 있는 데이터베이스 커넥터를 선택하십시오.

  5. 데이터 소스 세부 정보 지정 페이지에서 다음 정보를 입력합니다.

    1. 이름 및 설명에서 데이터 소스 이름에 데이터 소스의 이름을 입력합니다. 하이픈은 포함할 수 있지만 공백은 포함할 수 없습니다.

    2. (선택 사항) 설명 - 데이터 소스에 대한 선택적 설명을 입력합니다.

    3. 기본 언어 - 문서를 필터링하여 색인에 사용할 언어를 선택합니다. 달리 지정하지 않는 한, 언어는 영어로 기본 설정됩니다. 문서 메타데이터에 지정된 언어가 선택한 언어보다 우선합니다.

    4. 태그의 새 태그 추가 - 리소스를 검색 및 필터링하거나 비용을 추적할 수 있는 선택적 태그를 포함합니다. AWS

    5. 다음을 선택합니다.

  6. 액세스 및 보안 정의 페이지에서 다음 정보를 입력합니다.

    1. 엔드포인트 - DNS 호스트 이름, IPv4 주소 또는 IPv6 주소.

    2. 포트 - 포트 번호.

    3. 데이터베이스 - 데이터베이스 이름.

    4. 테이블 이름 - 테이블 이름.

    5. 인증 유형에서 기존 인증과 신규 인증 정보 중 하나를 선택하여 데이터베이스 보안 인증 정보를 저장합니다. 새 암호를 만들기로 선택하면 AWS Secrets Manager 보안 암호 창이 열립니다.

      1. AWS Secrets Manager 보안 암호 생성 창에 다음 정보를 입력합니다.

        1. 보안 암호 이름 - 보안 암호의 이름. 비밀 이름에는 접두사 AmazonKendra '-database-'가 자동으로 추가됩니다.

        2. 데이터베이스 사용자 이름암호의 경우 - 데이터베이스 계정의 보안 인증 값을 입력합니다.

        3. 인증 저장을 선택합니다.

    6. Virtual Private Cloud(VPC) - VPC를 사용하기로 선택할 수 있습니다. 그렇다면 서브넷VPC 보안 그룹을 추가해야 합니다.

      참고

      프라이빗 서브넷을 사용해야 합니다. RDS 인스턴스가 VPC의 퍼블릭 서브넷에 있는 경우, 퍼블릭 서브넷의 NAT 게이트웨이에 대한 아웃바운드 액세스 권한이 있는 프라이빗 서브넷을 생성할 수 있습니다. VPC 구성에 제공되는 서브넷은 미국 서부(오레곤), 미국 동부(버니지아), EU(아일랜드)에 있어야 합니다.

    7. IAM 역할 - 기존 역할을 선택하거나 새 IAM 역할을 생성하여 리포지토리 자격 증명에 액세스하고 IAM 콘텐츠를 인덱싱합니다.

      참고

      IAM 색인에 사용되는 역할은 데이터 원본에 사용할 수 없습니다. 기존 역할을 인덱스나 FAQ에 사용하는지 확실하지 않은 경우 새 역할 생성을 선택하여 오류를 방지하세요.

    8. 다음을 선택합니다.

  7. 동기화 설정 구성 페이지에 다음 정보를 입력합니다.

    1. 사용 사례에 따라 Aurora MySQL, MySQL, Aurora PostgreSQL, PostgreSQL 중에서 선택합니다.

    2. SQL 식별자를 큰따옴표로 묶기 - SQL 식별자를 큰따옴표로 묶으려면 이 옵션을 선택합니다. 예: “columnName”

    3. ACL 열변경 감지 열 - 변경 감지에 사용할 열 (예: 마지막 업데이트 열) 과 액세스 제어 목록을 구성합니다. Amazon Kendra

    4. 동기화 실행 일정에서 빈도에 대해 —데이터 원본과 Amazon Kendra 동기화할 빈도를 선택합니다.

    5. 다음을 선택합니다.

  8. 필드 매핑 설정 페이지에 다음 정보를 입력합니다.

    1. Amazon Kendra 기본 필드 매핑 - Amazon Kendra 생성된 기본 데이터 원본 필드 중에서 색인에 매핑하려는 필드를 선택합니다. document_iddocument_body에 대한 데이터베이스 열 값을 추가해야 합니다.

    2. 사용자 지정 필드 매핑 - 사용자 지정 데이터 소스 필드를 추가하려면 매핑할 인덱스 필드 이름과 필드 데이터 유형을 만듭니다.

    3. 다음을 선택합니다.

  9. 검토 및 생성 페이지에서 입력한 정보가 정확한지 확인한 다음 데이터 소스 추가를 선택합니다. 이 페이지에서 정보를 편집하도록 선택할 수도 있습니다. 데이터 소스가 성공적으로 추가된 후 데이터 소스 페이지에 데이터 소스가 표시됩니다.

API

데이터베이스에 Amazon Kendra 연결하려면

DatabaseConfigurationAPI를 다음과 같이 지정해야 합니다.

  • 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 필드는 데이터베이스의 Amazon Relational Database Service (Amazon RDS) 인스턴스 ConnectionConfiguration 엔드포인트여야 합니다. 클러스터 엔드포인트를 사용하지 마세요.

  • 비밀 Amazon 리소스 이름 (ARN) - 데이터베이스 계정의 인증 자격 증명이 포함된 Secrets Manager 암호의 Amazon 리소스 이름 (ARN) 을 제공합니다. 보안 암호에는 다음 키가 있는 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 역할 — 역할에 Secrets Manager 보안 액세스 권한을 제공하고 데이터베이스 IAM 커넥터 및 에 필요한 퍼블릭 API를 호출하기 위해 호출할 RoleArn 시기를 지정합니다. CreateDataSource Amazon Kendra자세한 내용은 데이터베이스 데이터 소스에 대한IAM 역할을 참조하세요.

다음 선택적 기능도 추가할 수 있습니다.

  • Virtual Private Cloud(VPC) - 데이터 소스 구성의 일부로 VpcConfiguration를 지정합니다. VPC 사용을 위한 Amazon Kendra 구성을 참조하세요.

    참고

    프라이빗 서브넷만 사용해야 합니다. RDS 인스턴스가 VPC의 퍼블릭 서브넷에 있는 경우, 퍼블릭 서브넷의 NAT 게이트웨이에 대한 아웃바운드 액세스 권한이 있는 프라이빗 서브넷을 생성할 수 있습니다. VPC 구성에 제공되는 서브넷은 미국 서부(오레곤), 미국 동부(버니지아), EU(아일랜드)에 있어야 합니다.

  • 필드 매핑 - 데이터베이스 데이터 소스 필드를 Amazon Kendra 인덱스 필드에 매핑하기로 선택합니다. 자세한 내용을 알아보려면 데이터 소스 필드 매핑을 참조하세요.

    참고

    문서를 Amazon Kendra 검색하려면 문서에 해당하는 문서 본문 필드 또는 문서 본문 필드가 필요합니다. 데이터 원본의 문서 본문 필드 이름을 색인 필드 이름에 매핑해야 _document_body 합니다. 다른 모든 필드는 선택 사항입니다.

  • 사용자 컨텍스트 필터링 및 액세스 제어 — 문서에 대한Amazon Kendra ACL이 있는 경우 문서에 대한 액세스 제어 목록 (ACL) 을 크롤링합니다. ACL 정보는 검색 결과를 문서에 대한 사용자 또는 그룹의 액세스 권한을 기준으로 필터링하는 데 사용됩니다. 자세한 내용은 사용자 컨텍스트 필터링을 참조하세요.