Amazon へのデータのアップロード CloudSearch ドメイン - アマゾン CloudSearch

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

Amazon へのデータのアップロード CloudSearch ドメイン

重要

Amazon にデータをアップロードする前に CloudSearch ドメインの場合は、次のガイドラインに従ってください。

  • ドキュメントをアップロードする前にグループ化してバッチします。1 つのドキュメントのみで構成されるバッチを連続してアップロードすると、Amazon の速度に大きな悪影響が出ます。 CloudSearch は更新を処理できます。代わりに、できるだけ制限に近いバッチを作成し、アップロードする頻度を少なくしてください。最大バッチサイズとアップロード頻度の詳細については、「Amazon を理解する CloudSearch 制限」を参照してください。

  • ドメインのドキュメントエンドポイントと検索エンドポイントは、ドメインが存在している間変わりません。すべてのアップロードリクエストや検索リクエストの前にエンドポイントを取得するのではなく、エンドポイントをキャッシュに保存してください。Amazon クエリ CloudSearch 電話による設定サービスaws cloudsearch describe-domainsまたはDescribeDomains各リクエストの前にリクエストが調整される可能性があります。

Amazon にアップロードするデータを記述するためのドキュメントバッチを作成します。 CloudSearchドメイン。ドキュメントバッチは追加および削除操作のコレクションであり、ドメインで追加、更新、削除するドキュメントを表します。バッチは JSON または XML で記述できます。ドキュメントバッチをドメインにアップロードすると、ドメインのインデックス作成オプションに従って自動的にデータのインデックスが作成されます。

データが変更されたら、バッチをアップロードして、インデックスのドキュメントを追加、変更、または削除します。アマゾン CloudSearch 更新を継続的に適用します。明示的にデータのインデックスを再作成する必要があるのは、ドメインが NEEDS INDEXING 状態になる設定変更を実行した場合、または、サジェスタを更新する必要がある場合のみです。

ドメインにデータをアップロードするには、データが有効な JSON または XML バッチ形式である必要があります。各ドキュメントに指定されたフィールドは、ドメイン用に設定されたインデックスフィールドに対応する必要があります。ただし、設定されたすべてのインデックスフィールドをドキュメントが含んでいる必要はありません。ドキュメントバッチの作成方法については、「データの準備」を参照してください。ドメインのインデックスフィールドの設定については、「configure indexing options」を参照してください。

削除操作を行うバッチも含めて、検索ドメインにアップロードしたドキュメントバッチの合計数に対して請求されます。Amazon の詳細 CloudSearch 料金表、参照aws.amazon.com/cloudsearch/料金/

ドキュメントバッチは、Amazon CloudSearch console または AWS CLI を使用するか、ドメインのドキュメントサービスエンドポイントに posting it directly することで、ドメインに送信できます。

ドキュメントサービス API の詳細については、「Document Service API」を参照してください。

Amazon での一括アップロード CloudSearch

ドキュメントバッチは 10 秒ごとに 1 つ、バッチあたり 5 MB に制限されます。詳細については、「制限」を参照してください。ただし、バッチを並行してアップロードして、すべてのデータをアップロードするのにかかる時間を短縮することができます。

一括アップロードを実行するには、以下に従います。

  • 必要なインスタンスタイプを、デフォルトの search.small より大きなインスタンスタイプに設定します。使用できるアップロードスレッドの数は、ドメインで使っている検索インスタンスのタイプ、データの性質、インデックス作成オプションによって異なります。インスタンスタイプが大きいほど、アップロード容量が大きくなります。search.small インスタンスにバッチを並列アップロードしようとすると、通常は、高い確率で 504 または 507 エラーが発生します。必要なインスタンスタイプの設定の詳細については、「Amazon でのスケーリングオプションの設定 CloudSearch」を参照してください。

  • 設定の変更がアクティブになったら、データのアップロードを開始します。5xx エラーが高い確率で発生する場合は、アップロードレートを減らすか、サイズの大きいインスタンスタイプに切り替える必要があります。最大のインスタンスタイプを既に使っている場合は、望ましいパーティション数を増やしてアップロード容量をさらに増やすことができます。

    重要

    ドメインが「PROCESSING」状態の間に大量の更新を送信した場合、更新が検索インデックスに適用されるまでの時間が長くなることがあります。これを回避するには、ドメインが「ACTIVE」状態になるまで待ってから一括アップロードを開始してください。

  • 一括アップロードが終了すると、必要なインスタンスタイプを、小さなインスタンスタイプに戻すことができます。小さなタイプにインデックスが収まる場合は、Amazon CloudSearch はドメインを自動的に縮小します。アマゾン CloudSearch ドメインに設定された必要なインスタンスタイプより小さいインスタンスタイプにスケールダウンすることはありません。

