Amazon S3 - Amazon Kendra

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon S3

Amazon S3 は、データをオブジェクトとしてバケット内に保存するオブジェクトストレージサービスです。を使用して Amazon Kendra 、ドキュメントの Amazon S3 バケットリポジトリのインデックスを作成できます。

警告

Amazon Kendra は、プリン Amazon Kendra シパルに S3 バケットを操作するアクセス許可を付与するバケットポリシーを使用しません。代わりに、 IAM ロールを使用します。がバケットポリシーに信頼 Amazon Kendra されたメンバーとして含まれていないことを確認してください。これにより、任意のプリンシパルに誤ってアクセス許可を付与する際のデータセキュリティの問題を回避できます。ただしバケットポリシーを追加すれば、異なるアカウント間で Amazon S3 バケットを使用できます。詳細については、「Amazon S3 アカウントで使用するポリシー」(S3 IAM ロールタブの [データソースのIAM ロール]) を参照してください。S3 データソースの IAM ロールの詳細については、「 IAM ロール」を参照してください。

注記

Amazon Kendra がアップグレードされた Amazon S3 コネクタをサポートするようになりました。

コンソールが自動的にアップグレードされました。コンソールで作成した新しいコネクタは、アップグレードされたアーキテクチャを使用します。API を使用する場合は、 TemplateConfiguration オブジェクトではなく S3DataSourceConfiguration オブジェクトを使用してコネクタを設定する必要があります。

古いコンソールと API アーキテクチャを使用して設定されたコネクタは、引き続き設定どおりに機能します。ただし、編集または更新することはできません。コネクタ設定を編集または更新する場合は、新しいコネクタを作成する必要があります。

コネクタワークフローをアップグレードされたバージョンに移行することをお勧めします。古いアーキテクチャを使用して設定されたコネクタのサポートは、2024 年 6 月までに終了する予定です。

Amazon Kendra コンソールまたは TemplateConfiguration API を使用して Amazon S3 データソースに接続できます。

注記

データソースの同期ステータスレポートを生成するには、 Amazon S3 「データソースのトラブルシューティング」を参照してください。

Amazon Kendra S3 データソースコネクタのトラブルシューティングについては、「」を参照してくださいデータソースのトラブルシューティング

サポートされている機能

  • フィールドマッピング

  • ユーザーアクセスコントロール

  • 包含/除外フィルター

  • 完全および増分コンテンツ同期

  • 仮想プライベートクラウド (VPC)

前提条件

Amazon Kendra を使用して S3 データソースのインデックスを作成する前に、S3 および AWS アカウントでこれらの変更を行います。

S3 で、次のものが揃っていることを確認してください。

  • Amazon S3 バケットの名前をコピーしました。

    注記

    バケットは Amazon Kendra インデックスと同じリージョンに存在し、インデックスにはドキュメントを含むバケットへのアクセス許可が必要です。

  • 各ドキュメントが S3 および同じインデックスに使用する予定の他のデータソース間で一意であることが確認されていること。インデックスに使用する各データソースには、データソース全体に同じドキュメントが含まれていない必要があります。ドキュメント ID はインデックス全体に適用され、インデックスごとに一意である必要があります。

AWS アカウントで、以下があることを確認します。

既存の IAM ロールがない場合は、S3 データソースを に接続するときに、コンソールを使用して新しい IAM ロールを作成できます Amazon Kendra。API を使用している場合は、既存の IAM ロールの ARN とインデックス ID を指定する必要があります。

接続手順

S3 データソース Amazon Kendra に接続するには、 がデータ Amazon Kendra にアクセスできるように S3 データソースの必要な詳細を指定する必要があります。に S3 をまだ設定していない場合は Amazon Kendra、「」を参照してください前提条件

Console

