Amazon Kendra
1. サービス概要¶
Amazon Kendra は、機械学習を活用したエンタープライズ検索サービスである。
ユーザーは、Web サイト、ドキュメント、データベース、SaaS アプリケーションなど、様々なデータソースからコンテンツをインデックス化し、自然言語による検索クエリを通じて、関連性の高い情報を迅速に検索できる。
Kendra は、複雑な検索クエリを理解し、最も関連性の高い結果を返すように設計されており、従業員の知識発見と意思決定を支援する。
主なユースケースとして、社内ドキュメント検索、Web サイト検索、FAQ 検索、カスタマーサポートの効率化、知識ベースの構築、コンテンツ発見などが挙げられる。
Amazon Kendra は、これらのユースケースに対応するための様々な機能と、AWS の他のサービスとの統合を提供する。
2. 主な特徴と機能¶
2.1 機械学習ベースの検索¶
Kendra は、機械学習を利用して、検索クエリの意図を理解し、最も関連性の高い結果を返する。
これにより、ユーザーはキーワードだけでなく、自然言語で検索できる。
2.2 コネクタ¶
Amazon S3, SharePoint, Salesforce, Confluence, ServiceNow などの様々なデータソースに接続するためのコネクタを提供している。
これにより、複数のデータソースを統合的に検索できる。
2.3 検索エクスペリエンス¶
検索結果をランキングし、関連性の高い順に表示する。
また、ファセット検索、フィルタリング、スペルチェックなどの機能を提供し、ユーザーの検索エクスペリエンスを向上させる。
2.4 自然言語処理¶
自然言語処理(NLP)技術を利用して、テキストデータから重要な情報を抽出する。
これにより、ドキュメント内のキーフレーズ、エンティティ、感情などを分析できる。
2.5 アクセス制御¶
IAM ポリシーを使用して、ユーザーが検索できるドキュメントへのアクセスを制御できる。
これにより、機密性の高い情報を保護できる。
2.6 カスタマイズ¶
検索結果のランキングや表示方法をカスタマイズできる。
これにより、特定のニーズに合わせて検索エクスペリエンスを調整できる。
2.7 統合性と拡張性¶
Amazon Kendra は、AWS Lambda, Amazon S3, Amazon CloudWatch などの AWS の他のサービスと統合できる。
また、API を利用して、検索機能のカスタマイズや自動化を行うこともできる。
3. アーキテクチャおよび技術要素¶
- ユーザーは、データソースに接続するためのコネクタを設定。
- Kendra は、コネクタを通じて、データをインデックス化。
- ユーザーは、検索クエリを Kendra に送信。
- Kendra は、機械学習を利用してクエリを理解し、インデックス化されたデータから最も関連性の高い結果を検索。
- 検索結果は、ユーザーに返却。
Amazon Kendra は、AWS のインフラ上に構築されており、高い可用性とスケーラビリティを提供する。
データのインデックス化や検索は AWS が行うため、ユーザーはインフラの管理を行う必要はない。
4. セキュリティと認証・認可¶
Amazon Kendra は、データのセキュリティを確保するために、以下の機能を提供する:
- IAM 統合: AWS Identity and Access Management (IAM) を利用して、Kendra へのアクセスを制御する。
- データ暗号化: データは転送中および保存時に暗号化される。
- VPC 内での実行: Kendra は Virtual Private Cloud (VPC) 内で実行でき、ネットワーク隔離を実現。
- アクセス制御: IAM ポリシーを通じて、ユーザーやグループごとに、Kendra の操作権限を詳細に制御できる。
これらのセキュリティ対策により、インデックス化されたデータへの不正アクセスを防止し、機密情報を保護できる。
5. 料金形態¶
Amazon Kendra の料金は主に以下に基づきる:
- インデックス: インデックスされたドキュメントの量に応じて課金。
- 検索クエリ: 検索クエリの実行回数に応じて課金。
- コネクタ: コネクタを利用した場合、利用時間に応じて課金。
- 機械学習機能: 機械学習機能の利用量に応じて課金。
6. よくあるアーキテクチャ・設計パターン¶
Amazon Kendra は、様々な検索ユースケースに利用できる。一般的なパターンは以下の通りである:
- 社内ドキュメント検索: 社内ドキュメントを Kendra でインデックス化し、従業員が情報を容易に検索できる環境を提供。
- Web サイト検索: Web サイトのコンテンツを Kendra でインデックス化し、サイト内検索機能を提供。
- FAQ 検索: FAQ ドキュメントを Kendra でインデックス化し、顧客サポートを効率化。
- カスタマーサポートの効率化: 顧客からの問い合わせを分析し、関連性の高いドキュメントを提示。
- 知識ベースの構築: 企業の知識を Kendra で管理し、従業員が知識にアクセスしやすくする。
- コンテンツ発見: 大量のドキュメントから、関連性の高いコンテンツを迅速に発見。
7. 設定・デプロイ手順(ハンズオン例)¶
- AWS マネジメントコンソールから Amazon Kendra を開き、新しいインデックスを作成。
- データソース(S3, SharePoint など)を選択し、コネクタを設定。
- インデックスの設定(スキャン頻度など)を構成。
- 検索クエリを実行し、検索結果を確認。
- 検索結果のランキングや表示方法をカスタマイズ。
8. 試験で問われやすいポイント¶
8.1 機械学習ベースの検索¶
- 機能: 機械学習を利用して、クエリの意図を理解し、関連性の高い結果を返す。
- 利用: キーワードだけでなく、自然言語で検索可能。
- 試験対策: 機械学習の役割、自然言語検索が問われる。
8.2 コネクタ¶
- サポート: S3, SharePoint, Salesforce, Confluence, ServiceNow など。
- 利用: 複数のデータソースを統合的に検索。
- 試験対策: 対応コネクタの種類、利用方法が問われる。
8.3 検索エクスペリエンス¶
- 機能: 検索結果のランキング、ファセット検索、フィルタリング、スペルチェック。
- 目的: ユーザーの検索体験を向上。
- 試験対策: 各機能の役割、利用方法が問われる。
8.4 自然言語処理¶
- 利用技術: 自然言語処理(NLP)。
- 利用: テキストデータから重要な情報を抽出。
- 試験対策: NLP の利用方法、分析対象が問われる。
8.5 料金体系¶
- 課金対象: インデックスされたドキュメントの量、検索クエリの実行回数、コネクタの利用時間、機械学習機能の利用量。
- 最適化: 不要なデータのインデックス化を避ける、検索クエリの最適化がコスト削減に有効。
- 試験対策: 料金体系、課金対象が問われる。
8.6 類似・関連サービスとの比較¶
- Amazon Elasticsearch Service: 検索・分析エンジンサービス。Kendra は機械学習を利用したエンタープライズ検索に特化。
- Amazon OpenSearch Service: 検索・分析エンジンサービス。Kendra はエンタープライズ検索に特化。
8.7 試験で頻出となる具体的な問われ方と答え¶
- Q: Amazon Kendra は何を提供するサービスか?
- A: 機械学習を活用したエンタープライズ検索サービスである。
- Q: Amazon Kendra は、どのようなデータソースをサポートしているか?
- A: Amazon S3, SharePoint, Salesforce, Confluence, ServiceNow などの様々なデータソースに接続できる。
- Q: Amazon Kendra では、どのような検索方法が利用できるか?
- A: 自然言語による検索クエリを使用できる。
- Q: Amazon Kendra は、どのような技術を利用して検索結果の関連性を高めるか?
- A: 機械学習を利用して、検索クエリの意図を理解し、最も関連性の高い結果を返する。
- Q: Amazon Kendra の料金はどのように計算されるか?
- A: インデックスされたドキュメントの量、検索クエリの実行回数、コネクタの利用時間、機械学習機能の利用量などに基づいて計算される。