データが 1 GB 未満や 100 万個未満の 1 KB ドキュメントのデータセットの場合は、小さな検索インスタンスで十分です。1 GB~8 GB のデータセットをアップロードするには、アップロードを開始する前に、目的のインスタンスタイプを search.large に設定することをお勧めします。8 GB~16 GB のデータセットについては、search.xlarge で開始します。16 GB~32 GB のデータセットについては、search.2xlarge で開始します。32 GB を超えるアップロードの場合は、search.2xlarge インスタンスタイプを選択し、データセットに合わせて必要なパーティション数を増やします。各パーティションには、32 GB までのデータを格納できます。より多くのアップロード容量が必要な場合、またはインデックスに 500 GB を超える場合は、サービス引き上げ限度リクエストを送信します。

Amazon を使用したデータのアップロード CloudSearch コンソール

アマゾンで CloudSearch コンソールでは、ドメインダッシュボードを使って、ローカルファイルシステムや Amazon S3 からドメインにデータをアップロードできます。コンソールは、アップロード処理中に以下のファイルタイプを自動的にドキュメントバッチに変換します。

  • JSON または XML (.json、.xml) でフォーマットされたドキュメントバッチ

  • カンマ区切り値 (.csv)

  • テキストドキュメント (.txt)

また、DynamoDB テーブルの項目を変換してアップロードすることもできます。詳細については、「Uploading DynamoDB Data」を参照してください。

注記

Amazon S3 または DynamoDB からデータをアップロードするには、サービスとアップロードするリソースの両方に対するアクセス許可が必要です。詳細については、「バケットポリシーとユーザーポリシーの使用」および「IAM を使用して DynamoDB リソースへのアクセスをコントロールする」を参照してください。

CSV ファイルは解析されます row-by-row 行ごとに別のドキュメントが生成されます。その他のファイルタイプはすべて単一ドキュメントとして扱われます。ドキュメントバッチの自動生成の詳細については、「データの準備」を参照してください。

インデックス作成のためにデータをドメインに送信するには

  1. Amazon を開けて CloudSearch でコンソールhttps://console.aws.amazon.com/cloudsearch/home

  2. 左のナビゲーションペインで、[ドメイン

  3. ドメインの名前を選択して、ドメイン設定を開きます。

  4. 選択アクション,ドキュメントをアップロードする

  5. ドメインにアップロードするデータの場所を選択します。

    • ローカルマシン

    • Amazon S3

    • Amazon DynamoDB

    • サンプルデータ

    ドキュメントバッチとしてフォーマットされていないデータをアップロードすると、アップロード処理中に自動的に変換されます。

    注記

    バッチが無効な場合、Amazon CloudSearch は、単一のコンテンツフィールドと汎用メタデータフィールドを含む有効なバッチにコンテンツを変換します。これらは通常、ドメイン用に設定されたフィールドではないため、フィールドが存在しないことを示すエラーが発生します。

  6. データをアップロードします。

    1. ローカルファイルをアップロードする場合は、ファイルを選択をクリックして、アップロードするファイルを見つけます。

    2. Amazon S3 からオブジェクトをアップロードする場合は、アップロード元となるバケットの URI を指定します。

    3. DynamoDB から項目をアップロードする場合は、アップロード元となるテーブルを選択します。テーブルからの読み取り時に消費可能な読み取りキャパシティユニットを制限するには、読み取りキャパシティユニットの最大パーセンテージを入力します。特定の項目から読み取りを開始するには、開始ハッシュキーを指定します。

    4. 定義済みのサンプルデータをアップロードする場合は、使用するデータセットを選択します。

  7. [続行] を選択します。

  8. アップロードする書類を確認し、ドキュメントをアップロードする

  9. 概要をアップロードする、ドキュメントバッチがデータから自動生成されている場合は、[Download生成された文書バッチをダウンロードするそれを手に入れよう。選択Closeをクリックして、ドメインダッシュボードに戻ります。

AWS CLI を使用したデータのアップロード

aws cloudsearch upload-documents コマンドを使って、ドキュメントバッチを検索ドメインに送信できます。AWS CLI のインストールおよびセットアップの詳細については、「AWS Command Line Interface ユーザーガイド」を参照してください。

インデックス作成のためにドキュメントバッチをドメインに送信するには

  • aws cloudsearchdomain upload-documents コマンドを実行して、ドメインにバッチをアップロードします。

    aws cloudsearchdomain upload-documents --endpoint-url http://doc-movies-y6gelr4lv3jeu4rvoelunxsl2e.us-east-1.cloudsearch.amazonaws.com --content-type application/json --documents document-batch.json { "status": "success", "adds": 5000, "deletes": 0 }

Amazonへの書類の投稿 CloudSearch HTTP 経由のドメインのドキュメントサービスエンドポイント

documents/batch リソースを使用して、ドメインにドキュメントバッチを投稿し、ドキュメントを追加、更新、または削除します。例:

curl -X POST --upload-file movie-data-2013.json doc-movies-123456789012.us-east-1.cloudsearch.amazonaws.com/2013-01-01/documents/batch --header "Content-Type:application/json"