Amazon Kendra に接続するには Amazon S3

  1. にサインイン AWS Management Console し、Amazon Kendra コンソール を開きます。

  2. 左側のナビゲーションペインで、[インデックス] を選択し、インデックスのリストから使用するインデックスを選択します。

    注記

    [インデックスの設定] で、[ユーザーアクセスコントロール] 設定を設定または編集できます。

  3. [使用開始] ページで、[データソースを追加] を選択します。

  4. データソースの追加ページで、S3 コネクタ を選択し、コネクタの追加 を選択します。バージョン 2 (該当する場合) を使用している場合は、「V2.0」タグが付いた S3 コネクタを選択します。

  5. [データソースの詳細を指定] ページで、次の情報を入力します。

    1. [名前と説明][データソース名] に、データソースの名前を入力します。ハイフン (-) は使用できますが、スペースは使用できません。

    2. (オプション) [説明] - オプションで、データソースの説明を入力します。

    3. デフォルト言語 - ドキュメントをフィルタリングしてインデックスを作成する言語を選択します。特に指定しない限り、言語はデフォルトで英語に設定されます。ドキュメントのメタデータで指定された言語は、選択した言語よりも優先されます。

    4. タグ で、新しいタグを追加 — リソースを検索およびフィルタリングしたり、 AWS コストを追跡したりするためのオプションのタグを含めます。

    5. [次へ] をクリックします。

  6. [アクセスとセキュリティの定義] ページで、次のオプション情報を入力します。

    1. IAM ロール — 既存の IAM ロールを選択するか、新しい IAM ロールを作成してリポジトリ認証情報にアクセスし、コンテンツにインデックスを作成します。

      注記

      IAM インデックスに使用される ロールは、データソースには使用できません。インデックスやよくある質問に既存のロールが使用されているかどうかが不明な場合は、エラーを避けるため、[新しいロールを作成] を選択してください。

    2. [仮想プライベートクラウド (VPC)] - VPC の使用を選択できます。選択する場合は、[サブネット][VPC セキュリティグループ] を追加する必要があります。

    3. [次へ] をクリックします。

  7. [同期設定の構成] ページで、次の情報を入力します。

    1. データソースの場所 — データが保存されている Amazon S3 バケットへのパスを指定します。S3 の参照 を選択して、S3 バケットを選択します。

    2. 最大ファイルサイズ - この制限を下回るファイルのみをクロールするには、MB 単位で制限を指定します。ファイルの最大サイズ Amazon Kendra は 50 MB です。

    3. (オプション) メタデータファイルのプレフィックスフォルダの場所 — フィールド/属性およびその他のドキュメントメタデータが保存されているフォルダへのパスを指定します。[S3 をブラウズ] を選択してメタデータフォルダを探します。

    4. (オプション) アクセスコントロールリスト設定ファイルの場所 — ユーザーの JSON 構造とドキュメントへのアクセスを含むファイルへのパスを指定します。[S3 をブラウズ] を選択して ACL ファイルを探します。

    5. (オプション) [復号キーを選択] - 復号キーを使用する場合は選択します。既存の AWS KMS キーを使用することを選択できます。

    6. (オプション) 追加設定 — 特定のファイルを含めるか除外するパターンを追加します。すべてのパスは、データソースの場所の S3 バケットに相対的です。

    7. [同期モード] - データソースのコンテンツが変更されたときのインデックスの更新方法を選択します。データソースを Amazon Kendra と初めて同期すると、デフォルトですべてのコンテンツがクロールされ、インデックスが作成されます。同期モードオプションとして完全同期を選択しなくても、最初の同期が失敗した場合は、データの完全同期を実行する必要があります。

      • 完全同期: データソースがインデックスと同期するたびに、既存のコンテンツを置き換えて、すべてのコンテンツを新しくインデックス化します。

      • 新規、変更、削除された同期: データソースがインデックスと同期するたびに、新規、変更、削除されたコンテンツのインデックスのみを作成します。 Amazon Kendra は、データソースのメカニズムを使用して、コンテンツの変更を追跡し、前回の同期以降に変更されたコンテンツのインデックスを作成できます。

    8. 同期実行スケジュール で、頻度 — データソースコンテンツを同期してインデックスを更新する頻度を選択します。

    9. [次へ] をクリックします。

  8. [フィールドマッピングを設定] ページで、次のオプション情報を入力します。

    1. デフォルトフィールドマッピング — インデックスにマッピングする Amazon Kendra 生成のデフォルトデータソースフィールドから選択します。

    2. [フィールドを追加] - カスタムデータソースフィールドを追加して、マッピング先のインデックスフィールド名とフィールドデータタイプを作成します。

    3. [次へ] をクリックします。

  9. [確認と作成] ページで、入力した情報が正しいことを確認し、[データソースを追加] を選択します。このページで情報の編集を選択することもできます。データソースが正常に追加されると、データソースが [データソース] ページに表示されます。

API

Amazon Kendra に接続するには Amazon S3

TemplateConfiguration API を使用してデータソーススキーマの JSON を指定する必要があります。これには、以下の情報を入力する必要があります。

  • データソース — JSON スキーマS3を使用する場合は、データソースタイプを TemplateConfiguration として指定します。また、CreateDataSourceAPI を呼び出すTEMPLATEときにデータソースを として指定します。

  • BucketName— ドキュメントを含むバケットの名前。

  • 同期モード — データソースコンテンツが変更されたときに Amazon Kendra がインデックスを更新する方法を指定します。データソースを と Amazon Kendra 初めて同期すると、デフォルトですべてのコンテンツがクロールされ、インデックスが作成されます。同期モードオプションとして完全同期を選択しなくても、最初の同期が失敗した場合は、データの完全同期を実行する必要があります。以下のいずれかから選択できます。

    • FORCED_FULL_CRAWL データソースがインデックスと同期するたびに既存のコンテンツを置き換え、すべてのコンテンツに新しいインデックスを付けます。

    • FULL_CRAWL は、データソースがインデックスと同期するたびに、新規、変更、削除されたコンテンツのみのインデックスを作成します。 Amazon Kendra は、データソースのメカニズムを使用して、コンテンツの変更を追跡し、前回の同期以降に変更されたコンテンツをインデックスできます。

  • role IAM — を呼び出しCreateDataSourceて、 Secrets Manager シークレットにアクセスするためのアクセス許可を IAM ロールに提供し、S3 コネクタと に必要なパブリック APIs を呼び出すRoleArnタイミングを指定します Amazon Kendra。詳細については、「S3 データソースのIAM ロール」を参照してください。

オプションで、次の機能を追加することもできます。

  • [仮想プライベートクラウド (VPC)] - VpcConfigurationCreateDataSource を呼び出すタイミングを指定します。詳細については、「を使用する Amazon Kendra ための の設定 Amazon VPC」を参照してください。

  • 包含フィルターと除外フィルター — 特定のファイル名、ファイルタイプ、ファイルパスを含めるか除外するかを指定します。glob パターン (ワイルドカードパターンを特定のパターンに一致するパス名のリストに展開できるパターン) を使用します。例については、 AWS CLI コマンドリファレンスの「フィルターの除外と包含の使用」を参照してください。

  • ドキュメントメタデータとアクセスコントロール設定 — ソース URI、ドキュメント作成者、カスタムドキュメントの属性/フィールド、ユーザー、アクセスできるドキュメントなどの情報を含むドキュメントメタデータとアクセスコントロールファイルを追加します。各メタデータファイルには、1 つのドキュメントに関するメタデータが含まれています。

  • フィールドマッピング - 選択すると、S3 データソースフィールドを Amazon Kendra インデックスフィールドにマッピングします。詳細については、データソースフィールドのマッピングを参照してください。

    注記

    がドキュメント Amazon Kendra を検索するには、ドキュメント本文フィールドまたはドキュメントと同等のドキュメント本文が必要です。データソースのドキュメント本文フィールド名をインデックスフィールド名 にマッピングする必要があります_document_body。その他のすべてのフィールドはオプションです。

設定が必要なその他の重要な JSON キーのリストについては、「S3 template schema」を参照してください。

詳細はこちら

Amazon Kendra と S3 データソースとの統合の詳細については、以下を参照してください。