Amazon CloudSearch - 開発者ガイド

Amazon CloudSearch
開発者ガイド
API Version 2013-01-01
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch: 開発者ガイド
Copyright © 2017 Amazon Web Services, Inc. and/or its affiliates. All rights reserved.
Amazon's trademarks and trade dress may not be used in connection with any product or service that is not Amazon's, in any
manner that is likely to cause confusion among customers, or in any manner that disparages or discredits Amazon. All other
trademarks not owned by Amazon are the property of their respective owners, who may or may not be affiliated with, connected to,
or sponsored by Amazon.
Amazon CloudSearch 開発者ガイド
Table of Contents
Amazon CloudSearch とは ............................................................................................................. 1
Amazon CloudSearch の新規ユーザーである場合 ...................................................................... 2
検索の仕組み ........................................................................................................................ 2
インデックス作成 .......................................................................................................... 3
ファセット ................................................................................................................... 3
テキスト処理 ................................................................................................................ 4
結果の並べ替え ............................................................................................................. 4
検索リクエスト ............................................................................................................. 4
自動スケーリング .................................................................................................................. 5
データに合わせたスケーリング ....................................................................................... 6
トラフィックに合わせたスケーリング .............................................................................. 6
Amazon CloudSearch へのアクセス ........................................................................................ 6
リージョンとエンドポイント .......................................................................................... 7
リクエストへの署名 ...................................................................................................... 7
はじめに ...................................................................................................................................... 8
開始する前に ........................................................................................................................ 8
ステップ 1: 検索ドメインを作成する ....................................................................................... 9
ステップ 2: インデックス作成のためにデータをアップロードする .............................................. 11
ステップ 3: ドメインを検索する ............................................................................................ 12
検索テスターによる検索 ............................................................................................... 12
ウェブブラウザからの検索リクエストの送信 ................................................................... 13
数値フィールドの検索 .................................................................................................. 13
検索結果のソート ........................................................................................................ 14
ファセット情報の取得 .................................................................................................. 15
検索ハイライトの取得 .................................................................................................. 16
ステップ 4: Movies ドメインを削除する ................................................................................. 17
2013-01-01 API への移行 ............................................................................................................. 19
2013-01-01 ドメインの作成 .................................................................................................. 19
2013-01-01 ドメインの設定 .................................................................................................. 19
新しい設定サービスのアクションとオプション ................................................................ 21
サポートされなくなった設定サービスのアクションとオプション ....................................... 22
2013-01-01 ドメインへのデータのアップロード ....................................................................... 22
2013-01-01 ドメインの検索 .................................................................................................. 23
新しい検索パラメータとオプション ............................................................................... 24
サポートされなくなった検索パラメータとオプション ....................................................... 25
更新された制限事項 ............................................................................................................. 25
検索ドメインの作成と管理 ............................................................................................................ 27
検索ドメインの作成 ............................................................................................................. 27
コンソールを使用したドメインの作成 ............................................................................ 28
AWS CLI を使用したドメインの作成 .............................................................................. 29
AWS SDK を使用したドメインの作成 ............................................................................ 30
アクセス設定 ...................................................................................................................... 30
Amazon CloudSearch のアクセスポリシーの記述 ............................................................. 31
Amazon CloudSearch ポリシーの例 ............................................................................... 34
コンソールを使用した Amazon CloudSearch のアクセスの設定 ......................................... 38
AWS CLI を使用した Amazon CloudSearch のアクセス設定 .............................................. 39
AWS SDK を使用してドメインのエンドポイントへのアクセスを設定する ........................... 41
スケーリングオプションの設定 ............................................................................................. 41
スケーリングオプションの選択 ..................................................................................... 42
コンソールを使用したスケーリングオプションの設定 ....................................................... 43
AWS CLI を使用したスケーリングオプションの設定 ........................................................ 43
AWS SDK を使用したスケーリングオプションの設定 ....................................................... 44
可用性オプションの設定 ....................................................................................................... 44
コンソールを使用した可用性オプションの設定 ................................................................ 45
AWS CLI を使用した可用性オプションの設定 ................................................................. 45
API Version 2013-01-01
iii
Amazon CloudSearch 開発者ガイド
AWS SDK を使用した可用性オプションの設定 ................................................................ 46
検索ドメインの監視 ............................................................................................................. 46
ドメイン情報の取得 ..................................................................................................... 46
Amazon CloudWatch を使用したドメインのモニタリング ................................................. 51
CloudTrail を使用した設定サービスの呼び出しの記録 ....................................................... 52
Amazon CloudSearch の使用状況と料金の追跡 ................................................................ 55
ドメインの削除 ................................................................................................................... 55
コンソールを使用したドメインの削除 ............................................................................ 55
AWS CLI を使用したドメインの削除 .............................................................................. 56
AWS SDK を使用したドメインの削除 ............................................................................ 56
Amazon CloudSearch ドメインへのタグ付け ........................................................................... 56
タグの操作 (コンソール) ............................................................................................... 57
タグの操作 (AWS CLI) ................................................................................................. 57
タグの操作 (AWS SDK) ............................................................................................... 58
データのインデックス作成方法の制御 ............................................................................................ 60
データの準備 ...................................................................................................................... 60
インデックスフィールドにドキュメントデータをマッピング .............................................. 61
ドキュメントバッチの作成 ............................................................................................ 61
インデックスフィールドの設定 ............................................................................................. 66
個々のインデックスフィールドの設定 ............................................................................ 68
ドキュメントバッチに基づくインデックスフィールドの自動設定 ....................................... 69
コンソールを使用したインデックスフィールドの設定 ....................................................... 69
AWS SDK を使用したインデックスフィールドの設定 ....................................................... 70
動的フィールドの使用 .......................................................................................................... 70
動的フィールドの設定 .................................................................................................. 71
認識されないドキュメントフィールドの無視 ................................................................... 71
動的フィールドの検索 .................................................................................................. 72
分析スキームの設定 ............................................................................................................. 73
ステミング ................................................................................................................. 74
Stopwords .................................................................................................................. 75
Synonyms ................................................................................................................. 75
コンソールを使用した分析スキームの設定 ...................................................................... 76
AWS CLI を使用した分析スキームの設定 ........................................................................ 77
AWS SDK を使用した分析スキームの設定 ...................................................................... 78
中国語、日本語、韓国語のバイグラムのインデックス作成 ................................................. 78
日本語トークン分割のカスタマイズ ............................................................................... 79
テキスト処理 ...................................................................................................................... 82
サポートされている言語 ............................................................................................... 83
言語固有の設定 ........................................................................................................... 83
データのアップロードとインデックス作成 ...................................................................................... 90
データのアップロード .......................................................................................................... 90
ドキュメントサービスリクエストの送信 ......................................................................... 91
一括アップロード ........................................................................................................ 92
コンソールを使用したデータのアップロード ................................................................... 93
AWS CLI を使用したデータのアップロード .................................................................... 94
HTTP 経由でドキュメントサービスエンドポイントにドキュメントを投稿 ........................... 95
ドキュメントデータのインデックス作成 ................................................................................. 95
コンソールを使用したドキュメントのインデックス作成 .................................................... 96
AWS CLI を使用したドキュメントのインデックス作成 ..................................................... 96
AWS SDK を使用したドキュメントのインデックス作成 .................................................... 96
データの検索 .............................................................................................................................. 98
検索リクエストの送信 .......................................................................................................... 99
検索テスターによる検索 ............................................................................................. 100
複合クエリの作成 .............................................................................................................. 101
Amazon CloudSearch でのテキストの検索 ............................................................................ 103
個々の用語の検索 ...................................................................................................... 103
フレーズの検索 ......................................................................................................... 105
リテラル文字列の検索 ................................................................................................ 106
API Version 2013-01-01
iv
Amazon CloudSearch 開発者ガイド
プレフィックスの検索 ................................................................................................
数値の検索 .......................................................................................................................
日付と時刻の検索 ..............................................................................................................
値の範囲の検索 .................................................................................................................
日付範囲の検索 .........................................................................................................
場所の範囲の検索 ......................................................................................................
テキスト範囲の検索 ...................................................................................................
地理的位置による検索および結果のランク付け ......................................................................
地域内の検索 ............................................................................................................
距離による結果のソート .............................................................................................
DynamoDB データの検索 ...................................................................................................
DynamoDB データを検索するためのドメインの設定 .......................................................
DynamoDB からのデータのアップロード ......................................................................
検索ドメインと DynamoDB テーブルの同期 ..................................................................
一致するドキュメントのフィルタリング ...............................................................................
検索リクエストのチューニング ............................................................................................
クエリのレイテンシー分析 ..........................................................................................
詳細情報のクエリ ......................................................................................................................
インデックスフィールドからデータを取得 ............................................................................
数値フィールドの統計情報の取得 .........................................................................................
ファセット情報の取得と使用 ...............................................................................................
ファセット情報の取得 ................................................................................................
ファセット情報の使用 ................................................................................................
検索ヒットのハイライト .....................................................................................................
候補の取得 .......................................................................................................................
サジェスタの設定 ......................................................................................................
候補の取得 ...............................................................................................................
検索結果の制御 .........................................................................................................................
結果の並べ替え .................................................................................................................
フィールドの相対的重み付けを利用したテキストの関連性のカスタマイズ .................................
式の設定 ..........................................................................................................................
式の記述 ..................................................................................................................
検索リクエスト内での式の定義 ....................................................................................
再利用可能な式の設定 ................................................................................................
式の比較 ..................................................................................................................
XML 形式で結果を取得 .......................................................................................................
結果のページ分割 ..............................................................................................................
10,000 件を超えるディープページ分割 .........................................................................
エラー処理 ...............................................................................................................................
Amazon CloudSearch のエラーのタイプ ...............................................................................
Amazon CloudSearch でのリクエストの再試行 ......................................................................
コマンドラインツールリファレンス ..............................................................................................
コマンドラインツールの使用 ...............................................................................................
前提条件 ..................................................................................................................
コマンドラインツールのインストール ...........................................................................
Amazon CloudSearch コマンドの実行 ..........................................................................
cs-configure-from-batches ...................................................................................................
cs-import-documents ..........................................................................................................
Amazon CloudSearch API リファレンス .......................................................................................
設定 API リファレンス .......................................................................................................
設定リクエストの送信 ................................................................................................
アクション ...............................................................................................................
データ型 ..................................................................................................................
共通パラメータ .........................................................................................................
共通エラー ...............................................................................................................
ドキュメントサービス API リファレンス ..............................................................................
ドキュメントサービスリクエストの送信 .......................................................................
documents/batch .......................................................................................................
API Version 2013-01-01
v
106
108
108
108
109
109
109
109
110
110
111
111
113
115
116
116
116
118
118
119
120
121
122
127
128
128
131
133
133
134
134
135
136
137
138
139
139
140
142
142
143
144
145
145
145
147
148
149
153
153
153
155
203
233
235
236
236
237
Amazon CloudSearch 開発者ガイド
検索 API リファレンス ....................................................................................................... 245
検索リクエストの送信 ................................................................................................ 245
検索 ......................................................................................................................... 246
候補リクエストの送信 ................................................................................................ 262
候補 ......................................................................................................................... 262
検索サービスのエラー ................................................................................................ 264
トラブルシューティング ............................................................................................................. 266
ドキュメントのアップロード ............................................................................................... 266
すべてのドキュメントの削除 ............................................................................................... 267
ドキュメントの削除後もドメインが縮小しない ...................................................................... 267
ドキュメント更新のレイテンシー ......................................................................................... 268
ドキュメントをアップロードする際に大量の 5xx エラーが発生する .......................................... 268
検索のレイテンシーとタイムアウト ...................................................................................... 268
検索のレイテンシーとタイムアウト ...................................................................................... 269
検索時に 5xx エラーが急増する ........................................................................................... 269
インデックス作成オプションを更新した後のインデックス作成エラー ........................................ 269
ドメインが見つからないエラー ............................................................................................ 269
検索可能なドキュメントの数が返されない ............................................................................ 270
構成サービスアクセスポリシーが機能しない ......................................................................... 270
検索およびドキュメントサービスアクセスポリシーが機能しない .............................................. 270
Amazon CloudSearch コンソールのアクセス許可エラー .......................................................... 271
ワイルドカードを使用してテキストフィールドを検索すると、予期した結果が生成されない ......... 271
ディープページ分割でカーソルを使用した場合の結果の不整合 ................................................. 272
制限 ......................................................................................................................................... 273
リソース .................................................................................................................................. 276
ドキュメント履歴 ...................................................................................................................... 277
AWS の用語集 .......................................................................................................................... 281
API Version 2013-01-01
vi
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch とは
Amazon CloudSearch はクラウド上の完全マネージド型サービスであり、ウェブサイトまたはアプリ
ケーション向けの検索ソリューションを容易に設定、管理、スケールできます。
Amazon CloudSearch を使用して、ウェブページ、ドキュメントファイル、フォーラムの投稿、製品
情報など大規模なデータコレクションを検索できます。検索機能を迅速に追加できます。検索の高度
な知識を習得したり、ハードウェアの準備、設定、およびメンテナンスについて考える必要はありま
せん。データやトラフィックの変動に伴い、Amazon CloudSearch はニーズに合わせてシームレスに
スケーリングします。
Note
このドキュメントでは、Amazon CloudSearch 2013-01-01 API について説明していま
す。2011-02-01 の検索ドメインがある場合は、以前のドキュメントを参照する必要がありま
す。2011-02-01 開発者ガイドの PDF をダウンロードできます。
Amazon CloudSearch を使用して、構造化データとプレーンテキストの両方のインデックスを作成し
て検索できます。Amazon CloudSearch には次のような機能があります。
• 言語固有のテキスト処理による全文検索
• ブール型検索
• プレフィックス検索
• 範囲の検索
• 用語の増強
• ファセット
• 強調表示
• 候補の自動入力
JSON または XML 形式での検索結果の取得、フィールド値に基づく結果のソートやフィルタリング、
およびアルファベット順、数値順、またはカスタム式による結果のソートを行うことができます。
Amazon CloudSearch で検索ソリューションを構築するには、次のステップに従います。
API Version 2013-01-01
1
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch の新規ユーザーである場合
• 検索ドメインを作成して設定します。検索ドメインには、検索可能なデータと、検索リクエストを
処理する検索インスタンスが含まれます。検索可能にするデータのコレクションが複数ある場合
は、複数の検索ドメインを作成できます。
• 検索するデータをドメインにアップロードします。 Amazon CloudSearch は、データのインデック
スを作成し、1 つ以上の検索インスタンスに検索インデックスをデプロイします。
• ドメインを検索します。HTTP/HTTPS の GET リクエストとして、ドメインの検索エンドポイント
に検索リクエストを送信します。
トピック
• Amazon CloudSearch の新規ユーザーである場合 (p. 2)
• 検索の仕組み (p. 2)
• Amazon CloudSearch での自動スケーリング (p. 5)
• Amazon CloudSearch へのアクセス (p. 6)
Amazon CloudSearch の新規ユーザーである場合
Amazon CloudSearch の概要、サービスの特徴、および価格情報については、Amazon CloudSearch
の詳細ページを参照してください。Amazon CloudSearch を使用する準備ができている場合は、
「Amazon CloudSearch の使用開始 (p. 8)」から始めてください。
Amazon CloudSearch とは、AWS マネジメントコンソール、AWS SDK、または AWS CLI を使用し
て対話できます。API リクエストを直接 Amazon CloudSearch に送信することもできますが、SDK
および AWS CLI は、必要に応じて自動的にリクエストを署名し、他の AWS サービスと組み合わせ
て Amazon CloudSearch ドメインと対話するための一元管理されたツールを提供します。AWS SDK
の詳細については、「アマゾン ウェブ サービスのツール」を参照してください。AWS CLI のインス
トールおよび使用の詳細については、『AWS Command Line Interface ユーザーガイド』を参照して
ください。
検索ドメインの設定と管理、Amazon CloudSearch へのデータの送信、検索リクエストの送信、応答
の処理の詳細については、以下のトピックを参照してください。
• データの準備 (p. 60) - インデックス作成のためにデータを Amazon CloudSearch ドメインに
アップロードできるように、データの形式を指定する方法を示します。
• インデックスフィールドの設定 (p. 66) - Amazon CloudSearch ドメインのインデックス作成オプ
ションを設定する方法を示します。
• Amazon CloudSearch でのデータの検索 (p. 98) - Amazon CloudSearch クエリ言語を使用する方
法を示します。
• 検索結果の制御 (p. 133) - 検索結果のソート、フィルタ、ページ分割の方法を示します。
検索の仕組み
検索するデータのコレクション(コーパスとも呼ばれる)は、構造化されていないフルテキストド
キュメント、XML などのマークアップ言語で形式が設定されているドキュメントなどの半構造化ド
キュメント、または厳密なデータモデルに準拠する構造化データで構成されている場合があります。
検索できるようにする各項目(フォーラムの投稿やウェブページなど)は、ドキュメントとして表さ
れます。各ドキュメントには、一意の ID と、検索して結果に含めるデータが含まれるフィールドが 1
つ以上あります。
データを検索可能にするには、JSON や XML 形式のドキュメントのバッチとしてデータを表し、検索
ドメインにバッチをアップロードします。Amazon CloudSearch では、ドメインの設定オプションに
API Version 2013-01-01
2
Amazon CloudSearch 開発者ガイド
インデックス作成
応じて、ドキュメントデータから検索インデックスが生成されます。このインデックスに対してクエ
リを送信し、特定の検索条件を満たすドキュメントを見つけます。
データが変更されたら、更新を送信して、インデックスのドキュメントを追加、変更、または削除し
ます。更新は受信された順序で継続的に適用されます。
データの形式を設定する方法については、「データの準備 (p. 60)」を参照してください。
Amazon CloudSearch でのインデックス作成
データから検索インデックスを構築するために、Amazon CloudSearch では以下の情報が必要になり
ます。
• どのドキュメントフィールドを検索する必要があるか。
• どのドキュメントフィールドの値を検索結果で取得する必要があるか。
• 検索結果を調整およびフィルタするために使用するカテゴリを表しているドキュメントフィールド
はどれか。
• 特定のフィールド内のテキストをどのように処理する必要があるか。
インデックス作成オプションを設定することにより、ドメインの設定でこのメタデータを定義しま
す。インデックス作成オプションを使用して、検索インデックスに含まれるフィールドを指定し、こ
れらのフィールドを使用する方法を制御します。
データ内で発生する各ドキュメントフィールドに対応するインデックスフィールドを設定する必要が
あります。ドキュメントフィールドと Amazon CloudSearch インデックス内のフィールドは、1 対 1
で対応します。インデックスフィールド名に加えて、以下の項目を指定します。
• インデックスフィールドの型
• フィールドが検索可能かどうか(text および text-array フィールドは常に検索可能です)
• フィールドがカテゴリ(ファセット)として使用できるかどうか
• フィールド値を検索結果で返すことができるかどうか
• フィールドを使用して結果をソートできるかどうか
• フィールドにハイライトを返すことができるか
• ドキュメントデータで値が指定されていない場合に使用するデフォルト値
Amazon CloudSearch のインデックスフィールドを設定する方法については、「インデックスフィー
ルドの設定 (p. 66)」を参照してください。
Amazon CloudSearch のファセット
ファセットとは、検索結果の絞り込みとフィルタ処理を行うために使用するカテゴリを表すインデッ
クスフィールドです。Amazon CloudSearch に検索リクエストを送信すると、ファセット情報をリク
エストして、ファセットで同じ値を共有するヒット数を調べることができます。この情報を検索結
果と共に表示して、それを利用して対話的に検索結果を絞り込むことができます。(これは多くの場
合、ファセットナビゲーションまたはファセット検索と呼ばれます)。
ファセットは、ドメイン設定でファセットが有効になっている任意の日付、リテラル、数値フィー
ルドのいずれかです。Amazon CloudSearch は、ファセットごとに同じ値を共有するヒット数を計算
します。ファセット値の特定のサブセットについてファセット数を計算するにバケットを定義できま
す。ファセットの結果には、一致があるバケットのみが含まれています。
ファセットの設定については、「インデックスフィールドの設定 (p. 66)」を参照してください。
ファセット情報を使用してファセットナビゲーションをサポートする方法については、「Amazon
CloudSearch でファセット情報を取得して使用 (p. 120)」を参照してください。
API Version 2013-01-01
3
Amazon CloudSearch 開発者ガイド
テキスト処理
Amazon CloudSearch でのテキスト処理
インデックス作成時に、Amazon CloudSearch は、フィールドに設定されている言語固有の分析ス
キームに従って、text および text-array フィールドの内容を処理します。分析スキームによっ
て、テキストの正規化、トークン分割、およびステミングの方法を制御し、インデックス作成時に
考慮するストップワードやシノニムを指定します。Amazon CloudSearch は、サポートされている
各言語について、デフォルトの分析スキームを提供します。カスタム分析スキームの設定について
は、「分析スキームの設定 (p. 73)」を参照してください。Amazon CloudSearch によるテキスト
の正規化とトークン分割の方法、テキストフィールドのインデックス作成時や検索結果の処理中に
設定されたテキストオプションを適用する方法については、「Amazon CloudSearch でのテキスト処
理 (p. 82)」を参照してください。
Amazon CloudSearch での結果のソート
検索条件に一致する各ドキュメントについてカスタム値を計算する式を定義することにより、検索結
果をランク付けする方法をカスタマイズできます。たとえば、Amazon CloudSearch によって計算さ
れるデフォルトの関連性スコアに加えて、ドキュメントの popularity フィールドの値を考慮する
式を定義できます。式は、標準的な数値演算子および関数を使用する単なる数式です。式では、int
フィールドや double フィールド、他の式、ドキュメントの関連性スコア(_score)、およびエポッ
ク時間(_time)を参照できます。検索リクエストを送信するときに、検索結果のソートに使用する式
を指定します。検索条件内で式を参照することもできます。
ドキュメントの関連性 _score は、特定の検索ヒットが検索リクエストに対してどれくらい関連して
いるかを示します。関連性スコアを計算するために、Amazon CloudSearch では、検索用語がドキュ
メント内に何回出現するかを考慮し、インデックス内の他のドキュメントと比較します。
ドメインで使用する式を設定する方法については、「式の設定 (p. 134)」を参照してください。
Amazon CloudSearch での検索リクエスト
HTTP/HTTPS の GET リクエストとして、ドメインの検索エンドポイントに検索リクエストを送信し
ます。さまざまなオプションを指定することによって、検索の制約、ファセット情報の要求、ランク
付けの制御、結果で返される内容の指定を行うことができます。JSON 形式または XML 形式で検索結
果を取得できます。デフォルトで、Amazon CloudSearch は JSON 形式で結果を返します。
検索リクエストを送信すると、Amazon CloudSearch は検索文字列のテキスト処理を実行します。検
索文字列は、以下の目的で処理されます。
• すべての文字を小文字に変換する
• 空白および句読点の境界で、文字列を個別の用語に分割する
• 検索対象のフィールドについて、ストップワードリストにある用語を削除する
• 検索対象のフィールドについて設定されたステミングおよびシノニムのオプションに従って、ステ
ミングとシノニムをマッピングする
この事前処理が完了すると、Amazon CloudSearch はインデックス内で検索用語を調べ、リクエスト
に一致するすべてドキュメントを識別します。応答を生成するために、Amazon CloudSearch はこの
検索ヒットのリストを処理して、一致するドキュメントのフィルタとソートを行い、ファセットを計
算します。次に、Amazon CloudSearch は JSON 形式または XML 形式で応答を返します。
デフォルトで Amazon CloudSearch は、ヒットの関連性 _scores に従ってランク付けの結果を取得
します。また、リクエストで、ヒットをソートするために使用するインデックスフィールドまたは式
を指定できます。たとえば、価格を含んでいるインデックスフィールドや、人気を計算する式によっ
て、ヒットをソートできます。
結果の検索、ランク付け、およびページ分割の詳細については、「Amazon CloudSearch でのデータ
の検索 (p. 98)」を参照してください。
API Version 2013-01-01
4
Amazon CloudSearch 開発者ガイド
自動スケーリング
Amazon CloudSearch での自動スケーリング
検索ドメインには 1 つ以上の検索インスタンスがあり、各インスタンスは、データのインデックス作
成およびリクエストの処理のために限定された RAM リソースと CPU リソースを使用します。ドメ
イン内で必要な検索インスタンスの数は、コレクション内のドキュメントおよび検索リクエストのボ
リュームと複雑さによって異なります。
Amazon CloudSearch は、低レイテンシー、高スループットの検索パフォーマンスを提供するのに必
要な検索インスタンスのサイズと数を決定します。データをアップロードしてインデックスを設定す
ると、Amazon CloudSearch はインデックスを構築し、適切な初期検索インスタンスタイプを選択し
ます。検索ドメインを使用するときに、Amazon CloudSearch はドメインにアップロードされたデー
タのボリュームと、検索リクエストの量と複雑さに対応できるようにスケールします。
検索ドメインを作成するとき、1 つのインスタンスがドメイン用にデプロイされます。次の図に示す
ように、ドメインには常に少なくとも 1 つのインスタンスがあります。データのボリュームやトラ
フィックが増加すると、Amazon CloudSearch はインスタンスを追加してドメインを自動的にスケー
ルします。
API Version 2013-01-01
5
Amazon CloudSearch 開発者ガイド
データに合わせたスケーリング
データに合わせたスケーリング
ドメインに追加するデータ量が最初の検索インスタンスタイプの容量を超えると、Amazon
CloudSearch はより大きいインスタンスタイプに検索ドメインをスケーリングします。ドメインが最
大検索インスタンスタイプの容量を超えると、Amazon CloudSearch は複数の検索インスタンスに検
索インデックスを分割します(インデックスパーティションを保持するために必要な検索インスタン
スの数は、ドメインの幅と呼ばれることもあります)。
ドメイン内のデータ量が減少したときには、Amazon CloudSearch はドメインを縮小し、検索インス
タンスを少なくするか、より小さい検索インスタンスタイプにして、コストを最小限に抑えます。
Note
インデックス サイズに対応するためにドメインが拡張されていた場合、大量のドキュメント
を削除すると、次にインデックス全体を再構築するときに、ドメインが縮小されます。イン
デックスは定期的に自動再構築されますが、できる限り早く縮小するには、ドキュメントを
削除しているときに、明示的にインデックス作成を実行 (p. 95)します。
トラフィックに合わせたスケーリング
検索リクエストの量や複雑さが増すと、負荷を処理するためにより多くの処理能力が必要になりま
す。ドキュメントのアップロードの量が増加すると、ドメインの検索インスタンスの負荷も増加しま
す。検索インスタンスが最大負荷に達すると、Amazon CloudSearch は追加の処理能力を提供するた
めに重複した検索インスタンスをデプロイします(重複した検索インスタンスの数は、ドメインの深
さと呼ばれることもあります)。
トラフィックが減少した場合、Amazon CloudSearch は検索インスタンスを削除してコストを最小限
に抑えます。たとえば、新規ドメインの場合、ドキュメントの最初の急激な増加を処理するために拡
張し、データのアップロードが終了して更新の送信のみになったときには再び縮小することができま
す。
ドメインでトラフィックの急上昇が発生した場合、Amazon CloudSearch は追加の検索インスタンス
をデプロイします。ただし、新しいインスタンスをセットアップするには数分かかるため、新しいイ
ンスタンスがリクエストの処理を開始するまで、5xx エラーが増加する場合があります。5xx エラー
処理の詳細については、「エラー処理 (p. 142)」を参照してください。
検索リクエストのタイプと複雑さは全体的な検索パフォーマンスに影響し、場合によっては、ドメイ
ンを運用するのに必要な検索インスタンスの数を増大することに注意してください。小さなまたは単
一ドキュメントバッチを大量に送信すると、検索ドメインのパフォーマンスに影響を与えることがで
きます。詳細については、「Amazon CloudSearch での検索リクエストのパフォーマンスのチューニ
ング (p. 116)」を参照してください。
Amazon CloudSearch へのアクセス
Amazon CloudSearch にアクセスするには、Amazon CloudSearch コンソール、AWS SDK、または
AWS CLI を使用できます。
• Amazon CloudSearch コンソールを使用すると、簡単に検索ドメインを作成、設定、監視し、ド
キュメントのアップロード、およびテスト検索を実行できます。コンソールを使用すると最も簡単
に Amazon CloudSearch を使い始めることができます。さらにコンソールは、検索ドメインを継続
的に管理するための一元化されたコマンドセンターを提供します。
• AWS SDK は、すべての Amazon CloudSearch API オペレーションをサポートしているため、
ユーザーは希望するテクノロジーを使用して検索ドメインを簡単に管理し、対話することができま
す。SDK は、AWS の認証情報を使用して必要に応じて自動的にリクエストに署名します。
API Version 2013-01-01
6
Amazon CloudSearch 開発者ガイド
リージョンとエンドポイント
• AWS CLI はすべての Amazon CloudSearch API オペレーションをラップして、検索ドメインの作成
と設定、検索するデータのアップロード、および検索リクエストの送信のためのシンプルな方法を
提供します。AWS CLI は、AWS の認証情報を使用して必要に応じて自動的にリクエストに署名し
ます。
スタンドアロン Amazon CloudSearch コマンドラインツールは、ドキュメントバッチを生成し、
バッチの内容に基づいて自動的にインデックスオプションを設定する、高度なツールを提供していま
す。Amazon CloudSearch ツールのインストールの詳細については、「コマンドラインツールリファ
レンス (p. 144)」を参照してください。
Amazon CloudSearch のリージョンとエンドポイン
ト
Amazon CloudSearch では、設定サービスにアクセスするためのリージョンのエンドポイントと、ド
キュメントサービスや検索サービスにアクセスするためのドメイン固有のエンドポイントを提供しま
す。
検索ドメインを作成して管理するには、設定サービスを使用します。リージョン固有の設定サー
ビスエンドポイントの形式は、cloudsearch.region.amazonaws.com のようになります。
("cloudsearch.us-east-1.amazonaws.com" など)。サポートされているリージョンの最新のリ
ストについては、『AWS General Reference』 の「リージョンとエンドポイント」を参照してくださ
い。
Amazon CloudSearch の検索サービスとドキュメント サービスにアクセスするには、別のドメイン固
有のサービスエンドポイントを使用します。
• http://doc-domainname-domainid.us-east-1.cloudsearch.amazonaws.com - ドキュメン
トをアップロードするには、ドメインのドキュメントサービスエンドポイントを使用します。
• http://search-domainname-domainid.us-east-1.cloudsearch.amazonaws.com - 検索リ
クエストを送信するには、ドメインの検索エンドポイントを使用します。
Amazon CloudSearch リクエストの署名
使用する言語の SDK が AWS に用意されている場合は、その SDK を使用して Amazon CloudSearch
リクエストを送信することをお勧めします。AWS SDK を使用するほうが、Amazon CloudSearch API
を直接使用するよりも、リクエストの署名プロセスがきわめてシンプルで、大幅な時間の節約にな
ります。SDK は開発環境と容易に統合されるため、関連するコマンドへのアクセスが簡単です。ま
た、Amazon CloudSearch コンソールと AWS CLI を使用して、追加作業なしで署名されたリクエス
トを送信することもできます。
Amazon CloudSearch API を直接呼び出す場合は、自分のリクエストに署名する必要があります。設
定サービスのリクエストには常に署名が必要です。アップロード、検索、提案リクエストは、これ
らのサービスに対する匿名アクセスを設定していないかぎり、署名されている必要があります。リク
エストに署名するには、暗号化ハッシュ関数を使用してデジタル署名を計算します。この関数は入力
に基づいてハッシュ値を返します。入力には、リクエストのテキスト、およびシークレットアクセ
スキーが含まれます。ハッシュ関数から返されるハッシュ値をリクエストに署名として含めます。署
名は、リクエストの認証ヘッダーの一部です。Amazon CloudSearch は、リクエストを受け取ると、
リクエストの署名に使用されたものと同じハッシュ関数と入力を使用して署名を再計算します。再計
算された署名とリクエスト内の署名が一致した場合、Amazon CloudSearch はリクエストを処理しま
す。それ以外の場合、リクエストは拒否されます。
Amazon CloudSearch は、AWS 署名バージョン 4 を使用した認証をサポートします。詳細について
は、「Signature Version 4 Signing Process」を参照してください。
API Version 2013-01-01
7
Amazon CloudSearch 開発者ガイド
開始する前に
Amazon CloudSearch の使用開始
Amazon CloudSearch でデータの検索を開始するには、次の手順に従います。
• 検索ドメインの作成と設定
• 検索するデータのアップロードとインデックス作成
• ドメインへの検索リクエストの送信
このチュートリアルでは、Amazon CloudSearch 用の AWS マネジメントコンソールを使用して起動
し、実行する方法を示します。さらに簡単に開始できるように、ダウンロードと検証、検索ドメイ
ンへのアップロード、Amazon CloudSearch の動作を確認するための検索クエリの送信を実行でき
る、5,000 件の人気映画のタイトルのサンプルデータセットを作成しました。
AWS マネジメントコンソールとサンプルの映画データを使用すると、独自の検索ドメインを約 30 分
で起動し、実行できます。
開始するには、Get Signed Up (p. 8)。
トピック
• Amazon CloudSearch を開始する前に (p. 8)
• ステップ 1: Amazon CloudSearch ドメインを作成する (p. 9)
• ステップ 2: インデックス作成のためにデータを Amazon CloudSearch にアップロードす
る (p. 11)
• ステップ 3: Amazon CloudSearch ドメインを検索する (p. 12)
• ステップ 4: Amazon CloudSearch の Movies ドメインを削除する (p. 17)
Amazon CloudSearch を開始する前に
Amazon CloudSearch を使用するには、Amazon Web Services (AWS) アカウントが必要です。AWS
アカウントがあると、Amazon CloudSearch にアクセスできるほか、Amazon Simple Storage Service
(Amazon S3) や Amazon Elastic Compute Cloud (Amazon EC2) などの他の AWS サービスにアクセス
できます。その他の AWS サービスと同様に、お客様が使用する Amazon CloudSearch リソースに対
してのみ請求されます。サインアップは無料で、検索ドメインを作成するまで料金は発生しません。
API Version 2013-01-01
8
Amazon CloudSearch 開発者ガイド
ステップ 1: 検索ドメインを作成する
すでに AWS アカウントがあるお客様は、自動的に Amazon CloudSearch にサインアップされます。
コンソールにアクセスするには、IAM ユーザー名とパスワードを使用し、IAM サインインページ か
らAWS マネジメントコンソールにサインインします。IAM では、AWS アカウントでの AWS サー
ビスとリソースへのアクセスを安全に制御できます。 アクセスキーの作成の詳細については、AWS
General Reference の「How Do I Get Security Credentials?」を参照してください。
AWS アカウントを作成するには
1.
https://aws.amazon.com にアクセスして、[今すぐ申し込む] をクリックします。
2.
サインアップ手順に従います。Amazon CloudSearch の使用を開始する前に、支払情報を入力す
る必要があります。
ステップ 1: Amazon CloudSearch ドメインを作
成する
Amazon CloudSearch ドメインは、検索するデータコレクション、検索リクエストを処理する検索イ
ンスタンスに加えて、データにどのようにインデックスを作成し、データを検索するかを制御する設
定をカプセル化します。検索可能にするデータの各コレクションについて、個別の検索ドメインを作
成します。各ドメインについて、インデックス作成オプション(インデックスに含めるフィールドと
その使用方法を記述)、分析スキーム(個々のフィールドの言語固有のテキスト処理オプションを指
定)、式(検索結果のランク付け方法をカスタマイズするときに使用)、アクセスポリシー(ドメイ
ンのドキュメントおよび検索エンドポイントへのアクセスを制御)を設定します。
検索ドメインと対話して以下を実行します。
• インデックスおよび検索オプションを設定する
• インデックス作成のためにデータを送信する
• 検索を実行する
各ドメインに対しては、独自のエンドポイントを介して検索リクエストを送信します。たとえば、米
国東部(バージニア北部) リージョンに作成した movies というドメインのエンドポイントは次のよ
うになります。
search-movies-mtshfsu2rje7ywr66uit3dei4m.us-east-1.cloudsearch.amazonaws.com
検索ドメインを作成するときは、ドメインに一意の名前を指定します。ドメイン名は、3 文字以
上、28 文字以内で、先頭は英字または数字にする必要があります。使用できる文字は、a~z、0~9、
およびハイフン(-)です。デフォルトでは、新規ドメインは 米国東部(バージニア北部) リージョ
ンに作成されます。別のリージョンにドメインを作成するには、ドメインの作成時に明示的にリー
ジョンを指定する必要があります。
新しいドメインを設定するには、以下を指定する必要があります。
• 検索するデータのインデックス作成オプション。
• ドメインのドキュメントサービスおよび検索サービスのエンドポイントに対するアクセスポリ
シー。
このチュートリアルでは、Amazon CloudSearch コンソールを使用してドメインを作成し、対話的
する方法を示します。コマンドラインツールと API の使用方法については、「検索ドメインの作
成 (p. 27)」を参照してください。
API Version 2013-01-01
9
Amazon CloudSearch 開発者ガイド
ステップ 1: 検索ドメインを作成する
Important
作成しようとしているドメインは、ライブ環境で、ドメインを削除するまで、標準の Amazon
CloudSearch 使用料が発生します。Amazon CloudSearch の使用料については、Amazon
CloudSearch の詳細ページを参照してください。
movies ドメインを作成するには
1.
Amazon CloudSearch console at https://console.aws.amazon.com/cloudsearch/homeに移動しま
す。
2.
[Welcome to Amazon CloudSearch] ページで、[Create Your First Search Domain] をクリックし
ます。
3.
[NAME YOUR DOMAIN] ステップで、新しいドメインの名前を入力し、[Continue] をクリックし
ます。ドメイン名は、3 文字以上、28 文字以内で、先頭は英字または数字にする必要がありま
す。ドメイン名に含めることができる文字は、a~z(小文字)、0~9、および -(ハイフン)で
す。大文字およびアンダースコア(_)は使用できません。
4.
[CONFIGURE INDEX] ステップで、[Use a predefined configuration] をクリックし、[IMDB
movies (demo)] を選択して、[Continue] をクリックします。また、データのサンプルを分析し
て、自動的に検索ドメインを設定することもできます。
5.
[REVIEW INDEX CONFIGURATION] ステップで、設定するインデックス
フィールドを確認します。imdb-movie データについては、11 個のフィールド
(actors、directors、genres、image_url、plot、rank、rating、release_date、running_time_secs、title、year )
が自動的に設定されます。
Note
デフォルトで、各フィールドですべてのオプションが有効になっています。これは開発
時とテスト時には便利ですが、フィールドの使用方法に応じて各フィールドに設定した
オプションを微調整すると、インデックスのサイズを小さくすることができます。ドメ
インで 1 つのスモール検索インスタンスを使用する場合以外は、オプションをチューニ
ングすると、ドメインの実行コストを最小限に抑えるのに役立ちます。
インデックス作成オプションの確認が終わったら、[Continue] をクリックします。
6.
[SET UP ACCESS POLICIES] ステップで、[Recommended rules] をクリックし、[Continue] をク
リックします。推奨ルールでは、検索エンドポイントへのアクセスをすべての IP アドレスに対し
て許可し、ドキュメントサービスへのアクセスを指定した IP アドレスだけに制限します。
Important
検索ドメインのアクセスルールを設定しない場合は、Amazon CloudSearch コンソール
を介してドメインと対話することしかできません。デフォルトでは、ドキュメントサー
ビスと検索サービスのエンドポイントは、すべての IP アドレスをブロックするように設
定されます。
静的 IP アドレスを持たない場合は、IP アドレスが変更されるたびにコンピュータを再承認する
必要があることを忘れないでください。IP アドレスを動的に割り当てる場合は、おそらくネット
ワーク上の他のコンピュータとそのアドレスを共有することになります。つまり、IP アドレスを
許可する場合、その IP アドレスを共有するすべてのコンピュータが検索ドメインのドキュメント
サービスエンドポイントにアクセスできます。
7.
[CONFIRM] ステップで、ドメインの設定を確認し、[Confirm] をクリックしてドメインを作成し
ます。
8.
ドメインが作成されたら、[OK] をクリックして Create New Search Domain ウィザードを終了
し、ドメインのダッシュボードに移動します。
API Version 2013-01-01
10
Amazon CloudSearch 開発者ガイド
ステップ 2: インデックス作成の
ためにデータをアップロードする
新しいドメインを作成すると、Amazon CloudSearch はドメイン用のリソースを初期化します。この
処理に約 10 分かかることがあります。この初期化処理中、ドメインのステータスは LOADING にな
ります。ステータスが ACTIVE に変わると、データをアップロードして検索を開始できます。
ステップ 2: インデックス作成のためにデータを
Amazon CloudSearch にアップロードする
Amazon CloudSearch が検索可能なインデックスを構築してデプロイできるように、検索するデータ
をドメインにアップロードします。Amazon CloudSearch によるインデックス作成のためには、デー
タが JSON 形式または XML 形式である必要があります。Amazon CloudSearch コンソールでは、次
の種類のファイルが必要な JSON 形式または XML 形式に自動的に変換されます。
• カンマ区切り値(.csv)
• Adobe Portable Document Format(.pdf)
• HTML(.htm、.html)
• Microsoft Excel(.xls、.xlsx)
• Microsoft PowerPoint(.ppt、.pptx)
• Microsoft Word(.doc、.docx)
• テキストドキュメント(.txt)
CSV ファイルをアップロードするとき、Amazon CloudSearch は各行を個別に解析します。最初の行
はドキュメントフィールドを定義し、それ以降の各行は個別のドキュメントになります。他のすべて
のファイルの種類については、Amazon CloudSearch は 1 つのドキュメントを作成し、ファイルの内
容が 1 つのテキストフィールドにマッピングされます。ファイルにメタデータが使用可能な場合は、
メタデータが対応するドキュメントフィールドにマッピングされます。ドキュメントのメタデータか
ら生成されるフィールドはファイルの種類によって異なります。
サンプル IMDB の movies データはすでに JSON 形式になっています。
このチュートリアルでは、Amazon CloudSearch コンソールを使用してデータを送信する方法を示
しますが、コマンドラインツールでconvert (p. 64)およびupload documents (p. 90)を行った
り、documents/batch (p. 237) リソースを使用してドキュメントをアップロードしたりすること
もできます(5 MB を超えるデータをアップロードするには、コマンドラインツールまたは API を使
用する必要があります)。
サンプルデータを movies ドメインにアップロードするには
1.
2.
3.
Amazon CloudSearch console at https://console.aws.amazon.com/cloudsearch/homeに移動しま
す。
[Navigation] パネル で、movies ドメインの名前をクリックしてドメインのダッシュボードを表示
します。
ドメインのダッシュボードの上部にある [Upload Documents] ボタンをクリックします。
Note
[Upload Documents] ボタンは、ドメインのステータスが ACTIVE になると使用できま
す。
4.
5.
[DOCUMENT SOURCE] ステップで、[Predefined data] を選択し、[IMDB movies (demo)] を選択
して [Continue] をクリックします。
[REVIEW DOCUMENTS] ステップで、アップロードの概要を確認し、[Upload Documents] をク
リックして、インデックス作成のためにドメインにデータを送信します。
API Version 2013-01-01
11
Amazon CloudSearch 開発者ガイド
ステップ 3: ドメインを検索する
Note
データの形式がどのように設定されたかを確認するには、[Download the generated
document batch] をクリックします。独自のデータの準備に関する詳細については、
「データの準備 (p. 60)」を参照してください。
6.
[DOCUMENT SUMMARY] ステップで、[Finish] をクリックしてドメインのダッシュボードに戻り
ます。
これで完了です。完全に機能する Amazon CloudSearch ドメインの準備ができたので、検索を開始で
きます。更新は受信された順序で継続的に適用されるため、すぐにドメインの検索を開始できます。
ステップ 3: Amazon CloudSearch ドメインを検
索する
Amazon CloudSearch コンソールで検索テスターを使用してサンプル検索リクエストを送信し、その
結果を表示できます。ウェブブラウザから、または cURL を使用して、サンプル検索リクエストを送
信することもできます。アプリケーションで、任意の HTTP ライブラリを使用して、検索トラフィッ
クを Amazon CloudSearch ドメインに送信できます。
検索テスターによる検索
Amazon CloudSearch コンソールの検索テスターを使用すると、サポートされるクエリパーサー
(simple、structured、lucene、dismax)のいずれかを使用してサンプルの検索リクエストを送信す
ることができます。デフォルトでは、リクエストは simple クエリパーサーを使用して処理されます。
指定パーサーに対するオプションの指定、フィルタリング、結果の並べ替え、設定されたファセッ
トの参照が可能です。検索ヒットは、検索結果で自動的にハイライト表示されます。実行方法の詳
細については、「Amazon CloudSearch で検索ヒットをハイライト (p. 127)」を参照してくださ
い。[Search] フィールドに用語を入力する際に、サジェスタを選択し、候補を取得することもできま
す。(候補を取得するには、あらかじめサジェスタを設定する必要があります。詳細については、
「Amazon CloudSearch での自動入力候補の取得 (p. 128)」を参照してください。)
デフォルトでは、自動的に生成された関連性スコア _score に従って、結果がソートされます。結
果のランク付け方法のカスタマイズについて詳しくは、「Amazon CloudSearch での結果のソー
ト (p. 133)」を参照してください。
ドメインを検索するには
選択したクエリパーサーに追加のオプションを指定して、クエリで使用できるデフォルトの演
算子とコントロールを設定することができます。詳細については、「検索リクエストのパラメー
タ (p. 247)」を参照してください。
1.
Amazon CloudSearch console at https://console.aws.amazon.com/cloudsearch/homeに移動しま
す。
2.
[Navigation]パネルで、映画ドメインの名前をクリックし、[Run a Test Search] リンクをクリック
します。
3.
単純なテキストの検索を実行するには、検索するテキストを入力し、[Go] をクリックします。デ
フォルトでは、すべての text および text-array フィールドが検索されます。
4.
特定のフィールドを検索するには、[More Parameters] リンクをクリックし、[Search Fields]
フィールドに、検索するフィールドをコンマで区切ったリストを入力します。キャレット(^)を
使用して各フィールドに重みを追加し、検索結果での各フィールドの相対的な重要度を制御する
ことができます。たとえば、title^5, description を指定すると、一致する各ドキュメント
API Version 2013-01-01
12
Amazon CloudSearch 開発者ガイド
ウェブブラウザからの検索リクエストの送信
の関連性スコアを計算するときに、title フィールド内のヒットに description フィールド内
のヒットの 5 倍の重みを付加します。
5.
構造化クエリ構文を使用するには、[Query Parser] メニューから [Structured] を選択しま
す。structured クエリパーサーを選択したら、[Search] フィールドに構造化クエリを入力し、[Go]
をクリックします。たとえば、2000 年以前にリリースされた、タイトルに star を含むすべての
映画を検出するには、次のように入力します。(and title:'star' year:{,2000])。詳細に
ついては、「複合クエリの作成 (p. 101)」を参照してください。Lucene または DisMax のクエ
リを送信するには、適切なクエリパーサーを選択します。
ドメインの検索エンドポイントに送信された HTTP 検索リクエストと Amazon CloudSearch によって
返されたレスポンスを表示するには、表示するレスポンスフォーマットに対応する [view raw] リンク
をクリックします。
リクエスト URL をコピーして貼り付け、リクエストを送信して、ウェブブラウザから応答を表示する
こともできます。リクエストは、HTTP または HTTPS 経由で送信できます。
ウェブブラウザからの検索リクエストの送信
任意のウェブブラウザから検索エンドポイントに検索リクエストを直接送信できます。任意のクエリ
パーサー(simple、structured、lucene、または dismax)を使用し、さまざまなオプションを指定し
て、検索の制約、ファセット情報のリクエスト、ランク付けのカスタマイズ、および結果で返される
情報の制御を行うことができます。
たとえば、movies ドメインを検索し、利用できるすべての Star Wars 映画のタイトルを取得するに
は、検索エンドポイントに次の検索文字列を追加します(2013-01-01 は API のバージョンであり、指
定する必要があります)。
/2013-01-01/search?q=star+wars&return=title
Note
ドメインの検索エンドポイントは、ドメインのダッシュボードに表示されます。AWS マネジ
メントコンソールから検索を実行して、生のリクエストと応答を表示し、[Search Request]
フィールドからリクエストの URL をコピーすることもできます。ドメインの検索およびド
キュメントのサービスエンドポイントは、ドメインが存在している間変わりません。
デフォルトでは、Amazon CloudSearch は JSON 形式で応答を返します。また、format パラメータ
を format=xml のように指定して、検索結果を XML 形式で取得できます(エラーは、発生した場所
によって、JSON または XML で返すことができます)。
数値フィールドの検索
構造化クエリ構文 q.parser=structured を使用して、特定の数値属性を持つドキュメントを 見つ
けることができます。任意の数値フィールド(double、double-array、int、int-array)内の
正確な値または値の範囲を検索できます。範囲を検索するには、上限と下限をカンマで区切って指定
し、範囲を角括弧または中括弧で囲みます。上限と下限を含める場合は角括弧([、])を使用し、上限
と下限を除外する場合は中括弧({、})を使用します。以下に例を示します。
• year:2000 は、year フィールドの値が 2000 であるドキュメントに一致します。
• year:[2000,} は、year フィールドの値が 2000 以上であるドキュメントに一致します
• year:{,2000] は、year フィールドの値が 2000 以下であるドキュメントに一致します
• year:[2000,2011]は、year フィールドの値が 2000 ~ 2011(両端の値を含む)のドキュメント
に一致します。
API Version 2013-01-01
13
Amazon CloudSearch 開発者ガイド
検索結果のソート
• year:{2000,2011} は、year フィールドの値が 2000 ~ 2011(両端の値を含まない)のドキュメ
ントに一致します
日付フィールドで特定の日付または日付範囲を検索することもできますが、次
のように各日付文字列を一重引用符で囲む必要があります。release_date:
['2000-01-01T00:00:00Z','2011-01-01T00:00:00Z']
たとえば、次の構造化クエリでは、title フィールドに "star" が含まれている 2000 年よりも前にリリー
スされた一致する映画がすべて検出され、それぞれのタイトル、年、および関連性スコアが返されま
す。
q=(and title:'star' year:
{,2000])&q.parser=structured&return=title,year,_score
応答には、リクエストのステータス、一致するドキュメントの数、各ヒットについてリクエストされ
たフィールドが表示されます。
{
"status": {
"rid": "hLPckLsoEQoELQo=",
"time-ms": 2
},
"hits": {
"found": 15,
"start": 0,
"hit": [
{
"id": "tt0076759",
"fields": {
"title": "Star Wars",
"year": "1977",
"_score": "5.7601414"
}
},
.
.
.
{
"id": "tt0088170",
"fields": {
"title": "Star Trek III: The Search for Spock",
"year": "1984",
"_score": "4.2371693"
}
}
]
}
}
検索クエリの作成の詳細については、「Amazon CloudSearch でのデータの検索 (p. 98)」を参照し
てください。
検索結果のソート
デフォルトで、Amazon CloudSearch は、自動的に生成された関連性の _score に従って検索結果を
ソートします。結果のランク付けの方法を変更するには、検索リクエストで sort パラメータを使用し
API Version 2013-01-01
14
Amazon CloudSearch 開発者ガイド
ファセット情報の取得
て、ランク付けに使用するフィールドまたは式を指定します(式は、一致するドキュメントのセット
内の各ドキュメントについて評価できるカスタム数値式です。独自の式の定義については、「式の設
定 (p. 134)」を参照してください)。
sort パラメータでテキストフィールドを指定した場合、結果はそのフィールドのアルファベット順に
ソートされます。たとえば、movies ドメインの検索結果をタイトルのアルファベット順にソートする
には、クエリ文字列に &sort=title asc を追加します。
2013-01-01/search?q=(and genres:'Sci-Fi' year:
{,2000])&q.parser=structured&return=title,year&sort=title asc
ソート方向は、asc(昇順)または desc(降順)で明示的に指定する必要があることに注意してく
ださい。アルファベット順にソートすると、Amazon CloudSearch は Unicode のコードポイントで並
べ替えます。つまり、数字が文字の前に、大文字が小文字の前に来ます。数は文字列としてソートさ
れ、たとえば 10 は 2 の前に来ます。
同様に、sort パラメータで整数フィールドを指定して、結果を数値でソートすることができます。
フィールドまたは式のカンマ区切りリストを指定する場合は、最初のフィールドまたは式はプライマ
リソート条件として使用され、2 番目はセカンダリソート条件として使用され、以降も同様です。
結果のランク付けの詳細については、「Amazon CloudSearch での結果のソート (p. 133)」を参照し
てください。
ファセット情報の取得
ファセットとは、検索結果の絞り込みとフィルタ処理を行うために使用するカテゴリを表すインデッ
クスフィールドです。Amazon CloudSearch に検索リクエストを送信すると、ファセット情報をリク
エストして、ファセットで同じ値を共有するヒット数を調べることができます。この情報を検索結
果と共に表示して、それを利用して対話的に検索結果を絞り込むことができます。(これは多くの場
合、ファセットナビゲーションまたはファセット検索と呼ばれます)。
ファセットは、ドメイン設定でファセットが有効になっている任意の日付、リテラル、数値フィー
ルドのいずれかです。Amazon CloudSearch は、ファセットごとに同じ値を共有するヒット数を計算
します。ファセット値の特定のサブセットについてファセット数を計算するにバケットを定義できま
す。ファセットの結果には、一致があるバケットのみが含まれています。
検索結果を使用してファセット数を取得するには
•
ファセットを計算するフィールドを指定するには、facet.FIELD オプションを使用します。サ
ンプル IMDB の movies データの場合、次のフィールドについてファセットが有効になってい
ます。genres、rank、rating、release_date、running_time_secs、year。ファセッ
トオプションは、JSON オブジェクトとして指定されます。JSON オブジェクトが空の場合
(facet.FIELD={})、ファセット数はすべてのフィールド値について計算され、ファセットは
ファセット数によってソートされ、上位 10 個のファセットが結果で返されます。
q=star&return=title&facet.genres={}
ファセットは、結果のヒットの下に表示されます。
facets": {
"genres": {
"buckets": [
{"value": "Comedy","count": 41},
API Version 2013-01-01
15
Amazon CloudSearch 開発者ガイド
検索ハイライトの取得
.
.
.
{"value": "Sport", "count": 7}
]
}
}
オプションを指定することによって、選択したフィールド値のファセットの計算、結果に含めるファ
セット値の最大数の指定、ファセットのソート方法の制御を行うことができます。
選択したフィールド値のファセット数を計算するバケットを定義するには、buckets オプションを使
用します。たとえば、次のリクエストは、year フィールドのファセット数を 10 年ごとにソートしま
す。
q=star&facet.year={buckets:["[1970,1979]","[1980,1989]","[1990,1999]"]}
これによって、ファセット数を 3 つの指定された範囲に制限します。
"facets": {
"year": {
"buckets": [
{"value": "[1970,1979]", "count": 3},
{"value": "[1980,1989]","count": 7},
{"value": "[1990,1999]","count": 12}
]
}
}
ファセットオプションの指定の詳細については、「Amazon CloudSearch でファセット情報を取得し
て使用 (p. 120)」を参照してください。
検索ハイライトの取得
検索ハイライトは、フィールド内で検索用語が発生する場所を示すテキストまたはテキスト配列
フィールドの一部です。
検索結果と共にハイライト情報を取得するには
•
ハイライトを取得するテキストまたはテキスト配列フィールドを指定するに
は、highlight.FIELD オプションを使用します。このフィールドは、ドメインのイ
ンデックス作成オプションでハイライトが有効になっている必要があります。サンプル
IMDB の movies データの場合、次のフィールドについてハイライトが有効になっていま
す。actors、directors、plot、title。ハイライトオプションは、JSON オブジェクトと
して指定されます。JSON オブジェクトが空である場合(highlight.FIELD={})、Amazon
CloudSearch では検索用語のすべての出現箇所を HTML の強調タグで囲む(<em>term</em>)
ことでハイライトし、抜粋は HTML として返されます。
q=title:'star'&q.parser=structured&return=_no_fields&highlight.title={}
ハイライト情報は、各検索ヒットと共に含まれています。
hits": {
"found": 29,
API Version 2013-01-01
16
Amazon CloudSearch 開発者ガイド
ステップ 4: Movies ドメインを削除する
"start": 0,
"hit": [
{
"id": "tt0796366",
"highlights": {
"title": "<em>Star</em> Trek"
}
},
.
.
.
{
"id": "tt2488496",
"highlights": {
"title": "<em>Star</em> Wars: Episode VII"
}
}
]
}
ハイライトオプションの指定の詳細については、「Amazon CloudSearch で検索ヒットをハイライ
ト (p. 127)」を参照してください。
ステップ 4: Amazon CloudSearch の Movies ドメ
インを削除する
movies ドメインの試用が終了したら、追加使用料が発生しないように削除する必要があります。
Important
ドメインを削除すると、ドメインに関連付けられているインデックスが削除され、ドメイン
のドキュメントおよび検索エンドポイントが完全にオフラインになります。
imdb-movies ドメインを削除するには
1.
Amazon CloudSearch console at https://console.aws.amazon.com/cloudsearch/homeに移動しま
す。
2.
[Navigation] パネルで、movies ドメインの名前をクリックして、ドメインのダッシュボードを表
示します。
3.
ドメインダッシュボードの最上部にある [Delete this Domain] ボタンをクリックします。
4.
[Delete Domain] ダイアログボックスで、[Delete the domain] オプションを選択し、[OK] をク
リックしてドメインとそのすべてのデータを完全に削除します。
Note
ドメインとリソースを削除するには、15 分ほどかかる場合があります。それまでの間、ドメ
インのステータスは BEING DELETED になります。
次のステップが分からない場合は、「Amazon CloudSearch の新規ユーザーである場合 (p. 2)」で
は、『Amazon CloudSearch 開発者ガイド』の他の部分の内容について説明しています。Amazon
CloudSearch クエリ言語の詳細については、「Amazon CloudSearch でのデータの検索 (p. 98)」を
参照してください。独自のデータでドメインをセットアップする準備ができている場合は、「データ
API Version 2013-01-01
17
Amazon CloudSearch 開発者ガイド
ステップ 4: Movies ドメインを削除する
の準備 (p. 60)」および「Amazon CloudSearch ドメインにデータをアップロード (p. 90)」を参
照してください。
API Version 2013-01-01
18
Amazon CloudSearch 開発者ガイド
2013-01-01 ドメインの作成
Amazon CloudSearch 2013-01-01
API への移行
Amazon CloudSearch 2013-01-01 API には、複数言語のサポート、結果での検索用語の強調表示、
候補の取得などのいくつかの新機能が用意されています。これらの機能を使用するには、新しい
2013-01-01 検索ドメインを作成して設定し、2013-01-01 データ形式を使用して新しいドメインを設
定するようにデータパイプラインを変更した後、2013-01-01 リクエスト形式でリクエストを送信する
ようにクエリパイプラインを更新します。この移行ガイドでは、API の変更点の概要を示し、アプリ
ケーションに影響を与える可能性の高い API について説明しています。
2013-01-01 Amazon CloudSearch ドメインの作
成
2013-01-01 API のリリース以前に Amazon CloudSearch ドメインを作成していた場合、新しいドメ
インを作成するときに、使用する API バージョンを選択できます。コンソールで 2013-01-01 ドメイ
ンを作成するには、Create Domain ウィザードで 2013-01-01 バージョンを選択します。コマンドラ
インから 2013-01-01 ドメインを作成するには、AWS CLI をダウンロードしてインストールし、aws
cloudsearch create-domain コマンドを実行します。
Note
2013-01-01 ドメインを作成して対話するには、AWS CLI ツールを使用する必要がありま
す。2011-02-01 ドメインを作成して対話するには、v1 ツールを使用する必要があります。
コマンドラインツールのインストールと使用方法の詳細については、「コマンドラインツールリファ
レンス (p. 144)」を参照してください。
2013-01-01 Amazon CloudSearch ドメインの設
定
コンソール、コマンドラインツール、または AWS SDK を使用して、2013-01-01 ドメインを設定でき
ます。2013-01-01 ドメインは、複数の新しい設定オプションをサポートしています。
• 分析スキーム - 分析スキームを設定して、text および text-array フィールドの言語固有のテキ
スト処理オプションを指定します。Amazon CloudSearch は、33 の言語をサポートすると共に、多
API Version 2013-01-01
19
Amazon CloudSearch 開発者ガイド
2013-01-01 ドメインの設定
言語フィールドのオプションをサポートするようになりました。詳細については、「分析スキーム
の設定 (p. 73)」を参照してください。サポートされる言語の完全なリストについては、「サポー
トされている言語 (p. 83)」を参照してください。
• 可用性オプション - マルチ AZ オプションを有効にして、サービス中断が発生した場合に可用性を
確保するために、ドメインを 2 番目のアベイラビリティーゾーンに拡張できます。詳細について
は、「可用性オプションの設定 (p. 44)」を参照してください。
• スケーリングオプション - 必要なインスタンスタイプと必要なレプリケーション数を設定して、
アップロードや検索の処理能力の向上、検索リクエストの高速化、耐障害性の向上を実現できま
す。詳細については、「スケーリングオプションの設定 (p. 41)」を参照してください。
• サジェスタ - サジェスタを設定してオートコンプリート機能を実装できます。詳細については、
「Amazon CloudSearch のサジェスタの設定 (p. 128)」を参照してください。
Amazon CloudSearch 設定サービスへのアクセスは、IAM によって管理され、特定の設定アクショ
ンへのアクセスを制御できるようになりました。Amazon CloudSearch ARN も変更されたことに
注意してください。ドメインのドキュメントエンドポイントおよび検索エンドポイントへのアク
セスは、Amazon CloudSearch 設定サービスによって管理されます。詳細については、「Amazon
CloudSearch のアクセス設定 (p. 30)」を参照してください。
2013-01-01 ドメインは、拡張された一連のインデックス作成オプションもサポートします。
• 分析スキーム - 各 text および text-array フィールドについて分析スキームを指定することに
より、フィールドごとに特定の言語固有のテキスト処理を設定します。詳細については、「分析ス
キームの設定 (p. 73)」を参照してください。
• フィールドの型 - Amazon CloudSearch では、次の11 のフィールドの型をサポートするようになり
ました。
• date - タイムスタンプが含まれます。日付と時刻は、IETF RFC3339: yyyy-mm-ddT00:00:00Z に
従って、UTC(協定世界時)で指定されます。UTC 形式で、たとえば、1970 年 8 月 23 日午後 5
時は、1970-08-23T17:00:00Z となります。
• date-array - 複数の値を含むことができる date 型フィールド。
• double - 倍精度 64 ビット浮動小数点値が含まれます。
• double-array - 複数の値を含むことできる double 型フィールド。
• int - 64 ビット符号付き整数値が含まれます。
• int-array - 複数の値を含むことができる int 型フィールド。
• latlon - 緯度と経度の値のペアとしての位置が保存されます。
• literal - 正確な一致を可能にする識別子またはその他のデータが含まれます。
• literal-array - 複数の値を含むことができる literal 型フィールド。
• text - 任意の英数字データが含まれます。
• text-array - 複数の値を含むことができる text 型フィールド。
• 強調表示 - フィールドの強調表示オプションを有効にすると、そのフィールド内で検索用語が出現
する箇所を示す抜粋を取得できます。詳細については、「Amazon CloudSearch で検索ヒットをハ
イライト (p. 127)」を参照してください。
• ソース - あるフィールドから別のフィールドにデータをコピーするために、フィールドのソースを
指定できます。フィールドに異なるオプションを設定することにより、同じソースデータを複数の
方法で使用できます。
2013-01-01 ドメインを設定する場合、重要な点がいくつかあります。
• デフォルトでは、フィールドを追加すると、そのフィールド型で使用できるすべてのオプションが
有効になります。これは開発およびテストでは便利ですが、不要なオプションを無効にすることに
よって、インデックスのサイズを縮小し、パフォーマンスを向上させることができます。
• 複数値フィールドとして個別の配列型フィールドを使用する必要があります。
• ソートを有効にすることができるのは、単一値フィールドのみです。
API Version 2013-01-01
20
Amazon CloudSearch 開発者ガイド
新しい設定サービスのアクションとオプション
• 強調表示を有効にすることができるのは、text フィールドと text-array フィールドのみです。
• text フィールドと text-array フィールド以外のすべてのフィールドでファセットを有効にする
ことができます。
• リテラルフィールドで、大文字と小文字が区別されるようになりました。
• 浮動小数点値を整数として保存する必要がなくなりました。double フィールドを使用します。
• 新しい latlon フィールド型を使用して位置を保存できます。詳細については、「Amazon
CloudSearch での地理的位置による検索および結果のランク付け (p. 109)」を参照してください。
• int フィールドは 64 ビット符号付き整数です。
• デフォルトの検索フィールドを設定する代わりに、検索リクエストで q.options パラメータを使
用して検索するフィールドを指定できます。q.options パラメータによって、各フィールドの加重
値を指定することもできます。
• 式をソートおよび設定するときには、_score という名前でデフォルトの関連性スコアを参照しま
す。関連性アルゴリズムの変更により、計算されたスコアは、2011-02-01 API の下でのスコアとは
異なります。詳細については、「式の設定 (p. 134)」を参照してください。
• 式で、logn、atan2、haversin の各関数、および _score(テキスト関連性スコ
ア)、_time(エポック時間)の各変数がサポートされるようになりました。latlon フィールド
に位置を保存する場合、緯度と経度を値を、FIELD.latitude と FIELD.longitude として参照
できます。式で int フィールドと double フィールドの両方を参照することもできます。サポート
されなくなった関数として、cs.text_relevance、erf、lgamma、rand、および time がありま
す。詳細については、「式の設定 (p. 134)」を参照してください。
2013-01-01 ドメインのインデックス作成オプションの設定の詳細については、「インデックスフィー
ルドの設定 (p. 66)」を参照してください。可用性オプション、スケーリングオプション、テキ
スト処理オプション、サジェスタ、および式の設定の詳細については、「検索ドメインの作成と管
理 (p. 27)」を参照してください。
新しい Amazon CloudSearch 設定サービスのアク
ションとオプション
2013-01-01 設定サービス API に以下のアクションが追加されました。
• DefineAnalysisScheme
• DefineExpression
• DefineSuggester
• DeleteAnalysisScheme
• DeleteExpression
• DeleteSuggester
• DexcribeAnalysisSchemes
• DescribeAvailabilityOptions
• DescribeExpressions
• DescribeScalingParameters
• DescribeSuggesters
• ListDomainNames
• UpdateAvailabilityOptions
• UpdateScalingParameters
インデックスフィールド、アクセスポリシー、およびサジェスタの describe アクション
に、deployed オプションが追加されました。アクティブな設定を表示し、保留中の変更を除外する
には、deployed オプションを true に設定します。
API Version 2013-01-01
21
Amazon CloudSearch 開発者ガイド
サポートされなくなった設定サー
ビスのアクションとオプション
サポートされなくなった Amazon CloudSearch 設定
サービスのアクションとオプション
以下のアクションは、2013-01-01 設定サービス API ではサポートされていません。
• DefineRankExpression
• DescribeRankExpression
• DeleteRankExpression
• DescribeDefaultSearchField
• DescribeStemmingOptions
• DescribeStopwordOptions
• DescribeSynonymOptions
• UpdateDefaultSearchField
• UpdateStemmingOptions
• UpdateStopwordOptions
• UpdateSynonymOptions
2013-01-01 Amazon CloudSearch ドメインへの
データのアップロード
2013-01-01 API では、ドキュメントのバージョンを指定する必要がなくなりました。更新は受信し
た順序で適用されます。また、ドキュメントごとに lang 属性を指定する必要もありません。それぞ
れの text フィールドや text-array フィールドの分析スキームを設定することにより、言語固有
のテキスト処理を制御します。cs-import-documents コマンドを使用して、2011-02-01 バッチを
2013-01-01 形式に変換できます。
2013-01-01 ドメインにデータをアップロードするには、次のようにする必要があります。
• ドキュメントバッチから version 属性と lang 属性を省略します。cs-import-documents を使
用して、2011-02-01 SDF バッチを 2013-01-01 形式に変換できます。
• すべてのドキュメントフィールドがドメイン用に設定されたインデックスフィールドに対応してい
ることを確認します。認識されないフィールドは無視されなくなり、エラーが生成されます。
• 2013-01-01 ドメインのドキュメントエンドポイントにドキュメントバッチを投稿しま
す。2013-01-01 API バージョンを指定する必要があることに注意してください。たとえば、
次のリクエストは、data1.json に含まれるバッチを doc-movies-123456789012.useast-1.cloudsearch.amazonaws.com エンドポイントに投稿します。
curl -X POST --upload-file data1.json doc-movies-123456789012.us-east-1.
cloudsearch.amazonaws.com/2013-01-01/documents/batch --header "Content-Type:
application/json"
2013-01-01 API では、アップロードの処理能力を向上させるために、ドメインの事前スケーリング
をサポートしています。アップロードするデータが大量にある場合は、ドメインのスケーリングオプ
ションを設定し、必要な大きさのインスタンスタイプを選択します。より大きいインスタンスタイプ
に移行すると、バッチを並行してアップロードすることができ、データのインデックス作成にかかる
時間を短縮できます。詳細については、「スケーリングオプションの設定 (p. 41)」を参照してくだ
さい。
データの形式の詳細については、「データの準備 (p. 60)」を参照してください。
API Version 2013-01-01
22
Amazon CloudSearch 開発者ガイド
2013-01-01 ドメインの検索
2013-01-01 Amazon CloudSearch ドメインの検
索
既存の Amazon CloudSearch 検索ドメインを 2013-01-01 API に移行するために必要な作業の多く
は、2013-01-01 互換の検索リクエストを送信するためのクエリパイプラインの更新です。
• すべてのリクエストで 2013-01-01 API バージョンを使用します。
• すべてのリクエストで検索条件を指定するには、q パラメータを使用します。bq パラメータ
はサポートされなくなりました。構造化(ブール)検索構文を使用するには、リクエストで
q.parser=structured を指定します。
• 検索リクエスト内でパラメータを繰り返すことはできません。
• ワイルドカード文字(*)は、simple クエリパーサーを使用する場合にのみサポートされます。構造
化クエリパーサーを使用して、プレフィックスマッチングを実行するには、prefix 演算子を使用
します。たとえば、q=(prefix 'oce')&q.parser=structured と指定します。
• 検索リクエストでドキュメント ID フィールドを参照するには、フィールド名 _id を使用します。
フィールド名 docid はサポートされなくなりました。
• フィールドで指定された範囲内の値を検索するには、range 演算子を使用します。filter 演算子
はサポートされなくなりました。
• 日付や latlon フィールドに保存されている位置など、値の範囲を検索するには、新しい範囲構文
を使用します。二重ドット(..)表記はサポートされなくなりました。上限と下限をカンマ(,)で
区切り、範囲を角括弧または中括弧で囲みます。角括弧([、])は境界が含まれることを示し、中括
弧({、})は境界を除外します。たとえば、year:2008..2011 は year:[2008,2011] と表され
るようになりました。year:..2011 などの無制限な範囲は、year:{,2011] のように表されるよ
うになりました。
• フィールドで特定の値を検索するには、term 演算子を使用します。field 演算子はサポートされ
なくなりました。
• フィールドの加重を指定するには、q.options パラメータを使用します。cs.text_relevance
関数はサポートされなくなりました。たとえば、q.options={fields:
['title^2','plot^0.5']} と指定します。
• 一致するドキュメントのスコア化およびソートの方法に影響を与えることなく、結果をフィルタす
るには、fq パラメータを使用します。
• プレフィックスパラメータでは、expr.NAME、facet.FIELD、highlight.FIELD のように、区
切り文字としてハイフン(-)ではなく、ドット(.)を使用します。
• すべてのファセットオプションを指定するには、facet.FIELD パラメータを使用します。facetFIELD-top-N、facet-FIELD-sort、および facet-FIELD-constraints パラメータはサポー
トされなくなりました。
• ソートに使用する式またはフィールドを指定するには、sort パラメータを使用します。sort パラ
メータでは、明示的にソート方向を指定する必要があります。("sort=rank asc, date desc"
など)。rank パラメータはサポートされなくなりました。
• 検索リクエストで式を定義するには、expr.NAME を使用します。rank-RANKNAME パラメータはサ
ポートされなくなりました。
• 結果を XML 形式で取得するには、format=xml を使用します。result-type パラメータはサポー
トされなくなりました。
2013-01-01 検索 API は、複数の新しい機能もサポートします。
• 用語の増強 - クエリの一部の重要度を他の部分よりも高くするには、構造化クエリで boost オプ
ションを使用します。詳細については、「複合クエリの作成 (p. 101)」を参照してください。
• あいまいフレーズ検索 - text または text-array フィールドで複数の用語を検索し、相互に指定
された範囲内に用語を含むドキュメントを見つけるには、構造化クエリで near 演算子を使用しま
す。simple クエリパーサーで、~ 演算子と値をフレーズに追加することにより、あいまいフレーズ
API Version 2013-01-01
23
Amazon CloudSearch 開発者ガイド
新しい検索パラメータとオプション
検索を実行することもできます。詳細については、「フレーズの検索 (p. 105)」を参照してくださ
い。
• あいまい検索 - ~ 演算子を使用して、simple クエリパーサーであいまい検索を実行できます。異
なっていても一致と見なされる用語の数を指定するには、~ 演算子と値を用語に追加します。詳細
については、「個々の用語の検索 (p. 103)」を参照してください。
• 強調表示 - 特定のフィールドで一致を強調表示するには、highlight.FIELD パラメータを使用し
ます。詳細については、「Amazon CloudSearch で検索ヒットをハイライト (p. 127)」を参照して
ください。
• オートコンプリート - オートコンプリートされたクエリと、それらが見つかったドキュメントのリ
ストを取得するには、サジェスタを設定し、suggester リソースにリクエストを送信します。詳細
については、「Amazon CloudSearch での自動入力候補の取得 (p. 128)」を参照してください。
• 部分的な検索結果 - 1 つまたは複数のインデックスパーティションが使用できないときに部分的
な結果を取得するには、partial=true パラメータを使用します。デフォルトでは、Amazon
CloudSearch はすべてのパーティションにクエリを実行できる場合にのみ結果を返します。
• ディープページ分割 - 結果セットが大きい場合に、結果をページ分割するには、cursor パラメー
タを使用します。詳細については、「結果のページ分割 (p. 139)」を参照してください。
• すべてのドキュメントが一致 - インデックス内のすべてのドキュメントを取得するには、matchall
構造化クエリ演算子を使用します。
• 新しいクエリパーサー - simple または構造化パーサーの代わりに、Lucene または DisMax を選択す
るには、q.parser パラメータを使用します(q.parser=lucene または q.parser=dismax)。
検索時の動作もいくつか変更されています。
• 大文字と小文字が連続している場合、文字列はトークン分割されなくなりました。また、ピリ
オドの後にスペースがない場合、ピリオドは文字列の一部と見なされます。詳細については、
「Amazon CloudSearch でのテキスト処理 (p. 82)」を参照してください。
• リテラルフィールドで、大文字と小文字が区別されるようになりました。
• 検索レスポンスに、ランク、一致式、または CPU 時間は含まれなくなりました。返されるステー
タス情報は、リソース ID(rid)と処理時間(time-ms)のみです。
• int フィールドのファセット情報を取得するとき、min 値と max 値が返されなくなりました。
データの検索の詳細については、「Amazon CloudSearch でのデータの検索 (p. 98)」および「検索
API リファレンス (p. 245)」を参照してください。
Amazon CloudSearch 2013-01-01 検索 API の新し
いパラメータとオプション
2013-01-01 検索 API に以下のパラメータが追加されました。
• cursor.FIELD
• expr.NAME
• facet.FIELD
• format
• fq
• highlight.FIELD
• partial
• pretty
• q.options
• q.parser
API Version 2013-01-01
24
Amazon CloudSearch 開発者ガイド
サポートされなくなった検索パラメータとオプション
• return
• sort
あいまい検索およびあいまいフレーズ検索をサポートするために、シンプルなクエリ言語に ~ 演算子
が追加されました。
構造化クエリ言語に以下の演算子が追加されました。
• boost
• matchall
• near
• phrase
• prefix
• range
• term
サポートされなくなった Amazon CloudSearch 検索
パラメータとオプション
2013-01-01 検索 API では、以下のパラメータはサポートされなくなりました。
• bq
• facet-FIELD-top-N
• facet-FIELD-sort
• facet-FIELD-constraints
• rank
• rank-RANKNAME
• return-fields
• result-type
• t-FIELD
以下の演算子とショートカットは構造化クエリではサポートされなくなりました。
• field
• フィルター
• • |
• +
• *
Amazon CloudSearch 2013-01-01 の更新された
制限事項
この表は、Amazon CloudSearch の制限事項の変更および追加をまとめたものです。Amazon
CloudSearch の制限事項の完全なリストについては、「制限 (p. 273)」を参照してください。
API Version 2013-01-01
25
Amazon CloudSearch 開発者ガイド
更新された制限事項
変更
概要
予約名
score が唯一の予約名です。
制限のない戻りデータ
テキストフィールドから返されるデータは 2 KB で切り捨て
られなくなりました。ただし、最大ドキュメントサイズが 1
MB であることに注意してください。
ステミング、ストップワード、また
はシノニムのディクショナリに制限
がなくなりました。
ステミング、ストップワード、およびシノニムのディク
ショナリは、分析スキームで設定され、分析スキーム定義
のサイズに制限はありません。
フィールドの値の最大数
配列型フィールドには、最大 1000 個の値を含めることがで
きます。
フィールドサイズ
literal フィールドの最大サイズは、4096 の Unicode
コードポイントです。
int フィールドの範囲
int フィールドには、-9,223,372,036,854,775,808 ~
9,223,372,036,854,775,807(この値を含む)の範囲の値を
含めることができます。
強調表示の最大数
強調表示できる検索用語の最大出現回数は 5 です。
サジェスタの最大数
ドメインで設定できるサジェスタの最大数は 10 です。
同時に取得できる最大ヒット数
同時に取得できる最大ヒット数は 10,000 です。size パラ
メータには、0 ~ 10000 の範囲の値を含めることができま
す。
API Version 2013-01-01
26
Amazon CloudSearch 開発者ガイド
検索ドメインの作成
Amazon CloudSearch ドメインの作
成と管理
検索ドメインには、検索するデータ、データの検索方法と検索ドメインから取得できる情報を制御
するインデックス作成オプション、データのインデックスを作成し検索リクエストを処理する検索
インスタンスが含まれます。Amazon CloudSearch コンソール、Amazon CloudSearch コマンドラ
インツール、または AWS SDK を使用して、ドメインの作成 (p. 27)、監視 (p. 46)、および削
除 (p. 55)ができます。すべてのドメイン管理アクションは、Amazon CloudSearch 設定サービスに
よって実装されます。詳細については、Amazon CloudSearch の設定 API リファレンス (p. 153) を
参照してください。
トピック
• Amazon CloudSearch ドメインの作成 (p. 27)
• Amazon CloudSearch のアクセス設定 (p. 30)
• Amazon CloudSearch でのスケーリングオプションの設定 (p. 41)
• Amazon CloudSearch での可用性オプションの設定 (p. 44)
• Amazon CloudSearch ドメインの監視 (p. 46)
• Amazon CloudSearch ドメインの削除 (p. 55)
• Amazon CloudSearch ドメインへのタグ付け (p. 56)
Amazon CloudSearch ドメインの作成
Amazon CloudSearch でデータを検索するために、最初に必要なことは検索ドメインを作成する
ことです。検索可能にするデータのコレクションが複数ある場合は、複数の検索ドメインを作成
できます。新しいドメインに検索リクエストを送信する (p. 98)前に、アクセスポリシーの設
定 (p. 30)、インデックスフィールドの設定 (p. 66)、および検索対象データのアップロー
ド (p. 90)も行う必要があります。
検索ドメインを作成する場合、検索ドメインに一意の名前を付ける必要があります。ドメイン名は、3
文字以上、28 文字以内で、先頭は英字または数字にする必要があります。使用できる文字は、a~
z、0~9、およびハイフン(-)です。大文字、下線(_)、およびその他の特殊文字は、ドメイン名に
は使用できません。
デフォルトでは、すべての新しいドメインは 2013-01-01 API バージョンを使用して作成されま
す。2011-02-01 API バージョンを使用して、以前に検索ドメインを作成していた場合は、新しいドメ
インに古い API を使用することもできます。ただし、まったく新しいユースケースでは、2013-01-01
API Version 2013-01-01
27
Amazon CloudSearch 開発者ガイド
コンソールを使用したドメインの作成
API を使用することをお勧めします。2011-02-01 API が使用中止になったときには、すべてのドメイ
ンを 2013-01-01 API に移行する必要があります。
検索ドメインを作成する AWS のリージョンを選択できます。一般的に、オペレーションの最寄りの
リージョンを選択する必要があります。たとえば、所在地がヨーロッパである場合は、欧州 (アイルラ
ンド) リージョンに検索ドメインを作成します。現在サポートされているリージョンとエンドポイント
のリストについては、「リージョンとエンドポイント」を参照してください。リージョンの選択の詳
細については、「Amazon CloudSearch のリージョンとエンドポイント (p. 7)」を参照してください。
Note
異なるリージョンにある Amazon CloudSearch ドメインは完全に独立しています。たとえ
ば、my-domain という検索ドメインを us-east-1 に作成し、my-domain という別のドメイン
を eu-west-1 に作成した場合、これらは完全に独立しており、データは共有されません。
各検索ドメインには、インデックス作成用のデータのアップロードや、検索リクエストの送信に使用
できる一意のエンドポイントがあります。ドメインのドキュメントエンドポイントと検索エンドポイ
ントは、ドメインが存在している間変わりません。たとえば、imdb-movies というドメインのエンド
ポイントは次のようになります。
doc-imdb-movies-nypdffbzrfkoudsurkxvgwbpi4.useast-1.cloudsearch.amazonaws.com
search-imdb-movies-nypdffbzrfkoudsurkxvgwbpi4.useast-1.cloudsearch.amazonaws.com
Important
デフォルトでは、新しいドメインのドキュメントエンドポイントと検索エンドポイントへの
アクセスは、すべての IP アドレスに対してブロックされます。ドメインの検索エンドポイン
トに検索リクエストを送信して、コマンドラインまたはドメインのドキュメントエンドポイ
ントからデータをアップロードするには、ドメインのアクセスポリシーを設定する必要があ
ります。Amazon CloudSearch コンソールを使用すると、アクセスポリシーを設定せずに、
ドキュメントをアップロードし、ドメインを検索できます。
Amazon CloudSearch console (p. 28) から、aws cloudsearch create-domain コマンドを使用
して、または AWS SDK のいずれかを使用して、検索ドメインを作成できます。
トピック
• Amazon CloudSearch コンソールを使用したドメインの作成 (p. 28)
• AWS CLI を使用したドメインの作成 (p. 29)
• AWS SDK を使用した Amazon CloudSearch ドメインの作成 (p. 30)
Amazon CloudSearch コンソールを使用したドメイ
ンの作成
Amazon CloudSearch コンソールでは、簡単に新しい検索ドメインを作成することができ、インデッ
クス作成オプションを設定するためのさまざまなオプションが用意されています。
ドメインを作成するには
1.
2.
AWS マネジメントコンソールにサインインし、Amazon CloudSearch console at https://
console.aws.amazon.com/cloudsearch/home を開きます。
[Navigation] ペインの上部にある [Create a New Domain] をクリックします(ドメインを初めて作
成する場合は、[Welcome] ページの [Create Your First Search Domain] をクリックします)。
API Version 2013-01-01
28
Amazon CloudSearch 開発者ガイド
AWS CLI を使用したドメインの作成
3.
4.
[NAME YOUR DOMAIN] ステップで、新しいドメインの名前を入力し、[Continue] をクリックし
ます。ドメイン名は、3 文字以上、28 文字以内で、先頭は英字または数字にする必要がありま
す。ドメイン名に含めることができる文字は、a~z(小文字)、0~9、および -(ハイフン)で
す。大文字、下線(_)、およびその他の特殊文字は、ドメイン名には使用できません。
オプションで、[Desired Instance Type] と [Desired Replication Count] を設定し、事前にドメ
インをスケーリングすることができます。詳細については、「スケーリングオプションの設
定 (p. 41)」を参照してください。
[CONFIGURE INDEX] ステップで、[Manual Configuration] を選択し、[Continue] をクリックし
ます。最初にドメインを作成するときにインデックスフィールドとアクセスポリシーを設定す
ることも、ドメインの作成のみにして後から設定することもできます。Amazon CloudSearch
コンソールを使用したドメインの設定の詳細については、「インデックスフィールドの設
定 (p. 66)」および「Amazon CloudSearch のアクセス設定 (p. 30)」を参照してください。
5.
[REVIEW INDEX CONFIGURATION] ステップで、インデックスフィールドを後で設定するため
に [Continue] をクリックします。インデックスフィールドの設定の詳細については、「インデッ
クスフィールドの設定 (p. 66)」を参照してください。
6.
[SET UP ACCESS POLICIES] ステップで、アクセスポリシーを後でセットアップするため
に [Continue] をクリックします。アクセスポリシーの設定の詳細については、「Amazon
CloudSearch のアクセス設定 (p. 30)」を参照してください。
Note
7.
8.
アクセスポリシーを設定するまで、コンソールを使用した場合にのみ、ドキュメントを
アップロードして検索クエリを送信できます。デフォルトでは、ドキュメントエンドポ
イントと検索エンドポイントは、すべての IP アドレスをブロックするように設定されま
す。
[CONFIRM] ステップで、ドメインの設定を確認し、[Confirm] をクリックしてドメインを作成し
ます。
ドメインが作成されたら、[OK] をクリックして Create New Search Domain ウィザードを終了
し、ドメインのダッシュボードに移動します。ドメインのドキュメントエンドポイントおよび検
索サービスエンドポイントは、ドメインが ACTIVE 状態になったときにドメインダッシュボード
に表示されます。この時点で、インデックス作成のためにドキュメントをアップロードし、デー
タの検索を開始できます。
AWS CLI を使用したドメインの作成
検索ドメインを作成するには、aws cloudsearch create-domain コマンドを使用します。AWS
CLI のインストールおよびセットアップの詳細については、『AWS Command Line Interface ユーザー
ガイド』を参照してください。
Note
2.0.0.1 バージョンの Amazon CloudSearch コマンドラインツールを使用している場合、cscreate-domain コマンドを使用して検索ドメインを作成できます。ただし、AWS CLI に移
行することをお勧めします。AWS CLI は、インストールが簡単で、設定が統一されていて、
コマンドライン構文が一貫しているクロスサービスの CLI を提供します。
ドメインを作成するには
•
aws cloudsearch create-domain コマンドを実行し、--domain-name オプションで作成す
るドメインの名前を指定します。たとえば、movies という名前のドメインを作成するには、次の
コマンドを実行します。
aws cloudsearch create-domain --domain-name movies
{
API Version 2013-01-01
29
Amazon CloudSearch 開発者ガイド
AWS SDK を使用したドメインの作成
"DomainStatus": {
"DomainId": "965407640801/movies",
"Created": true,
"Deleted": false,
"SearchInstanceCount": 0,
"DomainName": "movies",
"SearchService": {},
"RequiresIndexDocuments": false,
"Processing": false,
"DocService": {},
"ARN": "arn:aws:cloudsearch:us-east-1:965407640801:domain/movies",
"SearchPartitionCount": 0
}
}
aws cloudsearch create-domain コマンドは直ちに制御を戻します。新しいドメインのエ
ンドポイントを作成するのに約 10 分かかります。ドメインのステータスと設定の概要を表示す
るには、aws cloudsearch describe-domains コマンドを使用できます。詳細については、
「Amazon CloudSearch ドメインに関する情報の取得 (p. 46)」を参照してください。
Important
ドメインのエンドポイントがアクティブになると、ドメインが存在している間、エンドポイ
ントは変わりません。エンドポイントをキャッシュに保存してください。ドキュメントや
検索サービスリクエストを送信する前にエンドポイントにクエリを実行する必要はありませ
ん。このようなクエリを実行すると、リクエストの調整が発生する可能性があります。
AWS SDK を使用した Amazon CloudSearch ドメイ
ンの作成
AWS SDK では(Android および iOS SDK を除く)、CreateDomain (p. 160) も含めて、Amazon
CloudSearch 設定 API で定義されたすべての Amazon CloudSearch アクションがサポートされていま
す。AWS SDK のインストールと使用の詳細については、「AWS Software Development Kits」を参照
してください。
Amazon CloudSearch のアクセス設定
AWS Identity and Access Management (IAM) アクセスポリシーを使用して、Amazon CloudSearch 設
定サービスや各検索ドメインのドキュメント、検索、提案サービスへのアクセスを制御します。IAM
アクセスポリシーは、ユーザーやプロセスに対して実行が許可されているアクションを定義するアク
セス権限を明示的にリストした JSON ドキュメントです。IAM アクセスポリシーの導入については、
「AWS IAM ポリシーの概要」を参照してください。
Amazon CloudSearch 設定サービス API およびドメインサービス API へのアクセスは個別に制御で
きます。たとえば、本番ドメインの設定を変更できるユーザーは制限するが、開発やテストのために
チームのメンバーが独自のドメインを作成および管理することは許可することもできます。同様に、
開発ドメインやテストドメインはアップロード、検索、提案サービスに対する匿名リクエストを受け
入れるように設定するが、本番ドメインはロックしてアプリケーションからの認証リクエストのみを
受け入れるようにすることもできます。
AWS がリクエストを受け取ると、リクエストが既知の AWS ユーザーであることを認証してから、関
連するポリシーを確認して、そのユーザーにリクエストされたアクションをリクエストされたリソー
スで実行する権限があるかどうかを判断します。ユーザーに対して明示的にアクションの実行が許可
API Version 2013-01-01
30
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch のアクセスポリシーの記述
されていない場合は、リクエストは拒否されます。ポリシーの評価時に、AWS によって明示的な拒否
が見つかった場合、その拒否はあらゆる明示的で有効な許可に優先します。
Important
認証を有効にするには、Amazon CloudSearch リクエストにアクセスキーで署名する必要が
あります。唯一の例外は、匿名アクセスにドメインのアップロード、検索、提案サービスを
許可する場合です。詳細については、「リクエストへの署名 (p. 7)」を参照してください。
トピック
• Amazon CloudSearch のアクセスポリシーの記述 (p. 31)
• Amazon CloudSearch ポリシーの例 (p. 34)
• AWS マネジメントコンソールを使用した Amazon CloudSearch のアクセスの設定 (p. 38)
• AWS CLI を使用した Amazon CloudSearch のアクセス設定 (p. 39)
• AWS SDK を使用してドメインのエンドポイントへのアクセスを設定する (p. 41)
Amazon CloudSearch のアクセスポリシーの記述
Amazon CloudSearch では、ユーザーベースのポリシーとリソースベースのポリシーの両方がサポー
トされています。
• ユーザーベースのポリシーは、特定の IAM ユーザー、グループ、またはロールに添付されます。
ユーザーベースのポリシーでは、ユーザーまたはプロセスがアクセスできるアカウント内の検索ド
メインと実行できるアクションを指定します。ユーザーベースのポリシーをユーザー、グループ、
ロールに添付するには、IAM コンソール、AWS CLI、または AWS SDK を使用します。Amazon
CloudSearch 設定サービスのアクションへのアクセスを制御するには、ユーザーベースのポリシー
を定義する必要があります。(ここでいうユーザー は必ずしも人物ではなく、単に関連するアクセス
権限を持った存在のことです。たとえば、ドメインに検索リクエストを送信するための認証情報を
持たせる必要があるアプリケーションを表す IAM ユーザーを作成する場合もあります。)
• Amazon CloudSearch のリソースベースのポリシーは、特定の検索ドメインに添付されます。リ
ソースベースのポリシーは、検索ドメインへのアクセス権限を持つユーザーと、そのユーザーが使
用できるドメインサービスを指定します。リソースベースのポリシーは特定のドメインのドキュメ
ント、検索、提案サービスへのアクセスのみを制御します。Amazon CloudSearch 設定サービスの
アクションへのアクセスの設定には使用できません。リソースベースのポリシーをドメインに添付
するには、Amazon CloudSearch コンソール、AWS CLI、または AWS SDK を使用します。
一般には、ユーザーベースのポリシーを設定して Amazon CloudSearch API へのアクセスを管理する
ことをお勧めします。アクセス権限を一か所で管理でき、必要な変更はほぼ即座に反映されるためで
す。ただし、ドメインの検索サービスに対するパブリックアクセスを許可したり、IP アドレスに基
づいてアクセスを制限するには、リソースベースのポリシーをドメインに設定する必要があります。
(ユーザーベースのポリシーを使用した IP ベースの古いアクセスポリシーは、できるだけ早いうちに
置換することをお勧めします。)また、リソースベースのポリシーを使用して他のアカウントのドメイ
ンへのアクセスを簡単に許可することもできます。ドメインのリソースベースのポリシーに対する変
更処理は、ユーザーベースのポリシーに対する変更よりも大幅に時間がかかることに注意してくださ
い。
IAM ポリシージェネレーターを使用して、Amazon CloudSearch のユーザーベースのポリシーおよび
リソースベースのポリシーを記述できます。詳細については、「IAM ポリシーの管理」を参照してく
ださい。
Tip
ベストプラクティスとして、個々のユーザーにアクセス権限を定義する代わりに、グループ
にアクセス権限を設定し、そのグループに IAM ユーザーを割り当てることを推奨します。同
API Version 2013-01-01
31
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch のアクセスポリシーの記述
様に、ユーザー認証情報を各インスタンスに渡すよりも、Amazon EC2 インスタンスで実行
するアプリケーションのロールにアクセス権限を割り当てることができます。AWS リソース
へのアクセスを管理するための IAM 推奨事項については、「IAM のベストプラクティス」を
参照してください。
Amazon CloudSearch のアクセスポリシーの内容
Amazon CloudSearch のアクセスポリシーで次の情報を設定します。
• Version には、ステートメントと互換性のあるポリシー言語のバージョンを指定します。バージョ
ンは常に 2012-10-17 に設定されます。
• Resource はユーザーベースのポリシーが適用されるドメインの ARN (Amazon Resource Name)
です。Resource は Amazon CloudSearch 設定サービスを使用して設定したリソースベースの
ポリシーには指定されていません。ポリシーがリソースに直接添付されるためです。Amazon
CloudSearch ARN の詳細については、「Amazon CloudSearch ARN (p. 32)」を参照してくださ
い。
• Effect は、指定されたアクションへのアクセスをステートメントが認証するかブロックするかを
指定します。Allow または Deny を指定する必要があります。
• Sid は、ポリシーステートメントにわかりやすい名前を付けることができるオプションの文字列で
す。
• Action は、ステートメントを適用する Amazon CloudSearch アクションを指定します。サポート
されているアクションについては、「Amazon CloudSearch アクション (p. 33)」を参照してく
ださい。選択ユーザーに管理アクセスを付与する必要がある場合は、ワイルドカード (*) を使用し
てすべてのアクションへのアクセスを設定できます。(この場合、セキュリティを追加するために多
要素認証を有効にする方がいいかもしれません。詳細については、「MFA 保護 API アクセスの設
定」を参照してください。)ワイルドカードは、アクション名内でもサポートされています。たとえ
ば、"Action":["cloudsearch:Describe*] はすべての設定サービス Describe アクションに
一致します。たとえば、DescribeDomains や DescribeServiceAccessPolicies などです。
• Condition は、ポリシーを実行するタイミングの条件を指定します。匿名の IP ベースのアクセス
を設定する場合、アクセスルールを適用する IP アドレスを指定します。たとえば、"IpAddress":
{"aws:SourceIp": ["192.0.2.0/32"]} です。
• Principal は、リソースベースのポリシーでドメインへのアクセスを許可するユーザーを指定しま
す。Principal は、IAM を使用して設定されたユーザーベースのポリシーでは指定されません。リ
ソースベースのポリシーの Principal 値では、他の AWS アカウントまたは自分のアカウントの
IAM ユーザーを指定できます。たとえば、アカウント 555555555555 にアクセス権限を付与するに
は、"Principal":{"AWS":["arn:aws:iam::555555555555:root"]} と指定します。ワイル
ドカード (*) を指定すると、ドメインへの匿名アクセスが有効になります。匿名アクセスは推奨され
ていません。匿名アクセスを有効にする場合は、少なくともドメインにリクエストを送信できる IP
アドレスを制限する条件を指定する必要があります。詳細については、「指定された IP アドレスか
らドメインへのアクセスの許可 (p. 37)」を参照してください。
Amazon CloudSearch のアクセスポリシーの例については、「Amazon CloudSearch ポリシーの
例 (p. 34)」を参照してください。
Amazon CloudSearch ARN
ポリシーの Amazon Resource Name (ARN) は、ポリシーを適用するドメインを一意に
指定します。ARN は、AWS がリソースを識別するために使用する標準形式です。ARN
にある 12 桁の数字が AWS のアカウント ID です。Amazon CloudSearch ARN は
arn:aws:cloudsearch:REGION:ACCOUNT-ID:domain/DOMAIN-NAME という形式です。
次のリストで、ARN の可変要素を説明します。
• REGION は、アクセス権限を設定する Amazon CloudSearch ドメインが存在する AWS リージョン
です。REGION にワイルドカード (*) を使用するとすべてのリージョンを指定できます。
API Version 2013-01-01
32
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch のアクセスポリシーの記述
• ACCOUNT-ID はハイフンなしの AWS アカウント ID です (111122223333 など)。
• DOMAIN-NAME は、特定の検索ドメインを識別します。DOMAIN-NAME にワイルドカード (*) を指定
すると、指定したリージョン内のお客様のアカウントのすべてのドメインを指定できます。名前が
同じプレフィックスで始まる複数のドメインがある場合は、ワイルドカードを使用してそれらのド
メインすべてに一致させることができます。たとえば、dev-* は dev-test、dev-movies、devsandbox などに一致します。新規ドメインに同じプレフィックスを持つ名前をつけた場合は、その
新規ドメインにもポリシーが適用されることに注意してください。
たとえば、次の ARN はアカウント 111122223333 が所有し us-east-1 リージョンに存在する
imdb-movies ドメインを識別します。
arn:aws:cloudsearch:us-east-1:111122223333:domain/imdb-movies
次の例では、ユーザーベースのポリシーで ARN を使用してリソースを指定する方法を示していま
す。
{
"Version":"2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["cloudsearch:search"],
"Resource": "arn:aws:cloudsearch:us-east-1:111122223333:domain/movies"
}
]
}
ドメインの ARN は DescribeDomains コンソールのドメインダッシュボードに表示されています。
また、Amazon CloudSearch を呼び出すことでもわかります。
Important
2011-02-01 API で作成したドメインに ARN を指定する場合、前の Amazon
CloudSearch サービス名である cs を使用する必要があります。("arn:aws:cs:useast-1:111122223333:domain/imdb-movies" など)。2011 と 2013 の両ドメインに対
するアクセスを設定するポリシーを定義する必要がある場合は、各ドメインの正しい ARN
形式を指定してください。詳細については、「構成サービスアクセスポリシーが機能しな
い (p. 270)」を参照してください。
Amazon CloudSearch アクション
指定されるアクションは、ステートメントが適用される Amazon CloudSearch API を制御します。す
べての Amazon CloudSearch アクションは、cloudsearch:search のように、cloudsearch: とい
うプレフィックスがついています。サポートされているアクションを次に示します。
• cloudsearch:document は、ドキュメントサービス API へのアクセスを許可します。インデック
ス作成のために検索ドメインにドキュメントをアップロードするには、document アクションを使
用するアクセス権限が必要です。
• cloudsearch:search は、検索 API へのアクセスを許可します。ドメインに検索リクエストを送
信するには、search アクションを使用するアクセス権限が必要です。
• cloudsearch:suggest は、提案 API へのアクセスを許可します。ドメインから提案を取得するに
は、suggest アクションを使用するアクセス権限が必要です。
• cloudsearch:CONFIGURATION-ACTION は、指定された設定サービスアクションへのアクセスを
許可します。Amazon CloudSearch コンソールにアクセスするには、DescribeDomains および
ListDomainNames 設定アクションを使用するアクセス権限が必要です。設定アクションはユー
API Version 2013-01-01
33
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch ポリシーの例
ザーベースのポリシーでのみで指定できます。アクションの完全なリストについては、『アクショ
ン (p. 155)』を参照してください。
Amazon CloudSearch ポリシーの例
このセクションでは、Amazon CloudSearch アクセスポリシーの例をいくつか紹介します。
トピック
• Amazon CloudSearch 設定サービスへの読み取り専用アクセスを許可 (p. 34)
• すべての Amazon CloudSearch 設定サービスのアクションへのアクセスを許可 (p. 35)
• すべての Amazon CloudSearch サービスへの無制限アクセスの許可 (p. 35)
• Amazon CloudSearch ドメインにドキュメントをアップロードするためのアクセス権限の付
与 (p. 36)
• 別の AWS アカウントへの Amazon CloudSearch アクセスの許可 (p. 36)
• 指定された IP アドレスから Amazon CloudSearch ドメインへのアクセスの許可 (p. 37)
• Amazon CloudSearch ドメインの検索サービスに対するパブリックアクセスの許可 (p. 38)
Amazon CloudSearch 設定サービスへの読み取り専用アクセス
を許可
設定サービスへの読み取り専用アクセスを付与するには、以下のアクションのみを許可します。ユー
ザーが本番用ドメインの設定を確認することは許可するが、変更はできないようにする場合に便利で
す。
• cloudsearch:DescribeAnalysisSchemes
• cloudsearch:DescribeAvailabilityOptions
• cloudsearch:DescribeDomains
• cloudsearch:DescibeExpressions
• cloudsearch:DescribeIndexFields
• cloudsearch:DescribeScalingParameters
• cloudsearch:DescribeServiceAccessPolicies
• cloudsearch:DescribeSuggesters
• cloudsearch:ListDomainNames
以下のユーザーベースのポリシーは、アカウント 555555555555 が所有する movies ドメインの設定
サービスに対する読み取り専用アクセスを付与します。ポリシーでは、アクションにワイルドカード
を使用して、Describe または List で始まるすべてのアクションへのアクセスを許可しています。今
後 API に追加される describe または list アクションへのアクセスも許可されることに注意してくださ
い。
{
"Version":"2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["cloudsearch:Describe*",
"cloudsearch:List*"],
"Resource": "arn:aws:cloudsearch:us-east-1:555555555555:domain/movies"
}
]
API Version 2013-01-01
34
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch ポリシーの例
}
すべての Amazon CloudSearch 設定サービスのアクションへ
のアクセスを許可
すべての設定サービスのアクションへのアクセスを許可する Allow ステートメントを含めることで、
ドメインサービスのアクションを除外したすべての Amazon CloudSearch 設定サービスのアクション
へのアクセスを許可できます。こうすることで、ユーザーに対してドメインへのデータのアップロー
ドやドメインからのデータの取得は許可せずに管理アクセスを付与できます。これを行う方法の 1 つ
は、すべての Amazon CloudSearch アクションへのアクセス権限を付与するワイルドカードを使用
し、その後ドメインサービスアクションへのアクセスをブロックする拒否ステートメントを含めるこ
とです。以下のユーザーベースのポリシーは、us-west-2 リージョン内の 111122223333 アカウン
トが所有するすべてのドメインの設定サービスに対するアクセスを付与します。
{
"Version":"2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["cloudsearch:*"],
"Resource": "arn:aws:cloudsearch:us-west-2:111122223333:domain/*"
},
{
"Effect": "Deny",
"Action": ["cloudsearch:document",
"cloudsearch:search",
"cloudsearch:suggest"],
"Resource": "arn:aws:cloudsearch:us-west-2:111122223333:domain/*"
}
]
}
すべての Amazon CloudSearch サービスへの無制限アクセス
の許可
ユーザーベースのポリシーを使用して、すべての設定サービスのアクションとすべてのドメインサー
ビスを含むすべての Amazon CloudSearch サービスへの無制限アクセスを許可できます。これを行う
には、アクション、リージョン、ドメイン名にワイルドカードを指定します。次のポリシーで、ユー
ザーは 111122223333 アカウントが所有するあらゆるリージョンのあらゆるドメインでのすべての
Amazon CloudSearch アクションにアクセスできます。
Note
このポリシーのように IAM ユーザーに対して非常に高いアクセス権限を付与する場合は、こ
れらのユーザーに対して多要素認証 (MFA) を有効にすることをお勧めします。詳細について
は、IAM ユーザーガイドの「IAM ベスト プラクティス」を参照してください。
{
"Version":"2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["cloudsearch:*"],
"Resource": "arn:aws:cloudsearch:*:111122223333:domain/*"
}
API Version 2013-01-01
35
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch ポリシーの例
]
}
Amazon CloudSearch ドメインにドキュメントをアップロード
するためのアクセス権限の付与
cloudsearch:document アクションを指定して、IAM ユーザーに対して検索ドメインにドキュメ
ントをアップロードするアクセス権限を付与できます。たとえば、次のユーザーベースのポリシーで
は、ユーザーは 111122223333 アカウントが所有する us-east-1 内の movies ドメインにドキュメ
ントをアップロードできます。
{
"Version":"2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["cloudsearch:document"],
"Resource": "arn:aws:cloudsearch:us-east-1:111122223333:domain/movies"
}
]
}
別の AWS アカウントへの Amazon CloudSearch アクセスの
許可
CloudSearch ドメインにクロスアカウントアクセスを設定するには、2 とおりの方法があります。
オプション
説明
クロスアカウントアクセス用の IAM
ロールを設定します。
セキュリティは強化されますが、複雑なリクエスト署名が
必要です。詳細については、IAM ドキュメントの「CrossAccount API Access Using IAM Roles」を参照してくださ
い。
リソースベースのポリシーを
CloudSearch ドメインに添付し、ユー
ザーベースの管理ポリシーを IAM ロー
ルに添付します。
実行が簡単。詳細については、IAM ドキュメントの「IAM
ユーザーにアクセス権限を委任するロールの作成」および
「ウォークスルー: ユーザーが所有する IAM ロールを使用
した AWS アカウント間でのアクセスの委任」を参照して
ください。
このトピックでは、CloudSearch ドメインにリソースベースのポリシーを追加するという 2 つ目の方
法の例を紹介します。アカウント #1 はアカウント ID 111111111111 の所有であり、アカウント #2
はアカウント ID 999999999999 の所有であると仮定します。アカウント #1 がアカウント #2 に対し
て movies ドメインの検索サービスを使用するアクセス権限を付与する場合、2 つのステップが必要
です。
1. アカウント #1 は Amazon CloudSearch コンソールを使用して、アカウント #2 にアクセス権限を
付与するリソースベースのポリシーをドメインに添付します。
{
"Version":"2012-10-17",
"Statement":[
{
"Sid":"search_only",
API Version 2013-01-01
36
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch ポリシーの例
"Effect":"Allow",
"Action":["cloudsearch:search"],
"Principal":{"AWS":["arn:aws:iam::999999999999:root"]}
}
]
}
2. アカウント #2 は IAM コンソールを使用して、そのアカウントが所有する IAM ロールにユーザー
ベースの管理ポリシーを添付します。
{
"Version":"2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["cloudsearch:search"],
"Resource": "arn:aws:cloudsearch:us-east-1:111111111111:domain/
movies"
}
]
}
Important
Amazon CloudSearch のリソースベースのポリシーを設定するに
は、cloudsearch:UpdateServiceAccessPolicies アクションの使用を許可されている
必要があります。
指定された IP アドレスから Amazon CloudSearch ドメインへ
のアクセスの許可
Amazon CloudSearch 設定サービスで設定されたリソースベースのアクセスポリシーでは、検索ドメ
インのサービスに無署名リクエストを送信できる匿名アクセスをサポートしています。指定された IP
アドレスからの匿名アクセスを許可するには、Principal 値にワイルドカードを使用し、許可された
IP アドレスをポリシー内の Condition 要素として指定します。
Important
指定された IP アドレスからの匿名アクセスを許可すると、その性質上、検索ドメインにア
クセスするためにユーザー認証情報が必要な場合よりも安全性が低くなります。指定された
IP アドレスからのみのアクセスを許可する場合でも、匿名アクセスはお勧めしません。現在
匿名アクセスを許可している場合は、署名リクエストを送信するようにアプリケーションを
アップグレードし、ユーザーベースおよびリソースベースのポリシーを設定してアクセスを
制御してください。
Amazon EC2 インスタンスからのリクエストにアクセス権限を付与するリソースベースのポリシーを
作成している場合は、インスタンスのパブリック IP アドレスを指定する必要があります。
IP アドレスは標準の Classless Inter-Domain Routing (CIDR) 形式で指定します。たとえ
ば、10.24.34.0/24 は範囲 10.24.34.0~10.24.34.255 を指定します。一方、10.24.34.0/32 は 1 つの IP
アドレス 10.24.34.0 を指定します。CIDR 表記の詳細については、「RFC 4632」を参照してくださ
い。
たとえば、以下のポリシーでは、AWS アカウント 111122223333 が所有する movies ドメインの検
索アクションへのアクセスを IP アドレス 192.0.2.0/32 に許可しています。
API Version 2013-01-01
37
Amazon CloudSearch 開発者ガイド
コンソールを使用した Amazon
CloudSearch のアクセスの設定
{
"Version":"2012-10-17",
"Statement":[
{
"Sid":"search_only",
"Effect":"Allow",
"Principal":"*",
"Action":["cloudsearch:search"],
"Condition":{"IpAddress":{"aws:SourceIp":"192.0.2.0/32"}}
}
]
}
Amazon CloudSearch ドメインの検索サービスに対するパブ
リックアクセスの許可
ドメイン内の検索エンドポイントに対するパブリックアクセスを許可する必要がある場合は、条件の
ないリソースベースのポリシーを設定できます。これにより、あらゆる IP アドレスから送信された無
署名リクエストが有効になります。
Important
検索ドメインに対するパブリックアクセスを許可するということは、ドメインに送信される
リクエストのボリュームを制御しないということです。悪意あるユーザーによってドメイン
に大量のリクエストが送信され、正規ユーザーや運用コストに影響を与える可能性がありま
す。
たとえば、次のポリシーは、AWS アカウント 111122223333 が所有する movies ドメインの検索ア
クションに対するパブリックアクセスを許可します。
{
"Version":"2012-10-17",
"Statement":[
{
"Sid":"public_search",
"Effect":"Allow",
"Principal":"*",
"Action":["cloudsearch:search"]
}
]
}
AWS マネジメントコンソールを使用した Amazon
CloudSearch のアクセスの設定
ユーザーベースのポリシーを設定するには
1.
https://console.aws.amazon.com/iam/ で Identity and Access Management (IAM) コンソールにサ
インインします。
2.
ユーザー、グループ、またはロールにポリシーを添付して Amazon CloudSearch のアクセス許可
を設定します。詳細については、「ポリシーの管理 (AWS マネジメントコンソール)」を参照し
てください。Amazon CloudSearch のユーザーベースのポリシーの詳細については、「Amazon
CloudSearch のアクセスポリシーの記述 (p. 31)」を参照してください。
API Version 2013-01-01
38
Amazon CloudSearch 開発者ガイド
AWS CLI を使用した Amazon
CloudSearch のアクセス設定
リソースベースのポリシーを設定するには
1.
AWS マネジメントコンソールにサインインし、Amazon CloudSearch console at https://
console.aws.amazon.com/cloudsearch/home を開きます。
2.
[Navigation] ペインで、設定するドメインの名前をクリックし、そのドメインの [Access Policies]
リンクをクリックします。
3.
ドメインの [Access Policies] ペインで、ショートカットのいずれかを選択するか、許可または
ブロックする IP アドレスを入力します。ルールに IP アドレスまたはアドレス範囲を追加するに
は、[IP Ranges] 列で追加(+)アイコンをクリックします。ルールから IP アドレスまたはアドレ
ス範囲を削除するには、[IP Ranges] 列でその削除(-)アイコンをクリックします。ポリシーに
新しいルールを追加するには、[Add a New Rule] ボタンをクリックします。ポリシーからルール
を削除するには、[Remove] 列で削除(x)ボタンをクリックします。
4.
アクセスルールに対する変更が完了したら、[Submit] をクリックします。変更を保存せずに終了
するには、[Revert] をクリックします。
Amazon CloudSearch コンソールでは、特定の IP アドレスまたはアドレス範囲にアクセスを許可ま
たはブロックするアクセスルールを簡単に追加できます。ただしリソースベースのポリシーは、IP
ベースのポリシーに限りません。AWS CLI または AWS SDK を使用して、特定の IAM ユーザーまた
は AWS アカウントのアクセスを許可するリソースベースのポリシーを設定できます。
コンソールには、アクセスルールを指定するための 5 つのショートカットが用意されています。
検索およびサジェスタサービス: すべてを許可します。ドキュメントサービス: アカウント所有者の
み。Allow everyone access to all services (誰でもドキュメントをアップロードできるため、お勧めし
ません) Deny everyone access to all services (コンソールを使用するか、アカウント所有者である場
合を除く) Copy access policy from another domain
• 検索およびサジェスタサービス: すべてを許可します。ドキュメントサービス: アカウント所有者の
み - データの検索や提案の取得は誰でもできますが、ドキュメントの追加や削除はお客様のみが可
能です。ドメインの検索エンドポイントでは IP アドレスを問わず匿名アクセスを許可しますが、ド
キュメントのエンドポイントにはお客様しかアクセスできなくなります。
• Allow everyone access to all services - すべてのユーザーがデータの検索およびドキュメントの追加
と削除を許可されます。ドメインのエンドポイントでは IP アドレスを問わず匿名アクセスを許可し
ます。
• Deny everyone access to all services - 検索リクエストおよびドキュメントリクエストはコンソール
から送信されるか、アカウント認証情報で認証されている必要があります。ドキュメントおよび検
索エンドポイントは匿名アクセスを許可せず、他の AWS ユーザーからのリクエストも受け付けま
せん。
• Copy access policy from another domain - 別の検索ドメイン用に設定されたアクセスポリシーをコ
ピーします。(複数のドメインがある場合のみ表示。)
いずれかのショートカットから始め、ルールを追加してドメインのエンドポイントへのアクセスを細
かくチューニングできます。拒否ルールは許可ルールよりも優先されます。
リソースベースのポリシーの更新は、完了までに多少の時間がかかります。ドメインのポリシー
の状態は [Access Policies] ペインに表示されます。ポリシーが適用されると、ポリシーの状態が
PROCESSING から ACTIVE に変わります。
AWS CLI を使用した Amazon CloudSearch のアク
セス設定
AWS CLI を使用して、Amazon CloudSearch のユーザーベースのポリシーおよびリソースベースの
ポリシーの両方を設定できます。AWS CLI のインストールおよびセットアップの詳細については、
『AWS Command Line Interface ユーザーガイド』を参照してください。
API Version 2013-01-01
39
Amazon CloudSearch 開発者ガイド
AWS CLI を使用した Amazon
CloudSearch のアクセス設定
ユーザーベースのポリシーを設定するには
•
aws put-user-policy、aws put-group-policy、または aws put-role-policy コマン
ドを使用して、ユーザー、グループ、またはロールにポリシーを添付し Amazon CloudSearch の
アクセス権限を設定します。詳細については、「ポリシーの管理 (AWS マネジメントコンソー
ル)」を参照してください。Amazon CloudSearch のユーザーベースのポリシーの詳細について
は、「Amazon CloudSearch のアクセスポリシーの記述 (p. 31)」を参照してください。
リソースベースのポリシーを設定するには
•
aws cloudsearch update-service-access-policies コマンドを実行し、--accesspolicies オプションでアクセスポリシーを指定します。アクセスポリシーは引用符で囲
み、アクセスポリシー内のすべての引用符はバックスラッシュでエスケープする必要があ
ります。Amazon CloudSearch のリソースベースのポリシーの詳細については、「Amazon
CloudSearch のアクセスポリシーの記述 (p. 31)」を参照してください。
Note
Amazon CloudSearch コマンドラインツールの 2.0.0.1 バージョンを使用している場合
は、cs-configure-access-policies コマンドを使用して、ドメインのエンドポ
イントへのアクセスを設定できます。ただし、AWS CLI に移行することをお勧めしま
す。AWS CLI は、インストールが簡単で、設定が統一されていて、コマンドライン構文
が一貫しているクロスサービスの CLI を提供します。
以下の例は、movies ドメインが IP アドレス 192.0.2.0 からの検索リクエストを受け入れるよ
うに設定します。
aws cloudsearch update-service-access-policies --domain-name movies
--access-policies "{\"Version\":\"2012-10-17\",\"Statement\":[{
\"Sid\":\"search_only\",
\"Effect\":\"Allow\",
\"Principal\": \"*\",
\"Action\":\"cloudsearch:search\",
\"Condition\":{\"IpAddress\":{\"aws:SourceIp\":\"192.0.2.0/32\"}}}
]}"
{
"AccessPolicies": {
"Status": {
"PendingDeletion": false,
"State": "Processing",
"CreationDate": "2014-04-30T22:07:30Z",
"UpdateVersion": 9,
"UpdateDate": "2014-04-30T22:07:30Z"
},
"Options":
"{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"\",
\"Effect\":\"Allow\",\"Principal\":\"*\",
\"Action\":\"cloudsearch:search\",
\"Condition\":{\"IpAddress\":{\"aws:SourceIp\":
\"192.0.2.0/32\"}}}]}"
}
}
API Version 2013-01-01
40
Amazon CloudSearch 開発者ガイド
AWS SDK を使用してドメインのエ
ンドポイントへのアクセスを設定する
リソースベースのポリシーの更新は、完了までに多少の時間がかかります。aws cloudsearch
describe-service-access-policies コマンドを使用して、ポリシーの状態を確認できます。ポ
リシーが適用されると、ポリシーの状態が Active に変わります。
aws cloudsearch describe-service-access-policies コマンドを使用して、ドメインのポリ
シーを取得できます。
AWS SDK を使用してドメインのエンドポイントへ
のアクセスを設定する
AWS SDK では(Android および iOS SDK を除く)、UpdateServiceAccessPolicies (p. 202)
も含めて、Amazon CloudSearch 設定 API で定義されたすべての Amazon CloudSearch アクショ
ンがサポートされています。AWS SDK のインストールと使用の詳細については、「AWS Software
Development Kits」を参照してください。
Amazon CloudSearch でのスケーリングオプショ
ンの設定
検索ドメインには 1 つ以上の検索インスタンスがあり、各インスタンスは、データのインデックス作
成およびリクエストの処理のために限定された RAM リソースと CPU リソースを使用します。使用
するインスタンスタイプ、検索インデックスを送信するインスタンス数 (パーティション数)、各イン
デックスパーティションのレプリカの数 (レプリケーション数) を制御するスケーリングオプションを
設定できます。ドメインのインスタンスはすべて常に同じタイプです。
Amazon CloudSearch ドメインに必要なインスタンスタイプ、パーティション数、またはレプリケー
ション数を以下のような目的で設定できます。
• アップロード容量を増大するデフォルトで、すべての検索ドメインは search.m1.small インス
タンス上で開始されます。必要なインスタンスタイプを変更することで、ドメインのドキュメン
トアップロード容量を増やすことができます。アップロードするデータが大量にある場合、たと
えば、検索ドメインに最初にデータを設定する場合は、より大きいインスタンスタイプを選択し
て、並列で送信できる更新の数を増やし、データのインデックス作成にかかる時間を短縮するこ
とができます。最大のインスタンスタイプを既に使っている場合は、望ましいパーティション数
を増やしてアップロード容量をさらに増やすことができます。詳細については、「一括アップロー
ド (p. 92)」を参照してください。必要なレプリケーション数を増やしても、一般にドメインの
アップロード容量は増えないことに注意してください。
• 検索リクエストを高速化する。大きなインスタンスタイプを選択すると、検索リクエストも高速化
できます。リクエストをチューニングしてもパフォーマンス目標を達成できない場合は、より大き
いインスタンスタイプを選択してみてください。最大のインスタンスタイプをすでに使っている場
合は、必要なパーティション数を増やしてクエリ性能をさらに高めることができます。詳細につい
ては、「Amazon CloudSearch での検索リクエストのパフォーマンスのチューニング (p. 116)」を
参照してください。
• 検索容量の拡大。デフォルトでは、Amazon CloudSearch で使用されるインスタンスはインデック
スパーティションごとに 1 つです。Amazon CloudSearch によってドメインが自動的にスケールさ
れると、クエリトラフィックの処理に必要なリソースに基いて、レプリカが追加されます。ドメイ
ンの検索容量を増やすには、必要なレプリケーション数を設定します。ただし、追加のインスタン
スをデプロイするには時間がかかります。容量の追加が必要になることが事前に判明している場合
は(たとえば大規模な発売時や発表時)、あらかじめレプリカを追加しておき、検索ドメインで負
荷を処理する準備を整えます。
• 耐障害性の改善。必要なレプリケーション数を増やすと、ドメインの耐障害性も改善されます。
レプリカの 1 つに問題があっても、その復旧中は残りのレプリカがリクエストの処理を続行しま
す。ただし、レプリカは同じアベイラビリティーゾーンに存在することに注意してください。ア
API Version 2013-01-01
41
Amazon CloudSearch 開発者ガイド
スケーリングオプションの選択
ベイラビリティーゾーンサービスが中断した場合でもドメインの可用性を確保する必要がある場合
は、マルチ AZ オプションを有効にする必要があります。詳細については、「可用性オプションの
設定 (p. 44)」を参照してください。
望ましいインスタンスタイプ、望ましいレプリカの数、または望ましいパーティション数を設定
し、、Amazon CloudSearch は必要に応じてドメインのスケーリングを実行します。しかし、望まし
いインスタンスタイプより小さいインスタンスタイプにしたり、望ましいレプリカの数よりも少ない
数のレプリカを使用したり、望ましいパーティション数よりもパーティション数を減らすことはあり
ません。
スケーリングオプションをいつでも変更できます。必要な容量追加が一時的なものである場合は、ス
ケーリングオプションを設定して事前スケーリングし、アップロードまたはクエリの量がドメインの
通常の状態に戻った後、変更を元に戻すことができます。変更するときは、ドメインのインデックス
を再作成する必要があり、変更が反映されるまでにしばらく時間がかかります。インデックスの再作
成にかかる時間は、インデックス内のデータ量によって決まります。ドメインのステータスを監視す
ると、ステータスが PROCESSING から ACTIVE に変化することで、インデックス作成がいつ完了し
たかを判断することができます。
トピック
• Amazon CloudSearch でスケーリングオプションを選択 (p. 42)
• Amazon CloudSearch コンソールを使用したスケーリングオプションの設定 (p. 43)
• AWS CLI を使用したスケーリングオプションの設定 (p. 43)
• AWS SDK を使用したスケーリングオプションの設定 (p. 44)
Amazon CloudSearch でスケーリングオプションを
選択
ドメインのスケーリングオプションを設定するときは、コストとパフォーマンスのトレードオフが生
じます。必要なインスタンスタイプ、レプリケーション数、パーティション数を変更すると、ドメイ
ンを実行するコストに大きな影響が及ぶ可能性があります。
アップロードトラフィックを処理するためのインスタンスタイプを選択するために、アップロード
レートを増やす際にアップロードパフォーマンスを監視します。必要なアップロードレートに達する
前に 504 または 507 エラーが多数発生し始めた場合は、より大きいインスタンスタイプを選択しま
す。すでに最大のインスタンスタイプである場合は、パーティションの数を増やしてアップロード容
量をさらに増やすことができます。
データが 1 GB 未満のデータセットまたは 1,000,001 KB 未満のドキュメントの場合は、スモール
検索インスタンスで十分です。1~8 GB のデータセットをアップロードするには、アップロード
する前に、必要なインスタンスタイプを search.m3.large に設定することをお勧めします。8
~16 GB のデータセットは、search.m3.xlarge で始まります。16~32 GB のデータセット
は、search.m3.2xlarge で始まります。アップロードのサイズが 32 GB を超える場合は、インス
タンスタイプに search.m3.2xlarge を選択し、データセットに対応できるように、望ましいパー
ティション数を増やします。各パーティションに最大 32 GB のデータを格納できます。さらに多く
のアップロード容量が必要な場合、または 500 GB を超えるインデックスを作成する場合は、Service
Increase Limit Request を送信します。
所定のクエリの量を処理するのに必要なレプリカ数を判断するには、サポートする必要のあるレート
で予想されるクエリのサンプルを使ってテストを実施します。クエリパフォーマンスは、処理されて
いるクエリの種類によって大きく異なることを忘れないでください。一般に、大量のヒット項目を返
す検索や複雑な構造化クエリは、検索ドメインのドキュメントが一致する割合が低い単純なテキスト
クエリよりも多くのリソースを消費します。大量の複雑なクエリが予想される場合は、必要なインス
タンスタイプを大きくし、必要なレプリケーション数を増やします。
API Version 2013-01-01
42
Amazon CloudSearch 開発者ガイド
コンソールを使用したスケーリングオプションの設定
Amazon CloudSearch コンソールを使用したスケー
リングオプションの設定
検索ドメインのスケーリングオプションを設定するには
1.
AWS マネジメントコンソールにサインインし、Amazon CloudSearch コンソールを開きます。
[Navigation] ペインで、設定するドメインの名前をクリックし、[Scaling Options] リンクをクリッ
クします。
2.
[Desired Instance Type] メニューでインスタンスタイプを選択します。search.m3.2xlarge イ
ンスタンスタイプを選択した場合、[Desired Partition Count] を設定するオプションもあります。
単一の search.m3.2xlarge パーティションに収まらないほどアップロードデータが大量にある
場合は、必要なパーティション数を増やす必要があります。詳細については、「一括アップロー
ド (p. 92)」を参照してください。
3.
使用するレプリカの数を [Desired Replication Count] メニューで選択します。
4.
使用するインデックスパーティションの数を [Desired Partition Count] メニューで選択します。
5.
[Submit] をクリックして変更を保存し、[OK] をクリックしてドメインのスケーリングオプション
を変更することを確認します。必要なインスタンスタイプとレプリケーション数を変更すると、
ドメインの実行コストが大幅に増加する可能性があることに注意してください。変更を保存しな
いで終了するには、[Cancel] をクリックして、[Revert] をクリックします。
6.
ドメイン設定の変更が完了したら、[Run Indexing] をクリックしてインデックスを更新し、新
しいインスタンスにデプロイします。
AWS CLI を使用したスケーリングオプションの設
定
検索ドメインのスケーリングオプションを設定するには、aws cloudsearch update-scalingparameters コマンドを使用します。AWS CLI のインストールおよびセットアップの詳細について
は、『AWS Command Line Interface ユーザーガイド』を参照してください。
検索ドメインのスケーリングオプションを設定するには
•
aws cloudsearch update-scaling-parameters コマンドを実行します。必要なインスタ
ンスタイプおよび必要なレプリケーション数を指定できます。最も大きなインスタンスタイプ
(search.m3.2xlarge)を選択した場合は、必要なパーティション数も設定できます。たとえ
ば、次のコマンドは必要なインスタンスタイプを search.m3.xlarge に設定し、必要なレプリ
ケーション数を 2 に設定します。--domain-name と --scaling-parameters の両方のオプ
ションを指定する必要があります。
aws cloudsearch update-scaling-parameters --domain-name movies --scalingparameters DesiredInstanceType=search.m3.xlarge,DesiredReplicationCount=2
{
"ScalingParameters": {
"Status": {
"PendingDeletion": false,
"State": "RequiresIndexDocuments",
"CreationDate": "2014-06-25T21:41:21Z",
"UpdateVersion": 10,
"UpdateDate": "2014-06-25T21:41:21Z"
},
"Options": {
"DesiredInstanceType": "search.m3.xlarge",
"DesiredReplicationCount": 2
API Version 2013-01-01
43
Amazon CloudSearch 開発者ガイド
AWS SDK を使用したスケーリングオプションの設定
}
}
}
変更を有効にするには、インデックスの構築を開始する必要があります。インデックスの再構築
は、aws cloudsearch index-documents を呼び出して実行できます。
AWS SDK を使用したスケーリングオプションの設
定
AWS SDK では(Android および iOS SDK を除く)、UpdateScalingParameters (p. 200) も
含めて、Amazon CloudSearch 設定 API で定義されたすべての Amazon CloudSearch アクション
がサポートされています。AWS SDK のインストールと使用の詳細については、「AWS Software
Development Kits」を参照してください。
Amazon CloudSearch での可用性オプションの設
定
同じリージョン内の追加のアベイラビリティゾーンに Amazon CloudSearch ドメインを拡張して、
サービス中断が発生した場合の耐障害性を向上させることができます。アベイラビリティゾーンと
は、それぞれ物理的に離れた場所にある独立したインフラストラクチャであり、他のアベイラビリ
ティゾーンの障害の影響を受けないように設計されています。詳細については、『Linux インスタン
ス用 Amazon EC2 ユーザーガイド』の「リージョンとアベイラビリティゾーン」を参照してくださ
い。
マルチ AZ オプションが有効な場合、Amazon CloudSearch は 2 番目のアベイラビリティゾーンの検
索ドメインに追加インスタンスをプロビジョニングして維持し、高可用性を確保します。1 つのドメ
インをデプロイできるアベイラビリティーゾーンの最大数は 2 つです。
マルチ AZ を有効にしても、検索ドメインのサービスエンドポイントには影響せず、検索ドメインで
処理できるデータやトラフィックの量も増加しません。更新は両方のアベイラビリティーゾーンのイ
ンスタンスに自動的に適用されます。検索トラフィックは全インスタンス間で分散され、障害発生時
にはどちらのゾーンのインスタンスでも全負荷を処理できます。
アベイラビリティゾーンでサービスの中断が発生した場合やあるゾーンのインスタンスの質が低下し
た場合、Amazon CloudSearch はすべてのトラフィックを他のアベイラビリティゾーンにルーティン
グします。冗長化インスタンスが別のアベイラビリティーゾーンにリストアされます。管理操作や
サービスの中断は発生しません。
既存の検索ドメインを 2 番目のアベイラビリティゾーンに展開するには、マルチ AZ オプションを有
効にします。同様に、マルチ AZ オプションを無効にすることによって、ドメインを単一のアベイラ
ビリティゾーンにダウングレードすることもできます。マルチ AZ オプションの有効と無効の切り替
えには約 30 分かかります。
Amazon CloudSearch コンソール、aws cloudsearch update-availability-options コマン
ド、または AWS SDK を使用して、ドメインの可用性オプションを設定できます。
Important
ドメインが単一の検索インスタンスで実行されている場合、マルチ AZ オプションを有効に
すると、別のアベイラビリティーゾーンに 2 つめの検索インスタンスが追加され、ドメイン
の運用コストが 2 倍になります。同様に、インデックスが複数のパーティションに分割され
API Version 2013-01-01
44
Amazon CloudSearch 開発者ガイド
コンソールを使用した可用性オプションの設定
る場合、新しいインスタンスが各パーティションの 2 つめのアベイラビリティーゾーンにデ
プロイされます。追加レプリカは、どのアベイラビリティーゾーンでもトラフィックをすべ
て処理するのに十分なキャパシティーを確保するために追加されます。マルチ AZ が有効な
場合、ドメインには各インデックスパーティションごとに最低 1 つのレプリカがあることに
なります。必要な数のレプリカを設定し、マルチ AZ オプションを有効にした場合、Amazon
CloudSearch は最低でも 2 つのアベイラビリティーゾーンで合計してその数のレプリカが
使用できるようにします。ドメインで使用されているインスタンス数は、ドメインダッシュ
ボードで監視できます。
トピック
• Amazon CloudSearch コンソールを使用した可用性オプションの設定 (p. 45)
• AWS CLI を使用した Amazon CloudSearch 可用性オプションの設定 (p. 45)
• AWS SDK を使用した可用性オプションの設定 (p. 46)
Amazon CloudSearch コンソールを使用した可用性
オプションの設定
検索ドメインの可用性オプションを設定するには
1.
AWS マネジメントコンソールにサインインし、Amazon CloudSearch コンソールを開きます。
[Navigation] ペインで、設定するドメインの名前をクリックし、[Availability Options] リンクをク
リックします。
2.
マルチ AZ オプションを有効にするには、[Turn Multi-AZ on] をクリックします。マルチ AZ オプ
ションを無効にするには、[Turn Multi-AZ off] をクリックします。
3.
確認を求められたら、[OK] をクリックして、ドメインの可用性オプションを変更することを確認
します。現在ドメインで単一の検索インスタンスを使用していて、マルチ AZ オプションをオン
にした場合、2 つめの検索インスタンスが追加され、ドメインの運用にかかるコストが大幅に増
加します。変更を保存せずに終了するには、[Cancel] をクリックします。
AWS CLI を使用した Amazon CloudSearch 可用性
オプションの設定
aws cloudsearch update-availability-options コマンドを使用して検索ドメインの可用性
オプションを設定します。AWS CLI のインストールおよびセットアップの詳細については、『AWS
Command Line Interface ユーザーガイド』を参照してください。
Note
2.0.0.1 バージョンの Amazon CloudSearch コマンドラインツールを使用している場合
は、cs-configure-availability-options コマンドを使用して可用性オプションを更新
できます。ただし、AWS CLI に移行することをお勧めします。AWS CLI は、インストールが
簡単で、設定が統一されていて、コマンドライン構文が一貫しているクロスサービスの CLI
を提供します。
検索ドメインの可用性オプションを設定するには
•
aws cloudsearch update-availability-options コマンドを実行するときに、ドメインの
マルチ AZ を有効にする場合は --multi-az オプションを指定し、マルチ AZ を無効にする場合
は --no-multi-az オプションを指定します。たとえば、次のリクエストは movies ドメインの
マルチ AZ を有効にします。
API Version 2013-01-01
45
Amazon CloudSearch 開発者ガイド
AWS SDK を使用した可用性オプションの設定
aws cloudsearch update-availability-options --domain-name movies --multiaz
{
"AvailabilityOptions": {
"Status": {
"PendingDeletion": false,
"State": "Processing",
"CreationDate": "2014-04-30T20:42:57Z",
"UpdateVersion": 13,
"UpdateDate": "2014-05-01T00:17:45Z"
},
"Options": true
}
}
AWS SDK を使用した可用性オプションの設定
AWS SDK では(Android および iOS SDK を除く)、UpdateAvailabilityOptions (p. 194)
も含めて、Amazon CloudSearch 設定 API で定義されたすべての Amazon CloudSearch アクショ
ンがサポートされています。AWS SDK のインストールと使用の詳細については、「AWS Software
Development Kits」を参照してください。
Amazon CloudSearch ドメインの監視
AWS マネジメントコンソールを使用すると、検索ドメインのステータスと設定を簡単に監視
し、Amazon CloudSearch の使用状況を表示できます。また、AWS CLI と AWS SDK を使用して、特
定のドメインに関する設定情報を取得することもできます。
トピック
• Amazon CloudSearch ドメインに関する情報の取得 (p. 46)
• Amazon CloudWatch を使用した Amazon CloudSearch ドメインのモニタリング (p. 51)
• AWS CloudTrail を使用した Amazon CloudSearch 設定のサービス呼び出しの記録 (p. 52)
• Amazon CloudSearch の使用状況と料金の追跡 (p. 55)
Amazon CloudSearch ドメインに関する情報の取得
各検索ドメインについて、以下の情報を取得できます。
• ドメイン名 - ドメインの名前。
• ARN - ドメインの Amazon リソースネーム(ARN)。
• ドキュメントエンドポイント - ドキュメントの更新を送信するために使用できるエンドポイント。
• 検索エンドポイント - 検索リクエストを送信するために使用できるエンドポイント。
• 検索可能ドキュメント - インデックスが作成されたドキュメントの数。
• アクセスポリシー - ドメインのドキュメントエンドポイントおよび検索エンドポイントについて設
定されたアクセスポリシー。
• 分析スキーム - ドメインのインデックスフィールドに適用できるテキスト分析スキーム。
• インデックスフィールド - 設定された各インデックスフィールドの名前と型。
API Version 2013-01-01
46
Amazon CloudSearch 開発者ガイド
ドメイン情報の取得
• 式 - 検索結果をソートするために使用できる式。
• サジェスタ - 不完全なクエリについて候補を取得するために使用できるサジェスタ。
ドメインが最初に作成されたときには、ドメインのステータスにはドメインが現在アクティブ化中で
あり、その他の情報は使用できないことが示されます。ドメインのドキュメントエンドポイントと検
索エンドポイントが利用可能になると、ドメインのステータスには、データの追加や検索リクエスト
の送信に使用できるエンドポイントのアドレスが表示されます。インデックス作成のためのデータを
送信していない場合、検索可能なドキュメントの数は 0 です。
Amazon CloudSearch console (p. 47)によってドメインに関するすべての情報を表示できま
す。aws cloudsearch describe-domains コマンドまたは AWS SDK を使用する場合、ドメイン
の ARN は、ドメインのアクセスポリシー内に示されます。
検索可能ドキュメントの数を取得するには、コンソールを使用するか、matchall リクエストをドメ
インの検索エンドポイントに送信します。
q=matchall&q.parser=structured&size=0
トピック
• Amazon CloudSearch コンソールを使用したドメイン情報の取得 (p. 47)
• AWS CLI を使用した Amazon CloudSearch ドメイン情報の取得 (p. 49)
• AWS SDK を使用したドメイン情報の取得 (p. 51)
Amazon CloudSearch コンソールを使用したドメイン情報の取
得
Amazon CloudSearch コンソールを使用して、お客様のすべてのドメインに関する情報を表示できま
す。コンソールのダッシュボードには、作成したドキュメントの概要 (ドメイン名、ステータス、検索
可能ドキュメントの数など) が表示されます。最新の情報を使ってテーブルを更新するには、ページ上
部の [Refresh] ボタンをクリックします。
ドメインは 5 つの状態のいずれかになります。
• LOADING - ドメインは作成されたばかりであり、初期化中です。ドキュメントのアップロードを開
始する前に、ドメインのステータスが PROCESSING、NEEDS INDEXING、または ACTIVE に変わ
るまで待つ必要があります。
• ACTIVE - ドメインは実行中であり、設定されたすべてのフィールドについてインデックスが作成さ
れました。
• NEEDS INDEXING - インデックスの再構築を必要とするドメインの設定に変更を加えました。ドメ
インを検索する場合、これらの変更は結果に反映されません。変更が完了したら、[Run Indexing]
をクリックしてインデックスを再構築します。
• PROCESSING - 設定の変更をドメインに適用しています。ドメインを検索する場合、最新の設定の
変更が結果に反映されない可能性があります。
• BEING DELETED - ドメインとその内容を削除することを選択した場合、ドメインとそのすべての
リソースは削除中になります。削除が完了すると、そのドメインはドメインのリストから削除され
ます。
Amazon CloudSearch ダッシュボードから、次の操作を実行できます。
• 検索ドメインのステータスを表示する
• 特定のドメイン向けダッシュボードにアクセスする
• Amazon CloudSearch ドキュメントやその他のリソースにアクセスする
API Version 2013-01-01
47
Amazon CloudSearch 開発者ガイド
ドメイン情報の取得
特定のドメインに関する詳細情報を表示するには
1.
AWS マネジメントコンソールにサインインし、Amazon CloudSearch console at https://
console.aws.amazon.com/cloudsearch/home を開きます。
2.
[Navigation] ペインで、ドメインの名前をクリックします。
ドメインダッシュボードには、選択されたドメインのステータスの概要が表示されます。ドメイン
ダッシュボードから、次の操作を実行できます。
• ドメインのステータスを表示する
• ドキュメントをドメインにアップロードする
• ドメインを検索する
• ドメインの設定ページにアクセスする
• ドメインの削除
ドメインに設定されたアクセスポリシーを表示するには
•
[Navigation] ペインでドメインの [Access Policies] リンクをクリックします。アクセスポリシーの
詳細については、「Amazon CloudSearch のアクセス設定 (p. 30)」を参照してください。
ドメインに設定された可用性オプションを表示するには
•
[Navigation] ペインでドメインの [Availability Options] リンクをクリックします。アクセスポリ
シーの詳細については、「可用性オプションの設定 (p. 44)」を参照してください。
ドメインに設定されたインデックスフィールドを表示するには
•
[Navigation] ペインでドメインの [Indexing Options] リンクをクリックします。インデックス
フィールドの詳細については、「インデックスフィールドの設定 (p. 66)」を参照してくださ
い。
ドメインに設定されたスケーリングオプションを表示するには
•
[Navigation] ペインでドメインの [Scaling Options] リンクをクリックします。インデックス
フィールドの詳細については、「スケーリングオプションの設定 (p. 41)」を参照してくださ
い。
ドメインに設定されたサジェスタを表示するには
•
[Navigation] ペインでドメインの [Suggesters] リンクをクリックします。インデックスフィール
ドの詳細については、「Amazon CloudSearch のサジェスタの設定 (p. 128)」を参照してくださ
い。
ドメインに設定された式を表示するには
•
[Navigation] ペインでドメインの [Expressions] リンクをクリックします。式の詳細については、
「式の設定 (p. 134)」を参照してください。
ドメインに設定されたテキスト処理オプションを表示するには
•
[Navigation] ペインでドメインの [Analysis Schemes] リンクをクリックします。テキストオプ
ションについては、「分析スキームの設定 (p. 73)」を参照してください。
API Version 2013-01-01
48
Amazon CloudSearch 開発者ガイド
ドメイン情報の取得
AWS CLI を使用した Amazon CloudSearch ドメイン情報の取
得
検索ドメインのステータスを取得するには、aws cloudsearch describe-domains コマンドを使
用します。ドメインに設定されたアクセスポリシー、可用性オプション、スケーリングオプションな
どの特定の情報を取得するには、オプションごとに個別の describe コマンドを使用します。AWS CLI
のインストールおよびセットアップの詳細については、『AWS Command Line Interface ユーザーガ
イド』を参照してください。
Note
2.0.0.1 バージョンの Amazon CloudSearch コマンドラインツールを使用している場合
は、cs-describe-domain コマンドを使用して検索ドメインに関する情報を取得できます。
ただし、AWS CLI に移行することをお勧めします。AWS CLI は、インストールが簡単で、設
定が統一されていて、コマンドライン構文が一貫しているクロスサービスの CLI を提供しま
す。
ドメインのステータス情報を取得するには
•
すべてのドメインに関する情報を取得するには、aws cloudsearch describe-domains コマ
ンドを実行します。特定のドメインに関する情報を取得するには、--domain-names オプション
を使用して目的のドメインを指定します。たとえば、次のリクエストは、movies ドメインのス
テータスを取得します。
aws cloudsearch describe-domains --domain-names movies
{
"DomainStatusList": [
{
"SearchInstanceType": "search.m1.small",
"DomainId": "965407640801/movies",
"Created": true,
"Deleted": false,
"SearchInstanceCount": 1,
"DomainName": "movies",
"SearchService": {
"Endpoint": "search-movies-m4fcjhuxgj6i76smhyiz7pfxsu.useast-1.cloudsearch.amazonaws.com"
},
"RequiresIndexDocuments": false,
"Processing": true,
"DocService": {
"Endpoint": "doc-movies-m4fcjhuxgj6i76smhyiz7pfxsu.useast-1.cloudsearch.amazonaws.com"
},
"ARN": "arn:aws:cloudsearch:us-east-1:965407640801:domain/
movies",
"SearchPartitionCount": 1
}
]
}
describe-domains コマンドは、ドメインの検索可能ドキュメント数を返しません。検索可能ド
キュメントの数を取得するには、コンソールを使用するか、matchall リクエストをドメインの検索
エンドポイントに送信します。
API Version 2013-01-01
49
Amazon CloudSearch 開発者ガイド
ドメイン情報の取得
q=matchall&q.parser=structured&size=0
ドメインに設定された分析スキームを取得するには
•
aws cloudsearch describe-analysis-schemes コマンドを実行します。たとえば、次のリ
クエストは、movies ドメインに設定された分析スキームを取得します。
aws cloudsearch describe-analysis-schemes --domain-name movies
{
"AnalysisSchemes": [
{
"Status": {
"PendingDeletion": false,
"State": "Active",
"CreationDate": "2014-03-28T19:27:30Z",
"UpdateVersion": 31,
"UpdateDate": "2014-03-28T19:27:30Z"
},
"Options": {
"AnalysisSchemeLanguage": "en",
"AnalysisSchemeName": "samplescheme",
"AnalysisOptions": {
"AlgorithmicStemming": "none",
"Synonyms": "{\"aliases\":{\"youth\":[\"young adult
\"]},\"groups\":[[\"tool box\",\"toolbox\"],[\"band saw\",\"bandsaw\"],
[\"drill press\",\"drillpress\"]]}",
"StemmingDictionary": "{}",
"Stopwords": "[]"
}
}
}
]
}
ドメインに設定された可用性オプションを取得するには
•
aws cloudsearch describe-availability-options コマンドを実行します。たとえば、
次のリクエストは、movies ドメインに設定された可用性オプションを取得します。ドメインで
マルチ AZ が有効になっている場合、Options 値は true に設定されています。
aws cloudsearch describe-availability-options --domain-name movies
{
"AvailabilityOptions": {
"Status": {
"PendingDeletion": false,
"State": "Processing",
"CreationDate": "2014-04-30T20:42:57Z",
"UpdateVersion": 13,
"UpdateDate": "2014-05-01T00:17:45Z"
},
"Options": true
}
}
API Version 2013-01-01
50
Amazon CloudSearch 開発者ガイド
Amazon CloudWatch を使用したドメインのモニタリング
ドメインに設定された式を取得するには
•
aws cloudsearch describe-expressions コマンドを実行します。たとえば、次のリクエス
トは、movies ドメインに設定された式を取得します。
aws cloudsearch describe-expressions --domain-name movies
{
"Expression": {
"Status": {
"PendingDeletion": false,
"State": "Processing",
"CreationDate": "2014-05-01T01:15:18Z",
"UpdateVersion": 52,
"UpdateDate": "2014-05-01T01:15:18Z"
},
"Options": {
"ExpressionName": "popularhits",
"ExpressionValue": "((0.3*popularity)/10.0)+(0.7* _score)"
}
}
}
AWS SDK を使用したドメイン情報の取得
AWS SDK では(Android および iOS SDK を除く)、DescribeDomains (p. 182) も含め
て、Amazon CloudSearch 設定 API で定義されたすべての Amazon CloudSearch アクションがサポー
トされています。AWS SDK のインストールと使用の詳細については、「AWS Software Development
Kits」を参照してください。
DescribeDomains アクションは、ドメインの検索可能ドキュメント数を返しません。検索可能ド
キュメントの数を取得するには、コンソールを使用するか、matchall リクエストをドメインの検索
エンドポイントに送信します。
q=matchall&q.parser=structured&size=0
Amazon CloudWatch を使用した Amazon
CloudSearch ドメインのモニタリング
パフォーマンス統計を収集、分析できるように、Amazon CloudSearch は Amazon CloudWatch に自
動的にメトリックスを送信します。Amazon CloudSearch コンソール、または CloudWatch コンソー
ル、AWS CLI、または AWS SDK を使用して、これらのメトリックスをモニタリングできます。ドメ
イン内の検索インスタンスはそれぞれ、1 分ごとにメトリックスを CloudWatch に送信します。2 週
間分のメトリックスがアーカイブされ、それより古いデータは破棄されます。
CloudWatch を経由して報告される Amazon CloudSearch メトリックスには料金はかかりません。メ
トリックスにアラームを設定している場合は、CloudWatch の標準料金が請求されます。メトリック
スは Amazon CloudSearch でサポートされているすべてのリージョンで使用できます。
トピック
• Amazon CloudSearch ドメインの CloudWatch メトリックスの表示 (p. 52)
Average や Sum など、すべての統計が必ずしも常にすべてのメトリックスに適用可能であるとは限り
ません。ただし、これらの値はすべて Amazon CloudSearch コンソール経由で利用できます。または
API Version 2013-01-01
51
Amazon CloudSearch 開発者ガイド
CloudTrail を使用した設定サービスの呼び出しの記録
CloudWatch コンソール、AWS CLI、AWS SDK を使用してすべてのメトリックスを利用できます。
次の表は、各メトリックスに適用可能な有効な統計のリストを示します。
Amazon CloudSearch ドメインの CloudWatch メトリックスの
表示
Amazon CloudSearch コンソールは CloudWatch に報告されるメトリックスをグラフ化します。メ
トリックスは、CloudWatch コンソール、AWS CLI、AWS SDK からアクセスすることもできます。
詳細については、『Amazon CloudWatch 開発者ガイド』の「メトリックスの表示、グラフ化、パブ
リッシュ」を参照してください。
Amazon CloudSearch コンソールを使用した検索ドメインのメトリックスの表示
1.
AWS マネジメントコンソールにサインインして Amazon CloudSearch コンソール (https://
console.aws.amazon.com/cloudsearch) を開きます。
2.
ナビゲーションペインで、ドメインの名前をクリックし、そのドメインの [Monitoring] リンクを
クリックします。
AWS CloudTrail を使用した Amazon CloudSearch
設定のサービス呼び出しの記録
Amazon CloudSearch は AWS アカウント、またはその代理によって行われた AWS API コールをすべ
て記録するサービスである CloudTrail と統合されています。ログファイルは、指定された Amazon S3
バケットに渡されます。CloudTrail は、Amazon CloudSearch コンソールによって送信されたものを
含むすべての Amazon CloudSearch 設定サービス API コールを取得します。
CloudTrail により収集された情報を使用して、検索ドメインのアクティビティを監視できま
す。Amazon CloudSearch に対してどのようなリクエストが行われたか (リクエストの実行元 IP アド
レス、実行者、実行日時など) を判断できます。CloudTrail の詳細(設定して有効にする方法など)に
ついては、AWS CloudTrail User Guideを参照してください。
CloudTrail での Amazon CloudSearch 情報
AWS アカウントで CloudTrail のログ記録を有効にすると、Amazon CloudSearch アクションに対す
る API コールがログファイルに記録されます。Amazon CloudSearch レコードは、他の AWS サー
ビスレコードと一緒にログファイルに記録されます。CloudTrail は、期間とファイルサイズに基づい
て、新しいファイルをいつ作成して書き込むかを決定します。
すべての Amazon CloudSearch 設定サービスのアクションが記録されます。たとえ
ば、CreateDomain、DescribeDomains、UpdateServiceAccessPolicies を呼び出す
と、CloudTrail ログファイルにエントリが生成されます。アクションの完全なリストについては、
『アクション (p. 155)』を参照してください。
各ログエントリには、誰がリクエストを生成したかに関する情報が含まれます。ログのユーザー
ID 情報は、リクエストが、ルートまたは IAM ユーザーの認証情報を使用して送信されたか、ロー
ルまたはフェデレーションユーザーの一時的なセキュリティ認証情報を使用して送信されたか、
あるいは別の AWS サービスによって送信されたかを確認するのに役立ちます。詳細について
は、userIdentityCloudTrail Event Reference の フィールドを参照してください。
必要な場合はログファイルを自身のバケットに保管できますが、ログファイルを自動的にアーカイブ
または削除するにように Amazon S3 ライフサイクルルールを定義することもできます。デフォルト
では Amazon S3 のサーバー側の暗号化(SSE)を使用して、ログファイルが暗号化されます。
ログファイルの配信時にすぐにアクションを実行する場合、新しいログファイルの配信時に
CloudTrail により Amazon SNS 通知を発行することを選択できます。詳細については、「Amazon
SNS 通知の構成」を参照してください。
API Version 2013-01-01
52
Amazon CloudSearch 開発者ガイド
CloudTrail を使用した設定サービスの呼び出しの記録
また、複数の AWS リージョンと複数の AWS アカウントからの Amazon CloudSearch ログファイル
を 1 つの Amazon S3 バケットに集約することもできます。詳細については、「CloudTrail ログファ
イルの単一の Amazon S3 バケットへの集約」を参照してください。
Amazon CloudSearch ログファイルエントリの概要
CloudTrail ログファイルには、複数の JSON 形式イベントで構成される 1 つ以上のログエントリを
記録できます。ログエントリは任意の送信元からの単一のリクエストを表し、リクエストされたアク
ション、パラメーター、アクションの日時などに関する情報を含みます。ログエントリは、特定の順
序で生成されるわけではなく、パブリック API コールのスタックトレース順に並んではいません。
CloudTrail ログファイルは、Amazon CloudSearch 設定サービス API コールだけでなく、AWS アカ
ウントに関するすべての AWS API コールイベントを含みます。ただし、ログファイルを読み取っ
て、eventSource cloudsearch.amazonaws.com 用にスキャンできます。eventName 要素には、
呼びだされた設定サービスアクションの名前が含まれます。
次の例では、検索ドメインを作成し、ドメイン用にインデックスフィールドを設定したユーザーの
CloudTrail ログを示しています。応答する API コール (CreateDomain と DefineIndexField) は各
レコードの eventName 要素で確認できます。ユーザー (Alice) についての情報は、userIdentity 要
素で確認できます。
{
"Records": [
{
"eventVersion": "1.01",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDAI2JXM4FBZZEXAMPLE",
"arn": "arn:aws:iam::123456789012:user/Alice",
"accountId": "123456789012",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE"
},
"eventTime": "2014-09-12T19:47:32Z",
"eventSource": "cloudsearch.amazonaws.com",
"eventName": "CreateDomain",
"awsRegion": "us-east-1",
"sourceIPAddress": "198.51.100.0",
"requestParameters": {
"domainName": "imdb-movies"
},
"responseElements": {
"domainStatus": {
"created": true,
"searchService": {
},
"processing": false,
"docService": {
},
"domainName": "imdb-movies",
"domainId": "123456789012\/imdb-movies",
"requiresIndexDocuments": false,
"searchPartitionCount": 0,
"deleted": false,
"arn": "arn:aws:cloudsearch:us-east-1:123456789012:domain\/imdbmovies",
"searchInstanceCount": 0
}
API Version 2013-01-01
53
Amazon CloudSearch 開発者ガイド
CloudTrail を使用した設定サービスの呼び出しの記録
},
{
"eventVersion": "1.01",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDAI2JXM4FBZZEXAMPLE",
"arn": "arn:aws:iam::123456789012:user/Alice",
"accountId": "123456789012",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE"
},
"eventTime": "2014-09-12T19:47:34Z",
"eventSource": "cloudsearch.amazonaws.com",
"eventName": "DefineIndexField",
"awsRegion": "us-east-1",
"sourceIPAddress": "198.51.100.0",
"requestParameters": {
"domainName": "imdb-movies",
"indexField": {
"indexFieldType": "text",
"indexFieldName": "plot",
"textOptions": {
"highlightEnabled": true,
"returnEnabled": true,
"analysisScheme": "_en_default_",
"sortEnabled": true
}
}
},
"responseElements": {
"indexField": {
"options": {
"indexFieldType": "text",
"indexFieldName": "plot",
"textOptions": {
"highlightEnabled": true,
"returnEnabled": true,
"analysisScheme": "_en_default_",
"sortEnabled": true
}
},
"status": {
"pendingDeletion": false,
"state": "RequiresIndexDocuments",
"updateDate": "Sep 12, 2014 12:47:33 PM",
"creationDate": "Sep 12, 2014 12:47:33 PM",
"updateVersion": 5
}
}
},
"requestID": "98c6c9f4-7e0f-4982-ae43-67a183e74968",
"eventID": "3a7fe907-b482-46de-9f25-0ac035e84d1d"
}
]
}
API Version 2013-01-01
54
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch の使用状況と料金の追跡
Amazon CloudSearch の使用状況と料金の追跡
AWS アカウントアクティビティページを使用して、Amazon CloudSearch の使用状況と料金を追跡で
きます。
Amazon CloudSearch の使用状況の情報を取得するには
1.
aws.amazon.com に移動し、[My Account/Console] メニューから [Account Activity] を選択しま
す。(AWS ポータルにまだログインしていない場合、ユーザー名とパスワードを入力するよう求
められます)。
2.
[Details] テーブルで、CloudSearch のエントリまで下へスクロールして、[Download Usage
Report] をクリックします。
3.
レポートに含める情報を指定し、ダウンロードするデータ形式のダウンロードボタンをクリック
します。レポートは XML 形式または CSV 形式としてダウンロードできます。
Amazon CloudSearch ドメインの削除
検索ドメインを使用しなくなった場合、追加課金が発生しないように削除する必要があります。ドメ
インにドキュメントが含まれていない場合でも引き続き課金されます。すべてのドキュメントを削除
してもドメインは削除されません。ドメインを削除すると、ドメインに関連付けられているインデッ
クスが削除され、ドメインのドキュメントおよび検索エンドポイントが完全にオフラインになりま
す。ドメインが削除され、そのリソースがすべて廃棄されるまでには時間がかかることがあります。
通常、小さなドメインは短時間で削除されますが、特に大きなドメインは削除に長い時間がかかる場
合があります。このプロセス中、ドメインのステータスは BEING DELETED に設定され、アカウント
には課金されません。
aws cloudsearch delete-domain コマンドを使用するか、AWS SDK を使用して、Amazon
CloudSearch コンソールからドメインを削除できます。
トピック
• Amazon CloudSearch コンソールを使用したドメインの削除 (p. 55)
• AWS CLI を使用したドメインの削除 (p. 56)
• AWS SDK を使用した Amazon CloudSearch ドメインの削除 (p. 56)
Amazon CloudSearch コンソールを使用したドメイ
ンの削除
Amazon CloudSearch コンソールで、ドメインダッシュボードからドメインを簡単に削除できます。
ドメインを削除するには
1.
AWS マネジメントコンソールにサインインし、Amazon CloudSearch console at https://
console.aws.amazon.com/cloudsearch/home を開きます。
2.
[Navigation] ペインで、削除するドメインの名前をクリックします。
3.
ドメインダッシュボードで、[Delete this Domain] ボタンをクリックします。
4.
[Delete Domain] ダイアログボックスで、チェックボックスをオンにし、[OK] をクリックしてド
メインの削除を確認します。
API Version 2013-01-01
55
Amazon CloudSearch 開発者ガイド
AWS CLI を使用したドメインの削除
AWS CLI を使用したドメインの削除
検索ドメインとそのすべてのリソースを削除するには、aws cloudsearch delete-domain コマン
ドを使用します。AWS CLI のインストールおよびセットアップの詳細については、『AWS Command
Line Interface ユーザーガイド』を参照してください。
Note
2.0.0.1 バージョンの Amazon CloudSearch コマンドラインツールを使用している場合、csdelete-domain コマンドを使用して検索ドメインを削除できます。ただし、AWS CLI に移
行することをお勧めします。AWS CLI は、インストールが簡単で、設定が統一されていて、
コマンドライン構文が一貫しているクロスサービスの CLI を提供します。
ドメインを削除するには
•
aws cloudsearch delete-domain コマンドを実行し、削除するドメインの名前を指定しま
す。たとえば、movies ドメインを削除するには、--domain-name movies と指定します。
aws cloudsearch delete-domain --domain-name movies
AWS SDK を使用した Amazon CloudSearch ドメイ
ンの削除
AWS SDK では(Android および iOS SDK を除く)、DeleteDomain (p. 171) も含めて、Amazon
CloudSearch 設定 API で定義されたすべての Amazon CloudSearch アクションがサポートされていま
す。AWS SDK のインストールと使用の詳細については、「AWS Software Development Kits」を参照
してください。
Amazon CloudSearch ドメインへのタグ付け
Amazon CloudSearch タグを使用してメタデータを検索ドメインに添付します。 AWS は、タグに意
味を適用しません。タグは文字列として厳密に解釈されます。すべてのタグには次の要素が含まれま
す。
タグ要素
説明
タグキー
タグキーは、必須のタグ名です。タグキーは添付されるドメインで一意にする必要
があります。タグキーと値の基本的な制限の一覧については、「タグの制限」を参
照してください。
タグ値
タグ値は、タグの省略可能な文字列値です。タグ値は null を指定できます。ま
た、タグセット内で一意である必要はありません。例えば、project/Trinity と costcenter/Trinity のタグセット内に 1 つのキーと値のペアを使用できます。タグキーと
値の基本的な制限の一覧については、「タグの制限」を参照してください。
各 Amazon CloudSearch ドメインには、そのドメインに割り当てられているすべてのタグを格納す
るタグセットがあります。AWS は Amazon CloudSearch ドメインにタグを自動的に設定しません。
タグセットには、最大 10 個のタグを格納でき、空にすることもできます。Amazon CloudSearch ド
メインに追加したタグのキーがそのリソースの既存のタグのキーと同じ場合、既存の値は新しい値に
よって上書きされます。
API Version 2013-01-01
56
Amazon CloudSearch 開発者ガイド
タグの操作 (コンソール)
タグキーを使用してカテゴリを定義し、タグ値をそのカテゴリの項目にすることができます。
具体的には、「project」というタグキーと「Salix」というタグ値を定義して、ドメイン
が Salix プロジェクトに割り当てられていることを示すことができます。またタグを使用し
て、environment=test や environment=production のようなキーを指定し、ドメインがテスト
環境か本番環境かを指定することもできます。検索ドメインに関連付けられているメタデータの追跡
が簡単になるように、一貫した一連のタグキーを使用することをお勧めします。
また、タグを使用して AWS 請求書を整理し、独自のコスト構造を思案したり、似たようなタグを
つけられたリソースの料金をグループ化することでコストを追跡することもできます。そのために
は、AWS アカウントにサインアップして、タグキー値が含まれた AWS アカウントの請求書を取得す
る必要があります。その後、同じタグキー値を持つリソースに従って請求情報を整理し、結合したリ
ソースのコストを確認します。たとえば、複数の Amazon CloudSearch ドメインにキーと値のペアを
タグ付けし、請求情報を整理して複数のサービスにおける各ドメインの合計コストを確認できます。
詳細については、『AWS 請求情報とコスト管理』の「コスト配分とタグ付け」を参照してください。
Note
タグは承認用にキャッシュに格納されます。そのため、Amazon CloudSearch ドメインに対
するタグの追加や更新には数分かかることがあります。
タグの操作 (コンソール)
Amazon CloudSearch コンソールを使用してリソースタグを作成するには、以下の手順を使用しま
す。
タグを作成するには
1.
https://aws.amazon.com にアクセスし、[Sign In to the Console] を選択します。
2.
[Application Services] の下で、[CloudSearch] を選択します。
3.
ナビゲーションペインで、ドメインを選択します。
4.
ナビゲーションペインで [Manage tags] を選択します。
5.
[Key] 列にタグキーを入力します。
6.
(オプション) [Value] 列にタグ値を入力します。
7.
[Submit] を選択します。
タグを削除するには
1.
https://aws.amazon.com にアクセスし、[Sign In to the Console] を選択します。
2.
[Application Services] の下で、[CloudSearch] を選択します。
3.
ナビゲーションペインで、ドメインを選択します。
4.
ナビゲーションペインで [Manage tags] を選択します。
5.
削除するタグの横にある [Remove tag] を選択します。
6.
[Submit] を選択します。
コンソールを使用したタグの操作の詳細については、『AWS Management Console Getting Started
Guide』の「Working with the Tag Editor」を参照してください。
タグの操作 (AWS CLI)
AWS CLI で add-tags コマンドを使用して、Amazon CloudSearch ドメインのリソースタグを作成で
きます。
API Version 2013-01-01
57
Amazon CloudSearch 開発者ガイド
タグの操作 (AWS SDK)
パラメータ
説明
--arn
タグが添付されるドメインの Amazon Resource Name。
--tag-list
スペースで区切られたキーと値のペアの以下の形式のセット:
Key=<key>,Value=<value>
例
次の例は、logs ドメイン用に 2 個のタグを作成します。
aws cloudsearch add-tags --arn arn:aws:cs:us-east-1:1:379931976431:domain/
logs --tag-list Key=service,Value=CloudSearch Key=instances,Value=m3.2xlarge
remove-tags コマンドを使用してドメインからタグを削除できます。
構文
RemoveTags --arn=<domain_arn> --tag-keys Key=<key>,Value=<value>
パラメータ
説明
--arn
タグが添付されるドメインの Amazon Resource Name (ARN)。
--tag-keys
ドメインから削除するスペース区切りのタグキーのセット。
例
次の例は、logs ドメインから前述の例で作成した 2 つのタグを削除します。
aws cloudsearch remove-tags --arn arn:aws:cs:us-east-1:379931976431:domain/
logs --tag-keys service instances
list-tags コマンドでドメインの既存のタグを表示できます。
構文
list-tags --arn=<domain_arn>
パラメータ
説明
--arn
タグが添付されるドメインの Amazon Resource Name (ARN)。
例
次の例は、logs ドメイン用のすべてのリソースタグをリスト表示します。
aws cloudsearch list-tags --arn arn:aws:cs:us-east-1:379931976431:domain/logs
タグの操作 (AWS SDK)
AWS SDK では (Android および iOS SDK を除く)、AddTags、ListTags、および RemoveTags も
含めて、Amazon CloudSearch 設定 API リファレンス (p. 153)で定義されたすべてのアクション
API Version 2013-01-01
58
Amazon CloudSearch 開発者ガイド
タグの操作 (AWS SDK)
がサポートされています。AWS SDK のインストールと使用の詳細については、「AWS Software
Development Kits」を参照してください。
API Version 2013-01-01
59
Amazon CloudSearch 開発者ガイド
データの準備
Amazon CloudSearch でのデータの
インデックス作成方法の制御
ドメインのインデックス作成オプションおよび分析スキームを設定することによって、データのイン
デックス作成方法を制御します。インデックス作成オプションは、データがどのようにインデックス
フィールドにマッピングされ、どのような情報をインデックスから検索および取得できるかを制御し
ます。アップロードするデータにはドメインのインデックス作成オプションで設定されているフィー
ルドが含まれており、フィールド値が、設定されたフィールドタイプと互換性がある必要がありま
す。分析スキームは、言語固有のステミング、ストップワード、およびシノニムオプションを定義す
ることによって、インデックス作成時に text フィールドと text-array フィールドを処理する方法
を制御します。
トピック
• Amazon CloudSearch 用にデータを準備 (p. 60)
• Amazon CloudSearch ドメインのインデックスフィールドの設定 (p. 66)
• Amazon CloudSearch での動的フィールドの使用 (p. 70)
• Amazon CloudSearch のテキスト分析スキームの設定 (p. 73)
• Amazon CloudSearch でのテキスト処理 (p. 82)
Amazon CloudSearch 用にデータを準備
インデックス作成のための検索ドメインにアップロードする前に、JSON または XML 形式でデータ
を作成する必要があります。検索結果として返せるようにする各項目がドキュメントとして示されま
す。各ドキュメントには固有のドキュメント ID、および検索し、結果を返すデータを含むフィールド
が 1 つ以上あります。このドキュメントフィールドを使用して、ドメイン用に設定したインデックス
フィールドの値を入力します。詳細については、「インデックスフィールドの設定 (p. 66)」を参照
してください。
「Creating Document Batches (p. 61)」はデータの整形方法を説明しています。Amazon
CloudSearch の JSON および XML スキーマの詳細については、「ドキュメントサービス API リファ
レンス (p. 236)」を参照してください。
API Version 2013-01-01
60
Amazon CloudSearch 開発者ガイド
インデックスフィールドにド
キュメントデータをマッピング
トピック
• Amazon CloudSearch でインデックスフィールドにドキュメントデータをマッピング (p. 61)
• Amazon CloudSearch でドキュメントバッチを作成 (p. 61)
Amazon CloudSearch でインデックスフィールドに
ドキュメントデータをマッピング
インデックスのフィールドに入力するために、Amazon CloudSearch は対応するドキュメントフィー
ルドからデータを読み込みます。ドキュメントデータで指定されたフィールドはすべてインデックス
作成オプションで設定する必要があります。ドキュメントはドメイン用に設定されたフィールドのサ
ブセットを含むことができます。すべてのドキュメントが必ずしもすべてのフィールドを含む必要は
ありません。さらに、あるフィールドから別のフィールドにデータをコピーして、インデックスの追
加フィールドに入力することもできます。これにより、フィールドに対して異なるオプションを設定
することで、同一のソースデータを異なる方法で利用することができます。
text-array のような配列フィールドは、最大 1000 個の値を含むことができます。検索時に、これ
らの値のどれかが検索クエリに一致すると、ドキュメントはヒット項目として返されます。
Amazon CloudSearch でドキュメントバッチを作成
ドキュメントバッチを作成して、検索可能にするデータを記述します。ドキュメントバッチをドメイ
ンに送信すると、ドメインのインデックス作成オプションに従って自動的にデータのインデックスが
作成されます。コマンドラインツールおよび Amazon CloudSearch コンソールは、各種ソースドキュ
メントから自動的にドキュメントバッチを生成できます。
ドキュメントバッチは追加および削除操作のコレクションであり、ドメインで追加、更新、削除する
ドキュメントを表します。バッチは JSON または XML で記述できます。最大バッチサイズは 5 MB
です。個々のドキュメントの最大サイズは 1 MB です。
可能な限り最高のアップロードパフォーマンスを実現するために、追加および削除オペレーションを
最大バッチサイズに近いバッチにグループ化します。ドキュメントサービスに大量の単一ドキュメン
トバッチを送信すると、変更が検索結果に反映されるまでに要する時間が長くなります。アップロー
ドするデータが大量にある場合は、バッチを並列して送信できます。使用できる同時アップローダー
の数は、検索インスタンスタイプによって異なります。ドメインの必要なインスタンスタイプオプ
ションを設定することで、一括アップロード用に事前スケーリングすることができます。詳細につい
ては、「スケーリングオプションの設定 (p. 41)」を参照してください。
バッチ内のドキュメントごとに、以下を指定する必要があります。
• 実行するオペレーション: add または delete。
• ドキュメントの一意の ID。ドキュメント ID では、任意の英字または数字と次の文字を使用できま
す。_ - = # ; : / ? @ & ドキュメント ID は、1~128 文字以内にする必要があります。
• 各ドキュメントフィールドの名前と値のペア。latlon フィールドの値を指定するには、
カンマ区切りリストとして緯度と経度を指定します。たとえば、"location_field":
"35.628611,-120.694152" のようになります。ドキュメントを JSON で指定する場合、フィー
ルドの値を null にすることはできません(ただしフィールドを完全に省略することはできま
す)。
たとえば、次の JSON バッチは、1 個のドキュメントを追加し、1 個のドキュメントを削除します。
[
{"type": "add",
"id":
"tt0484562",
API Version 2013-01-01
61
Amazon CloudSearch 開発者ガイド
ドキュメントバッチの作成
"fields": {
"title": "The Seeker: The Dark Is Rising",
"directors": "Cunningham, David L.",
"genres": ["Adventure","Drama","Fantasy","Thriller"],
"actors": ["McShane, Ian","Eccleston, Christopher","Conroy, Frances",
"Crewson, Wendy","Ludwig, Alexander","Cosmo, James",
"Warner, Amelia","Hickey, John Benjamin","Piddock, Jim",
"Lockhart, Emma"]
}
},
{"type": "delete",
"id":
"tt0484575"
}
]
XML 形式では同じバッチが次のようになります。
<batch>
<add id="tt0484562">
<field name="title">The Seeker: The Dark Is Rising</field>
<field name="directors">Cunningham, David L.</field>
<field name="genres">Adventure</field>
<field name="genres">Drama</field>
<field name="genres">Fantasy</field>
<field name="genres">Thriller</field>
<field name="actors">McShane, Ian</field>
<field name="actors">Eccleston, Christopher</field>
<field name="actors">Conroy, Frances</field>
<field name="actors">Ludwig, Alexander</field>
<field name="actors">Crewson, Wendy</field>
<field name="actors">Warner, Amelia</field>
<field name="actors">Cosmo, James</field>
<field name="actors">Hickey, John Benjamin</field>
<field name="actors">Piddock, Jim</field>
<field name="actors">Lockhart, Emma</field>
</add>
<delete id="tt0484575" />
</batch>
無効な JSON または XML を含むドキュメントバッチをアップロードすると、予想できない結果が生
じます。エラーが発生すると処理が停止しますが、それ以前の追加および削除オペレーションはドメ
インに適用されます。JSON または XML データの妥当性は、xmllint や jsonlint のようなツール
を使用して確認できます。
JSON バッチと XML バッチにはどちらも、XML で有効な UTF-8 文字のみを含めることができます。
有効な文字は、制御文字のタブ(0009)、復帰(000D)、改行(000A)、および Unicode と ISO/
IEC 10646 での有効な文字です。FFFE、FFFF、サロゲートブロックの D800–DBFF と DC00–DFFF
は無効で、エラーが発生します(詳細については、『Extensible Markup Language (XML) 1.0 (Fifth
Edition)』 を参照してください)。無効な文字に一致する次の正規表現を使用して、無効な文字を削
除することができます/[^\u0009\u000a\u000d\u0020-\uD7FF\uE000-\uFFFD]/ 。
データを JSON 形式にする場合、フィールド値内の引用符(")およびバックスラッシュ(\)はバッ
クスラッシュを使ってエスケープする必要があります。以下に例を示します。
"title":"Where the Wild Things Are"
"isbn":"0-06-025492-0"
"image":"images\\covers\\Where_The_Wild_Things_Are_(book)_cover.jpg"
API Version 2013-01-01
62
Amazon CloudSearch 開発者ガイド
ドキュメントバッチの作成
"comment":"Sendak's \"Where the Wild Things Are\" is a children's classic."
データを XML 形式にする場合、フィールド値内のアンパサンド (&) および、不等号 (より小さい) (<)
は、該当する実体参照 (&amp; と &lt;) によって表現する必要があります。
以下に例を示します。
<field
<field
<field
<field
name="title">Little Cow &amp; the Turtle</field>
name="isbn">0-84466-4774</field>
name="image">images\covers\Little_Cow_&amp;_the_Turtle.jpg</field>
name="comment">&lt;insert comment></field>
ユーザー生成コンテンツの大きなブロックがある場合は、特殊な文字をすべて実体参照に置き換える
のではなく、フィールド全体を CDATA セクションで囲むこともできます。以下に例を示します。
<field name="comment"><!CDATA[Monsters & mayhem--what's not to like! ]]>
Amazon CloudSearch でのドキュメントの追加および更新
追加オペレーションでは、インデックスに追加する新しいドキュメント、または、更新する既存のド
キュメントを指定します。
ドキュメントを追加または更新するときは、ドキュメントの ID と、ドキュメントが含むすべての
フィールドを指定します。すべてのドキュメントで、すべての設定されたフィールドを指定する必要
はありません。ドキュメントは設定されたフィールドのサブセットを含むことができます。しかし、
ドキュメントのすべてのフィールドは、ドメインで設定されているフィールドに対応する必要があり
ます。
ドキュメントを検索ドメインに追加するには
1.
追加するドキュメントの ID と、検索できるフィールドまたは結果で戻り値として使用できる各
フィールドを含む追加オペレーションを指定します。ドキュメントがすでに存在する場合、追加
オペレーションによってドキュメントは置き換えられます(選択したフィールドだけを更新する
ことはできません。ドキュメントは新しいバージョンで上書きされます)。たとえば、次のオペ
レーションはドキュメント tt0484562 を追加します。
{ "type": "add",
"id":
"tt0484562",
"fields": {
"title": "The Seeker: The Dark Is Rising",
"directors": ["Cunningham, David L."],
"genres": ["Adventure","Drama","Fantasy","Thriller"],
"actors": ["McShane, Ian","Eccleston, Christopher","Conroy, Frances",
"Crewson, Wendy","Ludwig, Alexander","Cosmo, James",
"Warner, Amelia","Hickey, John Benjamin","Piddock, Jim",
"Lockhart, Emma"]
}
}
2.
ドキュメントバッチに追加オペレーションを含めて、ドメインにバッチをアップロードします。
ドキュメントを個別にアップロードすることは避けて、オペレーションを最大 5 MB のバッチに
まとめてください。(単一ドキュメントバッチを大量にアップロードすると、更新処理の速度が
低下します)。データは Amazon CloudSearch コンソール経由でアップロードできます。これ
には cs-import-documents コマンドを使用するか、ドメインのドキュメントサービスエンド
ポイントにリクエストを直接投稿します。詳細については、「Amazon CloudSearch ドメインに
データをアップロード (p. 90)」を参照してください。
API Version 2013-01-01
63
Amazon CloudSearch 開発者ガイド
ドキュメントバッチの作成
Amazon CloudSearch でのドキュメントの削除
削除オペレーションでは、ドメインのインデックスから削除するドキュメントを指定します。ドキュ
メントを削除すると検索できなくなり、結果に返されることもありません。
ドキュメントを削除するために更新を投稿するときは、削除する各ドキュメントを指定する必要があ
ります。
インデックス サイズに対応するためにドメインが拡張されていた場合、大量のドキュメントを削除す
ると、次にインデックス全体を再構築するときに、ドメインが縮小されます。インデックスは定期的
に自動再構築されますが、できる限り早く縮小するには、ドキュメントを削除しているときに、明示
的にインデックス作成を実行 (p. 95)します。
Note
ドキュメントを削除するには、削除オペレーションを含むドキュメントバッチをアップロー
ドします。削除操作を行うバッチも含めて、検索ドメインにアップロードしたドキュメン
トバッチの合計数に対して請求されます。Amazon CloudSearch の料金の詳細については、
「aws.amazon.com/cloudsearch/pricing/」を参照してください。
検索ドメインからドキュメントを削除するには
1.
削除するドキュメントの ID を含む削除オペレーションを指定します。たとえば、次のオペレー
ションはドキュメント tt0484575 を削除します。
{ "type": "delete",
"id":
"tt0484575"
}
2.
ドキュメントバッチに削除オペレーションを含めて、ドメインにバッチをアップロードします。
ドキュメントを個別に削除することは避けて、オペレーションを最大 5 MB のバッチにまとめて
ください。(単一ドキュメントバッチを大量にアップロードすると、更新処理の速度が低下しま
す)。バッチは Amazon CloudSearch コンソール経由でアップロードできます。これには csimport-documents コマンドを使用するか、ドメインのドキュメントサービスエンドポイント
にリクエストを直接投稿します。詳細については、「Amazon CloudSearch ドメインにデータを
アップロード (p. 90)」を参照してください。
Amazon CloudSearch 用にソースデータを処理
データをアップロードしてインデックスを作成するには、データを JSON 形式または XML 形式にす
る必要があります。コマンドラインツールおよび Amazon CloudSearch コンソールは、いくつかの
一般的なファイルタイプ(PDF、Microsoft Excel、Microsoft PowerPoint、Microsoft Word、CSV、
テキスト、HTML)から適切な JSON または XML 形式のファイルを自動的に生成することができま
す。Amazon CloudSearch 2011-02-01 API 用に整形されたバッチを処理して、それを 2013-01-01 形
式に変換することもできます。
ほとんどのファイルタイプで、各ソースファイルは、生成された JSON または XML 形式の別々のド
キュメントとして表されます。ファイルにメタデータが使用可能な場合は、メタデータが対応するド
キュメントフィールドにマッピングされます。ドキュメントのメタデータから生成されるフィールド
はファイルの種類によって異なります。ソースファイルのコンテンツは解析されて、単一のテキスト
フィールドになります。ファイルが 1 MB 以上のデータを含む場合、テキストフィールドにマッピン
グされるデータは切り捨てられるため、ドキュメントが 1 MB を超えることはありません。
CSV ファイルは扱いが異なります。CSV ファイルを処理するとき、Amazon CloudSearch は最初の 2
行のコンテンツを使用してドキュメントフィールドを定義し、残りの行は行ごとに別のドキュメント
を作成します。docid という列ヘッダーがある場合、その列の値はドキュメント ID として使用されま
API Version 2013-01-01
64
Amazon CloudSearch 開発者ガイド
ドキュメントバッチの作成
す。必要に応じて、docid 値は、許可されている文字セットに従うように正規化されます。ドキュメ
ント ID では、任意の英字または数字と次の文字を使用できます。_ - = # ; : / ? @ & docid 列がない場
合は、ファイル名と行番号に基づいて各ドキュメントの一意の ID が生成されます。
複数の種類のファイルをアップロードする場合、CSV ファイルは行ごとに解析され、非 CSV ファイ
ルは個別のドキュメントとして扱われます。
Note
現在は、CSV ファイルのみが解析されて、自動的にカスタムフィールドデータが抽出され、
複数のドキュメントが生成されます。
DynamoDB に保存されたデータを処理することもできます。Amazon CloudSearch は、テーブルから
読み込んだ各項目を別のドキュメントとして表します。
Amazon CloudSearch コンソールを使用したソースデータの処理
Amazon CloudSearch コンソールを介してソースドキュメントまたは DynamoDB 項目をアップロー
ドすると、Amazon CloudSearch JSON 形式に自動的に変換されます。コンソールを使用して、一度
に最大 5 MB のデータをアップロードできます。必要に応じて、生成された JSON ファイルをダウ
ンロードすることもできます。コンソールを介してデータをアップロードする方法の詳細について
は、「Amazon CloudSearch ドメインにデータをアップロード (p. 90)」と「Uploading DynamoDB
Data (p. 114)」を参照してください。
Amazon CloudSearch コマンドラインツールを使用したソースデータの処理
cs-import-documents コマンドを使用して、ローカルファイル、Amazon S3 に保存されたデー
タ、DynamoDB テーブルのデータを処理し、インデックス作成のために検索ドメインにアップロード
します。生成された JSON または XML ファイルをローカルに、または Amazon S3 に保存することも
できます。
ソースデータを処理するには
•
cs-import-documents コマンドを実行し、--source オプションで処理するソースデータを
指定します。複数のソースを指定して、複数の場所にあるデータを処理できます。例: --source
c:\DataSet1 c:\DataSet2。cs-import-documents コマンドでは、ファイル名、ディレ
クトリおよび S3 プレフィックスに次のワイルドカードを使用できます。?(任意の 1 文字に一
致)、*(ゼロ個以上の文字に一致)、**(ゼロ個以上のディレクトリまたはプレフィックスに一
致)。
処理済みデータを検索ドメインに直接アップロードするには、--domain オプションを指定
します。アップロードする代わりに、ローカルファイルシステムまたは Amazon S3 に処理済
みデータを保存するには、--output オプションを指定します。デフォルトで、cs-importdocuments はデータを JSON 形式で出力します。XML を生成するには、-format xml オプ
ションを指定します。
ローカルファイルシステムまたは Amazon S3 からデータを読み取る場合は、--modifiedafter オプションを使用して、特定の日時以降に変更されたファイルまたは Amazon S3 オブ
ジェクトのみを処理することができます。DynamoDB テーブルからデータを読み取る場合は、
テーブルの特定の読み取りポイントを示す開始キーと、読み取る行数を指定できます。starthash-key、start-range-key、--num-rows オプションの詳細については、「cs-importdocuments (p. 149)」を参照してください。
たとえば、次のコマンドは myAmazingDataSet ディレクトリの内容を処理し、作成した XML ド
キュメントバッチを c:\myAmazingDataSet\XML に保存します。
cs-import-documents --source c:\myAmazingDataSet\*
--modified-after 2014-02-28T00:00:00PDT -format xml
API Version 2013-01-01
65
Amazon CloudSearch 開発者ガイド
インデックスフィールドの設定
--output c:\myAmazingDataSet\XML
CSV データを処理するには
•
cs-import-documents コマンドを実行し、処理する CSV ファイルを --source オプションで
指定します。デフォルトでは、次にようになります。
• 各行は、別のドキュメントとして解析されます。--single-doc-per-csv オプションを指定
して、この動作を無効にできます。
• CSV ファイルのフィールド区切り文字はカンマ(,)であると想定されています。区切り文字
は、--delimiter オプションを使って、セミコロン(;)やタブ(\t)などの別の文字に設定で
きます。
• 各フィールドは単一値を含むと想定されています。フィールドから複数の値を取得するに
は、--multivalued オプションを使用して、複数値を含むフィールドを指定します(フィー
ルドを指定しないと、docid 以外のすべてのフィールドが複数値フィールドとして処理されま
す)。
• CSV ファイルで複数値フィールドの個々の値を分離するために使用される文字は、二重引用符
(")であると想定されています。これは、--encapsulator オプションを使って、一重引用
符(')などの別の文字に設定できます。
• CSV ファイルでコメントを識別するために使用される文字は、ハッシュ文字(#)であると想
定されています。コメント文字は、--comment-character オプションを使って、アスタリス
ク(*)などの別の文字に設定できます。
たとえば、次のコマンドは myAmazingDataSet ディレクトリにあるタブ区切りの CSV ファイル
を処理します。フィールドは、個別の値が単一引用符で囲まれた複数値フィールドとして扱われ
ます。
cs-import-documents -d mydomain --source c:\myAmazingDataSet\*.csv
--delimiter \t --multivalued --encapsulator '
Amazon CloudSearch ドメインのインデックス
フィールドの設定
検索ドメインに追加する各ドキュメントには、検索または取得できるデータを含むフィールドのコレ
クションがあります。各ドキュメントには、一意のドキュメント ID が割り当てられ、少なくとも 1
つのフィールドがある必要があります。
ドメインの設定では、ドキュメントに含まれるフィールドごとにインデックスフィールドを定義しま
す。認識されないフィールドを含むドキュメントをアップロードすることはできません。ただし、あ
らゆるドキュメントがすべてのフィールドを含む必要はありません。ドキュメントはドメイン用に設
定されたフィールドのサブセットを含むことができます。
トピック
• AWS CLI を使用した個々のインデックスフィールドの設定 (p. 68)
• Amazon CloudSearch でのドキュメントバッチに基づくインデックスフィールドの自動設
定 (p. 69)
• Amazon CloudSearch コンソールを使用したインデックスフィールドの設定 (p. 69)
• AWS SDK を使用した Amazon CloudSearch インデックスフィールドの設定 (p. 70)
Amazon CloudSearch は、次のインデックスフィールドの型をサポートしています。
API Version 2013-01-01
66
Amazon CloudSearch 開発者ガイド
インデックスフィールドの設定
• date - タイムスタンプが含まれます。日付と時刻は、IETF RFC3339: yyyy-mmddTHH:mm:ss.SSSZ に従って、UTC(協定世界時間)で指定されます。たとえば、1970 年 8 月
23 日午後 5 時は、UTC 形式では 1970-08-23T17:00:00Z となります。UTC で時間を指定すると
きは、小数点以下の秒数も指定できます。例: 1967-01-31T23:20:50.650Z.
• date-array - 複数の値を含むことができる date 型フィールド。
• double - 倍精度 64 ビット浮動小数点値が含まれます。
• double-array - 複数の値を含むことができる double 型フィールド。
• int - 64 ビット符号付き整数値が含まれます。
• int-array - 複数の値を含むことができる int 型フィールド。
• latlon - 緯度と経度の値のペア (lat, lon) で位置を保存します。
• literal - 正確な一致を可能にする識別子またはその他のデータが含まれます。リテラルフィール
ドでは、大文字と小文字が区別されます。
• literal-array - 複数の値を含むことができる literal 型フィールド。
• text - 任意の英数字データが含まれます。
• text-array - 複数の値を含むことができる text 型フィールド。
通常のインデックスフィールド名は、3 文字以上、64 文字以内で、先頭は英字にする必要がありま
す。使用できる文字は、a~z(小文字)、0~9、_(下線)です。score という名前は予約済みのた
め、フィールド名として指定できません。すべてのフィールド名と式名は一意である必要がありま
す。
動的フィールド名はワイルドカード (*) で始まるか終わる必要があります。ワイルドカードの前後の文
字列には、通常のインデックスフィールドと同じ文字セットを含めることができます。動的フィール
ドの詳細については、「the section called “動的フィールドの使用” (p. 70)」を参照してください。
フィールドで設定できるオプションは、フィールドの型に応じて異なります。
• HighlightEnabled - すべての HighlightEnabled テキストフィールドの検索ヒットについて、
ハイライト情報を取得できます。有効な対象: text、text-array。
• FacetEnabled - すべての FacetEnabled フィールドのファセット情報を取得できます。
テキストフィールドはファセットに使用することができません。有効な対象: int、intarray、date、date-array、double、double-array、latlon、literal、literalarray。
• ReturnEnabled - 検索結果を使用して、すべての ReturnEnabled フィールドの値を取得できま
す。これによって、インデックスのサイズが増加し、ドメインを実行するコストが増加する場合
があることに注意してください。可能であれば、インデックスに埋め込むのではなく、外部ソース
から大量のデータを取得することをお勧めします。ドメイン間でドキュメントの更新を適用するに
は時間がかかる可能性があるため、価格情報などの重要なデータは、返されたドキュメント ID を
使用して外部ソースから取得する必要があります。有効な対象: int、int-array、date、datearray、double、double-array、latlon、literal、literal-array、text、textarray。
• SearchEnabled - すべての SearchEnabled フィールドの内容を検索できます。テキ
ストフィールドは、常に検索可能です。有効な対象: int、int-array、date、datearray、double、double-array、latlon、literal、literal-array、text、textarray。
• SortEnabled - 任意の SortEnabled フィールドを使用して検索結果をアルファベット
順または数値順にソートできます。配列型フィールドを SortEnabled にすることはでき
ません。ソートが有効になっている数値フィールドのみ式で使用できます。有効な対象:
int、date、latlon、double、literal、text。
任意のフィールドのデフォルト値とソースを指定することもできます。式で数値フィールドを使用し
ており、すべてのドキュメントにそのフィールドが存在しているとは限らない場合、デフォルト値
API Version 2013-01-01
67
Amazon CloudSearch 開発者ガイド
個々のインデックスフィールドの設定
の指定が重要になる可能性があります。ソースを指定すると、あるフィールドから別のフィールドに
データがコピーされるため、フィールドに異なるオプションを設定することにより、同じソースデー
タを複数の方法で使用できます。ワイルドカード (*) を使用してソース名を指定することで、指定され
たパターンに一致するすべてのフィールドのデータをコピーできます。
フィールドを追加したり、既存のフィールドを変更するときは、設定の変更を行う際に、明示的に
データのインデックスを再作成するリクエストを発行する必要があります。詳細については、「ド
キュメントデータのインデックス作成 (p. 95)」を参照してください。
Important
フィールドのタイプを変更したことで、新しいフィールド タイプと互換性のないデータを含
むドキュメントがインデックス内に存在する場合、インデックス作成を実行すると、処理さ
れるすべてのフィールドは FailedToValidate 状態になり、インデックス作成操作は失敗し
ます。互換性のない設定の変更をロールバックすると、インデックスを再構築できるように
なります。変更が必要な場合、互換性のないドキュメントを更新するか、インデックスから
削除し、新しい設定を使用する必要があります。
AWS CLI を使用した個々のインデックスフィール
ドの設定
検索ドメイン用に個々のインデックスフィールドを設定するには、aws cloudsearch defineindex-field コマンドを使用します。AWS CLI のインストールおよびセットアップの詳細について
は、『AWS Command Line Interface ユーザーガイド』を参照してください。
Note
2.0.0.1 バージョンの Amazon CloudSearch コマンドラインツールを使用している場合、csconfigure-fields コマンドを使用して個々のフィールドを定義できます。ただし、AWS
CLI に移行することをお勧めします。AWS CLI は、インストールが簡単で、設定が統一され
ていて、コマンドライン構文が一貫しているクロスサービスの CLI を提供します。
インデックスフィールドをドメインに追加するには
•
aws cloudsearch define-index-field コマンドを実行して、--name オプションで新しい
フィールド名を指定し、--type オプションでフィールド型を指定します。以下の例は、movies
ドメインに year という int フィールドを追加します。
aws cloudsearch define-index-field --domain-name movies --name year --type
int
{
"IndexField": {
"Status": {
"PendingDeletion": false,
"State": "RequiresIndexDocuments",
"CreationDate": "2014-06-25T23:03:06Z",
"UpdateVersion": 15,
"UpdateDate": "2014-06-25T23:03:06Z"
},
"Options": {
"IndexFieldType": "int",
"IndexFieldName": "year"
}
}
}
API Version 2013-01-01
68
Amazon CloudSearch 開発者ガイド
ドキュメントバッチに基づくイ
ンデックスフィールドの自動設定
Note
フィールドを追加したり、既存のフィールドを変更するときは、設定の変更を行う際に、明
示的にデータのインデックスを再作成するリクエストを発行する必要があります。詳細につ
いては、「ドキュメントデータのインデックス作成 (p. 95)」を参照してください。
Amazon CloudSearch でのドキュメントバッチに基
づくインデックスフィールドの自動設定
スタンドアロン Amazon CloudSearch コマンドラインツールで cs-configure-from-batches コ
マンドを使用して、ドキュメントバッチの内容を分析し、自動的にドメインの対応するインデックス
フィールドを設定できます。
自動的にドメインのインデックスフィールドを設定するには
1.
cs-configure-from-batches コマンドを実行して、1 つ以上のドキュメントバッチを分析
し、ドメインのフィールドを設定します(ドキュメントバッチを作成する方法については、
「データの準備 (p. 60)」を参照してください)。たとえば、moviedata.json で定義された
ドキュメントバッチに基づいて、imdb-movies ドメインのフィールドを設定するには、次のよ
うに指定します。
cs-configure-from-batches --domain-name movies --source moviedata.json
2.
確認を求められたら、「y」と入力して、指定したフィールドでドメインを設定することを確認し
ます(コンソールまたは aws cloudsearch define-index-field コマンドを使用して、後で
簡単に設定を変更できます)。
Configure [imdb-movies] with analyzed fields y/N: y
Note
フィールドを追加したり、既存のフィールドを変更するときは、設定の変更を行う際に、明
示的にデータのインデックスを再作成するリクエストを発行する必要があります。詳細につ
いては、「ドキュメントデータのインデックス作成 (p. 95)」を参照してください。
Amazon CloudSearch コンソールを使用したイン
デックスフィールドの設定
Amazon CloudSearch コンソールの [Indexing Options] パネルを使用して、ドメインで簡単
に、configure individual index fields (p. 69)できます。
Amazon CloudSearch コンソールを使用した個々のフィールド
の設定
新しいインデックスフィールドを設定するには
1.
AWS マネジメントコンソールにサインインし、Amazon CloudSearch console at https://
console.aws.amazon.com/cloudsearch/home を開きます。
2.
[Navigation] ペインで、設定するドメインの名前をクリックし、そのドメインの [Indexing
Options] リンクをクリックします。
API Version 2013-01-01
69
Amazon CloudSearch 開発者ガイド
AWS SDK を使用したインデックスフィールドの設定
3.
新しいインデックスフィールドを作成するには、[Add Index Field] をクリックして、リスト
にフィールドの仕様を追加します(フィールドをまだ作成していない場合、デフォルトでは
[Indexing Options] ページに空のフィールドの仕様が表示されます)。
4.
フィールドの一意の名前を指定し、フィールドの型 date、date-array、double、doublearray、int、int-array、literal、 literal-array、text、text-array を選択しま
す。フィールド名は、3 文字以上、64 文字以内で、先頭は英字にする必要があります。使用でき
る文字は、a~z(小文字)、0~9、_(下線)です。score という名前は予約済みのため、フィー
ルド名として使用できません。
5.
フィールドで有効にするオプションを選択します。インデックス作成オプションの指定の詳細に
ついては、「インデックスフィールドの設定 (p. 66)」を参照してください。
6.
フィールドのデフォルト値を指定します(オプション)。この値は、ドキュメントデータで
フィールドの値が指定されていない場合に使用されます。
7.
各テキストフィールドで使用する分析スキームを選択します。分析スキームは、インデックス作
成中に使用される言語固有のテキスト処理オプションを指定します。デフォルトでは、テキスト
フィールドで _en_default_ 分析スキーマが使用されます。詳細については、「分析スキームの
設定 (p. 73)」を参照してください。
8.
追加のフィールドを設定するには、[Add Index Field] をクリックし、これらの設定ステップを繰
り返します。
9.
フィールドの設定が終了したら、[Submit] をクリックして変更を保存します。前のフィールド設
定を復元するには、[Revert] をクリックします。
Note
フィールドを追加したり、既存のフィールドを変更するときは、設定の変更を行う際に、明
示的にデータのインデックスを再作成するリクエストを発行する必要があります。詳細につ
いては、「ドキュメントデータのインデックス作成 (p. 95)」を参照してください。
AWS SDK を使用した Amazon CloudSearch イン
デックスフィールドの設定
AWS SDK では(Android および iOS SDK を除く)、DefineIndexField (p. 165) も含め
て、Amazon CloudSearch 設定 API で定義されたすべての Amazon CloudSearch アクションがサポー
トされています。AWS SDK のインストールと使用の詳細については、「AWS Software Development
Kits」を参照してください。
Amazon CloudSearch での動的フィールドの使用
動的フィールドを使用すると、事前にフィールド内容が正確にわかっていなくても、ドキュメントに
インデックスを作成できます。たとえば、製品のセットを検索する場合を考えます。すべての製品カ
テゴリでのすべての製品属性の名前がわからなくても、すべてのテキストベースの属性が _t で終わ
るフィールドに保存され、すべての整数値が _i で終わるフィールドに保存されるようにデータを構
築することはできます。動的フィールドを使用すると、あらゆる属性用にフィールドを構築しなくて
も、属性フィールドを適切なフィールドタイプにマッピングできます。こうすることで、事前に必要
な設定の量を削減し、新しい属性がついた製品が追加されるたびにドメイン設定を変更する必要がな
くなります。また、動的フィールドを使用して、新しいフィールドを検索不可または戻り値として
使用できないフィールドにマッピングすることで、そのフィールドを基本的に無視することもできま
す。
トピック
• Amazon CloudSearch での動的フィールドの設定 (p. 71)
• Amazon CloudSearch で動的フィールドを使用した認識されないフィールドの無視 (p. 71)
API Version 2013-01-01
70
Amazon CloudSearch 開発者ガイド
動的フィールドの設定
• Amazon CloudSearch での動的フィールドの検索 (p. 72)
Amazon CloudSearch での動的フィールドの設定
動的フィールドとして指定するには、ワイルドカード (*) をフィールド名の最初または最後の文字、ま
たは唯一の文字として指定します。動的フィールド名はワイルドカード (*) で始まるか終わる必要があ
ります。複数のワイルドカードおよび文字列内に組み込まれたワイルドカードはサポートされていま
せん。
動的フィールドの名前は、パターンを定義します。ワイルドカードは、ゼロまたは任意以上の文字と
マッチします。このパターンと一致する認識されないフィールドは、動的フィールドのインデックス
オプションで設定されます。通常のインデックスフィールドは動的フィールドより優先されます。ド
キュメントのフィールド名が通常のインデックスフィールドと動的フィールドのパターンの両方に一
致した場合は、通常のインデックスフィールドにマップされます。動的フィールドで設定できるオプ
ションは静的なフィールドと同じです。
たとえば、新しい int フィールドの名前には _i をつける命名規則を作ると、フィールドタイプを
int に設定し新しい int フィールドに事前定義済みインデックスオプションのセットを設定するパ
ターン *_i を使用して、動的フィールドを定義できます。review_rating_i のようなフィールドを
追加する場合は、*_i オプションに従って設定され自動的にインデックスが作成されます。
ドキュメントフィールドが複数の動的フィールドパターンと一致する場合は、最も長い一致パターン
が使用されます。パターンの長さが同じ場合は、フィールド名をアルファベット順にソートした場合
に先に来る動的フィールドが使用されます。
* を動的フィールドと定義して、明示的に定義されたフィールドにマップされていないフィールドま
たはより長い動的フィールドのパターンと一致させることができます。これは、認識されないフィー
ルドを単純に無視する場合に便利です。詳細については、「認識されないドキュメントフィールドの
無視 (p. 71)」を参照してください。
動的フィールドは、ドメインで定義されるフィールドの総数にカウントされます。ドメインは動的
フィールドを含む最大 1,000 のフィールドを持つことができます。ただし、1 つの動的フィールドで
定義されたパターンは、通常複数のドキュメントフィールドに一致します。従って、インデックスの
フィールド総数が 1,000 を超えることがあります。動的フィールドを使用する場合は、インデックス
のフィールド数が大幅に増加するとクエリのパフォーマンスに影響する可能性があることに注意して
ください。
ドメインの設定に新しいフィールドを追加すると、インデックス作成中の動的に生成されたフィー
ルドの検証に影響を与える場合があります。検証に失敗すると、インデックス作成は失敗します。
たとえば、*_new という動的フィールドを定義し、rating_new というフィールドを持つドキュメ
ントをアップロードすると、rating_new フィールドがインデックスに追加されます。その後、明
示的に rating_new というフィールドを設定すると、インデックス作成を実行したときに、その新
しいフィールドの設定がドキュメントの rating_new フィールドのコンテンツの検証に使用されま
す。*_new が text フィールドとして設定されている場合に rating_new を int フィールドとして
設定すると、既存の rating_new フィールドに整数以外のデータが含まれている場合、検証に失敗し
ます。
インデックスフィールドの設定の詳細については、「インデックスフィールドの設定 (p. 66)」を参
照してください。
Amazon CloudSearch で動的フィールドを使用した
認識されないフィールドの無視
Amazon CloudSearch では、インデックスを作成するドキュメントに存在する各フィールドに対して
インデックスフィールドを設定する必要があります。ただし、特定のフィールドのセットに対してイ
ンデックスを作成して、そのほかの部分は無視したい場合もあります。動的フィールドを使用して、*
というリレラルフィールドを定義し、フィールドに対するすべてのインデックスオプションを無効に
API Version 2013-01-01
71
Amazon CloudSearch 開発者ガイド
動的フィールドの検索
することで、認識されないフィールドをすべて無視できます。認識されないフィールドはこれらのオ
プションを引き継いでドメインに追加されます。ただし、フィールドのコンテンツは検索不可であり
戻り値として使用できません。そのため、インデックスのサイズへの影響は最小限になります。(ただ
し、ドメインで設定されたフィールドの総数にカウントされます)。同様に、*_n のように特定のパ
ターンに一致するフィールドを選択的に無視することもできます。
認識されないフィールドを無視するには
1.
2.
インデックス作成、検索、結果に戻るフィールドを設定します。
ドキュメント内の他のフィールドに一致する動的フィールドを追加し、それらのフィールドのす
べてのインデックスオプションを無効にします。
• フィールド名として、プレフィックス文字列またはサフィックス文字列なしの * を指定しま
す。(より詳細なパターンを指定して無効にするフィールドを絞り込むこともできます。)
• フィールドタイプに literal を設定し、search、facet、return オプションを無効にしま
す。リテラルフィールドの最大サイズは、4096 の Unicode コードポイントであることに注意
してください。
より長い動的フィールド名が優先して一致するため、さらに動的フィールドを使用して、使用す
るフィールドのオプションを設定できます。通常のインデックスフィールドにマッピングされない
フィールドまたはより長い動的フィールドが * パターンに一致します。
Note
* という名前で動的フィールドを作成する場合、インデックスにあらゆる有効なフィールド
名が含まれる可能性があります。これは、実際にインデックスに存在するかどうかに関わら
ず、検索リクエストであらゆる有効なフィールド名が参照可能ということでもあります。
Amazon CloudSearch での動的フィールドの検索
他のフィールドと同様に、検索リクエストや式で名前を使用して動的に生成されたフィールドを参照
できます。たとえば、動的に生成されたフィールド color_t を色の red で検索する場合、構造化ク
エリパーサーを使用します。
q=color_t:’red’&q.parser=structured
通常のフィールドやより詳細な動的フィールドパターンには一致しないフィールドをマッピングする
ために補完的な動的フィールド (*) を定義済みの場合は、検索リクエストで任意の有効なフィールド名
を指定できます。フィールドが実際にインデックスに存在するかどうかは問いません。
ワイルドカードはフィールド名内ではサポートされていないため、動的フィールド自体を参照するこ
とはできません。たとえば、q=*_t:’red’ と指定した場合はエラーが戻ります。
動的に生成されたフィールドが動的フィールドの設定から継承するオプションは、検索リクエストで
のそのフィールドの使用方法を制御します。たとえば、検索できるか、ファセットまたはハイライト
を取得できるか、ソートに使用するか、結果に戻るかなどです。動的に生成されたフィールドは明示
的に検索する必要があることに注意してください。動的フィールドは、構造化クエリパーサーを使用
して検索する場合に単純なクエリパーサーを使用したり、フィールドを指定しないと、デフォルトで
検索されるフィールドには含まれません。
動的フィールドは他のフィールドのソースとして指定できます。フィールドのソース属性では、ワイ
ルドカードがサポートされています。これにより動的フィールドのグループに一致するパターンを指
定できます。たとえば、*_t という動的フィールドから生成されたすべてのフィールドを検索する
ために、all_t_fields というフィールドを作成してそのソース属性を *_t に設定できます。これ
は、名前が _t で終了するすべてのフィールド内のコンテンツを all_t_fields にコピーします。た
だし、このフィールドを検索すると、動的に生成されたフィールドだけではなく、パターンに一致す
るすべてのフィールドを検索することに注意してください。
API Version 2013-01-01
72
Amazon CloudSearch 開発者ガイド
分析スキームの設定
検索リクエストの構築と送信の詳細については、「Amazon CloudSearch でのデータの検
索 (p. 98)」を参照してください。
Amazon CloudSearch のテキスト分析スキームの
設定
Amazon CloudSearch では、text および text-array フィールドに対して言語固有の分析スキーム
を個別に設定することができます。分析スキームは、インデックス作成中にフィールドのコンテンツ
を処理する方法を制御します。ほとんどの場合、各言語のデフォルト設定も適切に機能しますが、分
析オプションを微調整することで、検索するデータに関する知識に基づいて検索結果を最適化するこ
とができます。サポートされている言語のリストについては、「サポートされている言語 (p. 83)」
を参照してください。
分析スキームは、処理するテキストの言語と次の分析オプションを指定します。
• アルゴリズムステミング - アルゴリズムステミングの実行レベルを指定します。使用可能なステミ
ングレベルは、言語によって異なります。
• 日本語トークン分割ディクショナリ — 日本語を処理する場合にアルゴリズムトークン分割のオー
バーライドを指定します。ディクショナリは、文字の特定のセットを単語として分類する方法を指
定します。
• ステミングディクショナリ - アルゴリズムステミングの結果にオーバーライドを指定します。ディ
クショナリは、共通のルート語またはステムに特定の関連する単語をマッピングします。
• ストップワード - インデックス作成時および検索中に無視する単語を指定します。
• シノニム - データ内に存在する単語と同じ意味の単語を指定して、同じ検索結果が得られるように
します。
テキストの処理中に、フィールド値と検索用語は小文字に変換 (大文字/小文字変換) されるため、ス
トップワード、語幹、およびシノニムの大文字と小文字は区別されません。インデックス作成時およ
び検索リクエスト処理中に Amazon CloudSearch がテキストを処理する方法については、「Amazon
CloudSearch でのテキスト処理 (p. 82)」を参照してください。
分析スキームごとに言語を指定し、text および text-array フィールドごとに分析スキームを
設定する必要があります。Amazon CloudSearch コンソールまたはコマンドラインツールを使用し
てフィールドを設定する場合、分析スキームは、デフォルトの _en_default_ 分析スキームにな
ります。分析スキームに分析オプションを指定しない場合、Amazon CloudSearch は指定された言
語のデフォルトオプションを使用します。各言語のデフォルト設定については、「言語固有の設
定 (p. 83)」を参照してください。
分析スキームを最も簡単に定義できるのは、Amazon CloudSearch コンソールの [Analysis Schemes]
ページを使用する方法です。フィールドを有効にするには、分析スキームを適用する必要がありま
す。[Indexing Options] ページから、フィールドに分析スキームを適用できます。コマンドラインツー
ルおよび AWS SDK を使用して、分析スキームを定義し、フィールドごとに分析スキームを設定する
こともできます。
インデックスフィールドに新しい分析スキームを適用するか、使用されている分析スキームを変更
したときは、明示的なrebuild the index (p. 95)により、検索結果に変更を反映させる必要がありま
す。
トピック
• Amazon CloudSearch のステミング (p. 74)
• Amazon CloudSearch のストップワード (p. 75)
• Amazon CloudSearch のシノニム (p. 75)
• Amazon CloudSearch コンソールを使用した分析スキームの設定 (p. 76)
API Version 2013-01-01
73
Amazon CloudSearch 開発者ガイド
ステミング
• AWS CLI を使用した分析スキームの設定 (p. 77)
• AWS SDK を使用した分析スキームの設定 (p. 78)
• Amazon CloudSearch での中国語、日本語、韓国語のバイグラムのインデックス作成 (p. 78)
• Amazon CloudSearch での日本語トークン分割のカスタマイズ (p. 79)
Amazon CloudSearch のステミング
ステミングは、関連する単語を共通のステムに対応付けるプロセスです。ステムは、通常バリアント
の派生元であるルートまたはベース語です。たとえば、run は running と ran のステムです。ステミ
ングは、インデックス作成中だけでなく、クエリ時にも実行されます。ステミングは、インデックス
に含まれる用語の数を減らし、検索用語が検索されるコンテンツ内に存在する用語のバリアントの場
合、一致を促進します。たとえば、running という用語をステム run にマッピングしてから running を
検索した場合、そのリクエストには running だけでなく run を含むドキュメントも一致します。
Amazon CloudSearch は、アルゴリズムステミングと明示的ステミングディクショナリの両方をサ
ポートします。アルゴリズムによる語幹解釈は、使用する語幹解釈のレベルを指定することで設定し
ます。アルゴリズムによる語幹解釈に使用可能なレベルは、言語によって異なります。
• なし - アルゴリズムによる語幹解釈を無効にします。
• 最小 - 複数のサフィックスを削除することにより、基本的な語幹解釈を実行します。
• ライト - 最も一般的な名詞/形容詞屈折と派生したサフィックスが対象になります。
• フル - 屈折とサフィックスを積極的に語幹解釈します。
実行されるアルゴリズムステミングのレベルを制御するだけでなく、特定の関連する単語を共通ステ
ムにマッピングするステミングディクショナリを指定できます。ディクショナリは、用語をその語幹
にマッピングする文字列:値のペアのコレクションを含む JSON オブジェクトとして指定します。たと
えば、{"term1": "stem1", "term2": "stem2", "term3": "stem3"} のようになります。ア
ルゴリズム語幹解釈に加えて、語幹解釈ディクショナリが適用されます。これによって、アルゴリズ
ム語幹解釈の結果をオーバーライドし、特定の語幹解釈の過剰または不足のケースを修正できます。
語幹解釈ディクショナリの最大サイズは 500 KB です。語幹解釈ディクショナリのエントリは小文字
である必要があります。
分析スキームのカスタム語幹解釈ディクショナリを定義するには、StemmingDictionary キーを使
用します。ディクショナリは文字列として Amazon CloudSearch に渡されるため、文字列内のすべ
ての二重引用符をエスケープする必要があります。たとえば、次の分析スキームは running および
jumping の語幹を定義します。
{
"AnalysisSchemeName": "myscheme",
"AnalysisSchemeLanguage": "en",
"AnalysisOptions": {
"AlgorithmicStemming": "light",
"StemmingDictionary": "{\"running\": \"run\",\"jumping\": \"jump\"}"
}
}
分析スキームにアルゴリズムステミングのレベルまたはステミングディクショナリを指定しない場
合、Amazon CloudSearch は指定された言語のデフォルトのアルゴリズムステミングレベルを使用し
ます。ステミングは、検索結果から除外されていた可能性がある関連ドキュメントを見つけるのに役
立ちますが、過剰なステミングにより、関連性に疑問の余地がある一致が大量に結果に含まれる可能
性があります。各言語に設定されているデフォルトのアルゴリズムステミングレベルは、ほとんどの
ユースケースで十分に機能します。通常、デフォルトから始めて、その後検索結果がユースケースに
とって最適になるように調整することをお勧めします。各言語のデフォルト設定については、「言語
固有の設定 (p. 83)」を参照してください。
API Version 2013-01-01
74
Amazon CloudSearch 開発者ガイド
Stopwords
Amazon CloudSearch のストップワード
ストップワードは、重要でないか、あまりに一般的であるために大量の一致が発生するという理由
で、通常インデックス作成時にも検索時にも無視される単語です。
インデックス作成中、Amazon CloudSearch は、text および text-array フィールドを処理すると
きにストップワードディクショナリを使用します。ほとんどの場合、ストップワードはインデックス
に含まれません。ストップワードディクショナリは、検索リクエストをフィルタするためにも使用さ
れます。
ストップワードディクショナリは、用語の JSON 配列です。たとえば、["a", "an", "the",
"of"] のようになります。ストップワードディクショナリでは、無視する各単語を明示的にリストす
る必要があります。ワイルドカードや正規表現はサポートされていません。
分析スキームのカスタムストップワードディクショナリを定義するには、Stopwords キーを使用しま
す。ディクショナリは文字列として Amazon CloudSearch に渡されるため、文字列内のすべての二重
引用符をエスケープする必要があります。たとえば、次の分析スキームは a、an および the というス
トップワードを設定します。
{
"AnalysisSchemeName": "myscheme",
"AnalysisSchemeLanguage": "en",
"AnalysisOptions": {
"Stopwords": "[\"a\",\"an\",\"the\"]"
}
}
分析スキームにストップワードディクショナリを指定しない場合、Amazon CloudSearch は指定され
た言語のデフォルトのストップワードディクショナリを使用します。各言語に設定されているデフォ
ルトのストップワードは、ほとんどのユースケースで適切に機能します。通常、デフォルトから始め
て、その後検索結果がユースケースにとって最適になるように調整することをお勧めします。各言語
のデフォルト設定については、「言語固有の設定 (p. 83)」を参照してください。
Amazon CloudSearch のシノニム
検索しているデータ内に存在する用語に対してシノニムを設定できます。そうすることで、インデッ
クス用語ではなくシノニムを検索した場合、結果にはインデックスされた用語が含まれるドキュメン
トが含まれます。たとえば、カスタムシノニムを定義して次のようなことができます。
• 一般的な綴りの誤りを正しい綴りにマッピングする
• film と movie のような、同等の用語を定義する
• fish と barracuda のように、一般的な用語をより特殊な用語にマッピングする
• tool box と toolbox のように、複数の単語を 1 つの単語に (またはその逆も) マッピングする
シノニムを定義すると、そのシノニムはインデックスのベーストークンが出現するすべての場所に追
加されます。たとえば、barracuda のシノニムとして fish を定義した場合、fish という用語が
barracuda という用語を含むすべてのドキュメントに追加されます。多数のシノニムを追加すると、
インデックスのサイズだけでなく、クエリのレイテンシーも増大します。シノニムを使用すると一致
件数が増加し、一致件数が増加すれば、それだけ結果処理にかかる時間も長くなります。
シノニムディクショナリは、インデックス作成時にテキストフィールドに出現する用語にマッピング
を設定するために使用されます。検索リクエストでは、シノニム処理は行われません。デフォルトで
は、Amazon CloudSearch はシノニムを定義しません。
次の 2 通りの方法でシノニムを指定できます。
API Version 2013-01-01
75
Amazon CloudSearch 開発者ガイド
コンソールを使用した分析スキームの設定
• グループ内の各用語はグループ内の他のすべての用語のシノニムと見なされる合成グループとし
て。
• 特定の用語のエイリアスとして。 エイリアスは指定した用語のシノニムと見なされますが、用語は
エイリアスのシノニムとは見なされません。
シノニムディクショナリは、シノニムグループとエイリアスを定義する JSON オブジェクトとして指
定されます。groups 値は、配列の配列で、各サブ配列は合成グループです。aliases 値は、文字列:
値のペアのコレクションを含むオブジェクトです。ここで、文字列は用語を指定し、値の配列はその
用語の各シノニムを指定します。次の例には、合成グループとエイリアスの両方が含まれています。
{
"groups": [["1st", "first", "one"], ["2nd", "second", "two"]],
"aliases": { "youth": ["child", "kid", "boy", "girl"],
"adult": ["men", "women"] }
}
グループ、エイリアスのいずれも、複数の単語からなるシノニムに対応します。次の例では、合成グ
ループとエイリアスの両方で複数の単語からなるシノニムが使用されています。
{
"groups": [["tool box", "toolbox"], ["band saw", "bandsaw"]],
"aliases": { "workbench": ["work bench"]}
}
分析スキームのカスタムシノニムディクショナリを定義するには、Synonyms キーを使用します。
ディクショナリは文字列として Amazon CloudSearch に渡されるため、文字列内のすべての二重引用
符をエスケープする必要があります。たとえば、次の分析スキームは youth という用語のエイリアス
を設定します。
{
"AnalysisSchemeName": "myscheme",
"AnalysisSchemeLanguage": "en",
"AnalysisOptions": {
Synonyms": "{\"aliases\": {\"youth\": [\"child\",\"kid\"]}}"
}
}
Amazon CloudSearch コンソールを使用した分析ス
キームの設定
分析スキームは、Amazon CloudSearch コンソールの [Analysis Schemes] ペインから定義することが
できます。
分析スキームを定義するには
1.
2.
3.
4.
AWS マネジメントコンソールにサインインし、Amazon CloudSearch console at https://
console.aws.amazon.com/cloudsearch/home を開きます。
[Navigation] ペインで、ドメインの名前をクリックし、そのドメインの [Analysis Schemes] リン
クをクリックします。
[Analysis Schemes] ペインで、[Add Analysis Scheme] をクリックします。
分析スキームの名前を指定し、言語を選択して、スキームのテキストストップワード、ステミン
グ、およびシノニムオプションを設定します。独自のストップワード、ステム、およびシノニ
ムを設定するか、表示されたディクショナリを直接編集することができます。ディクショナリ
API Version 2013-01-01
76
Amazon CloudSearch 開発者ガイド
AWS CLI を使用した分析スキームの設定
は、JSON の形式です。ストップワードは、文字列の配列として指定されます。ステムは、1 つ
以上のキー:値のペアを含むオブジェクトとして指定されます。シノニムエイリアスも、1 つ以上
のキー:値ペアを持つ JSON オブジェクトとして指定されます。ここで、エイリアス値は文字列の
配列として指定されます。シノニムグループは JSON 配列として指定されます。(シノニムディク
ショナリは配列の配列です。)
言語として日本語を選択すると、特定の語句のデフォルトのトークン分割をオーバーライドす
るカスタムのトークン分割ディクショナリを指定するオプションも使用できます。詳細について
は、「日本語トークン分割のカスタマイズ (p. 79)」を参照してください。
5.
[Create] をクリックして変更を保存します。
Important
分析スキームを使用するには、1 つ以上の text または text-array フィールドを適用し、
インデックスを再構築する必要があります。[Indexing Options] ページから、フィールドの分
析スキームを設定できます。インデックスを再構築するには、[Run Indexing] ボタンをクリッ
クします。
AWS CLI を使用した分析スキームの設定
ステミングオプション、ストップワード、シノニムなど、言語固有のテキスト処理オプションを定
義するには、aws cloudsearch define-analysis-scheme コマンドを使用します。AWS CLI の
インストールおよびセットアップの詳細については、『AWS Command Line Interface ユーザーガイ
ド』を参照してください。
各 text または text-array フィールドの設定の一部として分析スキームを指定します。詳細につい
ては、「インデックスフィールドの設定 (p. 66)」を参照してください。
Note
2.0.0.1 バージョンの Amazon CloudSearch コマンドラインツールを使用している場合、csconfigure-analysis-scheme コマンドを使用して分析スキームを定義できます。ただ
し、AWS CLI に移行することをお勧めします。AWS CLI は、インストールが簡単で、設定が
統一されていて、コマンドライン構文が一貫しているクロスサービスの CLI を提供します。
分析スキームを定義するには
•
aws cloudsearch define-analysis-scheme コマンドを実行し、--analysis-scheme
オプションと、分析オプションを含む JSON オブジェクトを指定します。分析スキームは有効
な JSON である必要があります。分析オプションキーおよび値ペアは引用符で囲む必要があり
ます。また、オプション値内のすべての引用符は、バックスラッシュでエスケープする必要が
あります。分析オプションの形式については、『AWS Command Line Interface Reference』の
「define-analysis-scheme 」を参照してください。ステミング、ストップワード、およびシノニ
ムオプションの指定方法については、「分析スキームの設定 (p. 73)」を参照してください。
言語として日本語 (ja) を指定すると、特定の語句のデフォルトのトークン分割をオーバーライド
するカスタムのトークン分割ディクショナリを指定するオプションも使用できます。詳細につい
ては、「日本語トークン分割のカスタマイズ (p. 79)」を参照してください。
Tip
--analysis-scheme で分析スキームを設定するもっとも簡単な方法は、分析スキーム
をテキストファイルに保存し、そのファイルを AWS CLI 値として指定します。こうす
ることで、スキームを読みやすくフォーマットできます。たとえば、以下のスキームは
ライトレベルのアルゴリズムによる語幹解釈を使用し 2 つのストップワードを設定した
myscheme という英語の分析スキームを定義しています。
API Version 2013-01-01
77
Amazon CloudSearch 開発者ガイド
AWS SDK を使用した分析スキームの設定
{
"AnalysisSchemeName": "myscheme",
"AnalysisSchemeLanguage": "en",
"AnalysisOptions": {
"AlgorithmicStemming": "light",
"Stopwords": "[\"a\", \"the\"]"
}
}
このスキームを myscheme.txt というテキストファイルに保存すると、そのファイルを
--analysis-scheme パラメーターの値として渡すことができます。
aws cloudsearch define-analysis-scheme --region us-east-1 --domainname movies --analysis-scheme file://myscheme.txt
Important
分析スキームを使用するには、1 つ以上の text または text-array フィールドを適
用し、インデックスを再構築する必要があります。フィールドの分析スキームは aws
cloudsearch define-index-field コマンドで設定できます。インデックスを再構築する
には、aws cloudsearch index-documents を呼び出します。
AWS SDK を使用した分析スキームの設定
AWS SDK では(Android および iOS SDK を除く)、DefineAnalysisScheme (p. 161) も含め
て、Amazon CloudSearch 設定 API で定義されたすべての Amazon CloudSearch アクションがサポー
トされています。AWS SDK のインストールと使用の詳細については、「AWS Software Development
Kits」を参照してください。
Important
分析スキームを使用するには、1 つ以上の text または text-array フィールドを適用し、
インデックスを再構築する必要があります。フィールドの分析スキームを、インデックス
フィールドを定義するメソッドで設定できます。インデックスを再構築するには、インデッ
クスドキュメントのメソッドを使用します。
Amazon CloudSearch での中国語、日本語、韓国語
のバイグラムのインデックス作成
中国語、日本語、韓国語には、明確な単語の境界がありません。単純に個々の文字 (ユニグラム) に対
してインデックスを作成すると、検索クエリにあまり関係ないものが一致してしまいます。解決方法
の 1 つは、バイグラム でインデックスを付けることです。バイグラムは、文字列の中で隣接する 2 つ
の文字の連なりです。たとえば、次の例は文字列「
しています。
API Version 2013-01-01
78
」のバイグラムを示
Amazon CloudSearch 開発者ガイド
日本語トークン分割のカスタマイズ
バイグラムにインデックスを作成することで検索結果は向上しますが、インデックスのサイズが大幅
に増加することに注意してください。
中国語、日本語、韓国語でバイグラムにインデックスを作成するには
1.
テキスト分析スキームを作成し、言語を複数言語 (mul) に設定します。
2.
複数言語分析スキームを使用する CJK データを含むインデックスフィールドを設定します。
フィールドの言語を mul に設定した分析スキームを割り当てると、Amazon CloudSearch は自動的に
フィールド内の中国語、日本語、韓国語テキストのバイグラムを生成します。
分析スキームの作成と使用の詳細については、「分析スキームの設定 (p. 73)」を参照してくださ
い。
日本のコンテンツのインデックスを作成する場合、標準的な日本語プロセッサで使用するカスタム
トークン分割ディクショナリも気になるかと思われます。詳細については、「日本語トークン分割の
カスタマイズ (p. 79)」を参照してください。
Amazon CloudSearch での日本語トークン分割のカ
スタマイズ
Amazon CloudSearch の日本語トークン分割の制御を強化する必要がある場合は、分析スキームにカ
スタムの日本語トークン分割ディクショナリを追加できます。カスタムのトークン分割ディクショナ
リを設定すると、標準的な日本語プロセッサで特定のエントリがトークン分割される方法をオーバー
ライドできます。これによって、特にドメイン固有のフレーズにインデックスを作成し取得する必要
がある場合に、検索結果の精度が向上する場合があります。
トークン分割ディクショナリは、文字セット、その文字がどのようにトークン分割されるか、各トー
クンの発音 (読み方)、および品詞タグを指定したエントリのコレクションです。ディクショナリは配
列として指定されます。ディクショナリの各エントリは文字列の配列です。エントリは以下のような
形式です。
["<text>","<token 1> ... <token n>","<reading 1> ... <reading n>","<part-ofspeech tag>"]
各トークンの読み方およびエントリの品詞タグを指定する必要があります。ストップワードに関連し
た品詞タグについては、「日本語の品詞タグ (p. 80)」を参照してください。
分析スキームのカスタムトークン分割ディクショナリを定義するに
は、JapaneseTokenizationDictionary キーを使用します。トークン分割ディクショナリは文字
列として Amazon CloudSearch に渡されるため、文字列内のすべての二重引用符をエスケープする必
要があります。たとえば、以下の分析スキームのディクショナリは、漢字カナ混じりの場合のセグメ
ンテーションのオーバーライド、および固有名詞のカスタムな読みを指定します。
API Version 2013-01-01
79
Amazon CloudSearch 開発者ガイド
日本語トークン分割のカスタマイズ
AWS CLI で分析スキームを設定する場合、分析スキームをテキストファイルに保存し、そのファイル
を --analysis-scheme 値として指定できます。こうすることで、スキームを読みやすくフォーマッ
トできます。たとえば、jascheme 分析スキームを jascheme.txt というファイルに保存し、aws
cloudsearch define-analysis-scheme 呼び出し時にそのファイルを渡すことができます。
aws cloudsearch define-analysis-scheme --region us-east-1 --domain-name
mydomain --analysis-scheme file://jascheme.txt
分析スキームの作成と使用の詳細については、「分析スキームの設定 (p. 73)」を参照してくださ
い。
Amazon CloudSearch での日本語の品詞タグ
日本語でカスタムトークン分割ディクショナリを使用する場合は、各エントリに品詞タグを指定しま
す。品詞タグが停止タグとして設定されたタグの 1 つと一致した場合、そのエントリはストップワー
ドとして扱われます。
次の表は、Amazon CloudSearch で停止タグとして設定される品詞タグを示しています。
停止タグ
Tag
品詞
説明
助動詞
つけられた語句に機能的または
文法的な意味を付加する動詞。
接続詞
独立して現れる接続詞。
フィラー
会話の中に現れる相槌または
フィラーとして挿入される音。
非言語音
言語ではない音。
API Version 2013-01-01
80
Amazon CloudSearch 開発者ガイド
日本語トークン分割のカスタマイズ
Tag
品詞
説明
その他の間投詞
名詞接尾辞または文末の助詞と
しての分類が困難な単語。
助詞-副詞化
名詞と副詞の後に続く「に」お
よび「の」。
助詞-連体化
名詞に添えて活用しない単語を
変化させる「の」。
助詞-副助詞
位置や移動の方向などをしめす
副詞。
助詞-副助詞/並立助詞/終助
詞
副詞的、並列助詞、終助詞
であるかどうか不明な場合の
「か」。
助詞-格助詞-連語
主に書く助詞として機能する助
詞と動詞の複合。
助詞-格助詞-一般
格助詞。
助詞-格助詞-引用
名詞、話し言葉、引用符、会議
の結論の表現、理由、判断、推
量などの後に現れる「と」。
助詞-格助詞
亜分類が未定義である格助詞。
助詞-接続助詞
接続助詞。
助詞-並立助詞
並立助詞。
助詞-係助詞
係助詞。
終助詞
終助詞。
間投助詞
文法上間投詞の役割をはたす助
詞。
助詞-特殊
他の分類に当てはまらない助
詞。短歌、俳句などの詩歌に使
用される助詞を含みます。
粒子
分類されていない助詞。
記号-括弧閉
括弧閉: ]。
記号-読点
カンマ: ,。
API Version 2013-01-01
81
Amazon CloudSearch 開発者ガイド
テキスト処理
Tag
品詞
説明
記号-一般
他のカテゴリに含まれない一般
的な記号。
記号-括弧開
括弧開: [。
記号-句点
ピリオドと句点。
記号-空白
全角の空白。
記号
分類されていない記号。
Amazon CloudSearch でのテキスト処理
インデックスの作成中、Amazon CloudSearch はフィールドに設定された分析スキームに従って text
フィールドと text-array フィールドを処理し、インデックスに追加する用語を決定します。分析オ
プションが適用される前に、テキストがトークン分割および正規化されます。
トークン分割時、フィールド内のテキストのストリームは、Unicode Text Segmentation アルゴリズム
で定義されたワードブレークを使用して、検出可能な境界上の別個のトークンに分割されます。詳細
については、「Unicode Text Segmentation」を参照してください。
ワードブレークルールに従って、スペースやタブなどの空白文字により区切られた文字列は別個の
トークンとして扱われます。多くの場合、句読点は削除され、空白文字として扱われます。たとえ
ば、ハイフン(-)および記号(@)では文字列が分割されます。ただし、後ろに空白文字がつかない
ピリオドはトークンの一部と見なされます。
大文字と小文字が連続している場合は分割されない点に注意してください。CamelCase 文字列はトー
クン分割されません。
正規化時、大文字は小文字に変換されます。アクセントは通常、フィールドの分析スキームで設定さ
れたステミングオプションに従って扱われます。(英語のデフォルト分析スキームでは、アクセント
が削除されます)。
トークン分割と正規化が完了したら、分析スキームで指定されたステミングオプション、ストップ
ワード、シノニムが適用されます。
検索リクエストを送信すると、インデックスに存在する用語に対して一致できるように、検索対象の
テキストには同じテキスト処理が行われます。ただし、プレフィックス検索を実行する場合、検索用
語でテキスト分析は実行されません。これは、語幹解釈が有効な場合、末尾が s のプレフィックスを
検索すると、用語の単数形には通常一致しないことを意味します。これは、複数形だけでなく末尾が
s のあらゆる用語に適用される可能性があります。たとえば、サンプル映画データの actor フィール
ドで Anders を検索した場合、一致する映画が 3 つあるとします。Ander* を検索した場合、それら
の映画に加えて他のいくつかの映画が一致します。一方、Anders* を検索した場合、一致はありませ
ん。これは、用語が ander としてインデックスに格納されており、anders はインデックスにないた
めです。
語幹解釈のために、ワイルドカード検索を行っても関連する一致がすべて返されない場
合、AlgorithmicStemming オプションを none に設定することでテキストフィールドの語幹解釈を
抑制できます。または、データを text フィールドではなく literal フィールドにマッピングできま
す。
トピック
API Version 2013-01-01
82
Amazon CloudSearch 開発者ガイド
サポートされている言語
• Amazon CloudSearch でサポートされている言語 (p. 83)
• Amazon CloudSearch での言語固有のテキスト処理設定 (p. 83)
Amazon CloudSearch でサポートされている言語
アラビア語(ar)
アルメニア語(hy)
バスク語(eu)
ブルガリア語(bg)
カタロニア語(ca)
簡体字中国語(zh-Hans)
繁体字中国語(zh-Hant)
チェコ語(cs)
デンマーク語(da)
オランダ語(nl)
英語(en)
フィンランド語(fi)
フランス語(fr)
ガリシア語(gl)
ドイツ語(de)
ギリシャ語(el)
ヒンディー語(hi)
ヘブライ語(he)
ハンガリー語(hu)
インドネシア語(id)
アイルランド語(ga)
イタリア語(it)
日本語(ja)
韓国語(ko)
ラトビア語(lv)
複数(mul)
ノルウェー語(no)
ペルシャ語(fa)
ポルトガル語(pt)
ルーマニア語(ro)
ロシア語(ru)
スペイン語(es)
スウェーデン語(sv)
タイ語(th)
トルコ語(tr)
Amazon CloudSearch での言語固有のテキスト処理
設定
アラビア語(ar)
アルゴリズム語幹解釈オプション: light
デフォルトの分析スキーム: _ar_default_
• アルゴリズム語幹解釈: light
• デフォルトのストップワードディクショナリ
アルメニア語(hy)
アルゴリズム語幹解釈オプション: full
デフォルトの分析スキーム: _hy_default_
• アルゴリズム語幹解釈: full
• デフォルトのストップワードディクショナリ
バスク語(eu)
アルゴリズム語幹解釈オプション: full
API Version 2013-01-01
83
Amazon CloudSearch 開発者ガイド
言語固有の設定
デフォルトの分析スキーム: _eu_default_
• アルゴリズム語幹解釈オプション: full
• デフォルトのストップワードディクショナリ
ブルガリア語(bg)
アルゴリズム語幹解釈オプション: light
デフォルトの分析スキーム: _bg_default_
• アルゴリズム語幹解釈: light
• デフォルトのストップワードディクショナリ
カタロニア語(ca)
アルゴリズム語幹解釈オプション: full
Elision フィルタ有効
デフォルトの分析スキーム: _ca_default_
• アルゴリズム語幹解釈: full
• デフォルトのストップワードディクショナリ
簡体字中国語(zh-Hans)
サポートされていないアルゴリズム語幹解釈
サポートされていない語幹解釈ディクショナリ
デフォルトの分析スキーム: _zh-Hans_default_
繁体字中国語(zh-Hant)
サポートされていないアルゴリズム語幹解釈
サポートされていない語幹解釈ディクショナリ
デフォルトの分析スキーム: _zh-Hant_default_
チェコ語(cs)
アルゴリズム語幹解釈オプション: light
デフォルトの分析スキーム: _cs_default_
• アルゴリズム語幹解釈: light
• デフォルトのストップワードディクショナリ
デンマーク語(da)
アルゴリズム語幹解釈オプション: full
API Version 2013-01-01
84
Amazon CloudSearch 開発者ガイド
言語固有の設定
デフォルトの分析スキーム: _da_default_
• アルゴリズム語幹解釈: full
• デフォルトのストップワードディクショナリ
オランダ語(nl)
アルゴリズム語幹解釈オプション: full
デフォルトの分析スキーム: _nl_default_
• アルゴリズム語幹解釈: full
• デフォルトのストップワードディクショナリ
• デフォルトのステミングディクショナリ
英語(en)
アルゴリズム語幹解釈オプション: minimal|light|full
デフォルトの分析スキーム: _en_default_
• アルゴリズム語幹解釈: full
• デフォルトのストップワードディクショナリ
フィンランド語(fi)
アルゴリズム語幹解釈オプション: light|full
デフォルトの分析スキーム: _fi_default_
• アルゴリズム語幹解釈: light
• デフォルトのストップワードディクショナリ
フランス語(fr)
アルゴリズム語幹解釈オプション: minimal|light|full
Elision フィルタ有効
デフォルトの分析スキーム: _fr_default_
• アルゴリズム語幹解釈: minimal
• デフォルトのストップワードディクショナリ
ガリシア語(gl)
アルゴリズム語幹解釈オプション: minimal|full
デフォルトの分析スキーム: _gl_default_
• アルゴリズム語幹解釈: minimal
• デフォルトのストップワードディクショナリ
API Version 2013-01-01
85
Amazon CloudSearch 開発者ガイド
言語固有の設定
ドイツ語(de)
アルゴリズム語幹解釈オプション: minimal|light|full
デフォルトの分析スキーム: _de_default_
• アルゴリズム語幹解釈: light
• デフォルトのストップワードディクショナリ
ギリシャ語(el)
アルゴリズム語幹解釈オプション: full
デフォルトの分析スキーム: _el_default_
• アルゴリズム語幹解釈: full
• デフォルトのストップワードディクショナリ
ヘブライ語(h3)
アルゴリズム語幹解釈オプション: full
デフォルトの分析スキーム: _he_default_
• アルゴリズム語幹解釈: full
• デフォルトのストップワードディクショナリ
ヒンディー語(hi)
アルゴリズム語幹解釈オプション: full
デフォルトの分析スキーム: _hi_default_
• アルゴリズム語幹解釈: full
• デフォルトのストップワードディクショナリ
ハンガリー語(hu)
アルゴリズム語幹解釈オプション: light|full
デフォルトの分析スキーム: _hu_default_
• アルゴリズム語幹解釈: light
• デフォルトのストップワードディクショナリ
インドネシア語(id)
アルゴリズム語幹解釈オプション: light|full
デフォルトの分析スキーム: id_default_
• アルゴリズム語幹解釈: full
API Version 2013-01-01
86
Amazon CloudSearch 開発者ガイド
言語固有の設定
• デフォルトのストップワードディクショナリ
アイルランド語(ga)
アルゴリズム語幹解釈オプション: full
Elision フィルタ有効
デフォルトの分析スキーム: _ga_default_
• アルゴリズム語幹解釈オプション: full
• デフォルトのストップワードディクショナリ
イタリア語(it)
アルゴリズム語幹解釈オプション: light|full
Elision フィルタ有効
デフォルトの分析スキーム: _it_default_
• アルゴリズム語幹解釈: light
• デフォルトのストップワードディクショナリ
日本語(ja)
アルゴリズム語幹解釈オプション: full
アルゴリズム複混合が有効
オプションのトークン分割ディクショナリ
デフォルトの分析スキーム: _ja_default_
• アルゴリズム語幹解釈: full
• デフォルトのストップワードディクショナリ
韓国語(ko)
サポートされていないアルゴリズム語幹解釈
アルゴリズム複混合が有効
デフォルトの分析スキーム: _ko_default_
• デフォルトのストップワードディクショナリ
ラトビア語(lv)
アルゴリズム語幹解釈: light
デフォルトの分析スキーム: _lv_default_
• アルゴリズム語幹解釈: light
API Version 2013-01-01
87
Amazon CloudSearch 開発者ガイド
言語固有の設定
• デフォルトのストップワードディクショナリ
複数(mul)
アルゴリズムステミング: 未サポート
デフォルトの分析スキーム: _mul_default_
• デフォルトのストップワードディクショナリ
ノルウェー語(no)
アルゴリズム語幹解釈オプション: minimal|light|full
デフォルトの分析スキーム: _no_default_
• アルゴリズム語幹解釈: light
• デフォルトのストップワードディクショナリ
ペルシャ語(fa)
サポートされていないアルゴリズム語幹解釈
デフォルトの分析スキーム: _fa_default_
• デフォルトのストップワードディクショナリ
ポルトガル語(pt)
アルゴリズム語幹解釈オプション: minimal|light|full
デフォルトの分析スキーム: _pt_default_
• アルゴリズム語幹解釈: minimal
• デフォルトのストップワードディクショナリ
ルーマニア語(ro)
アルゴリズム語幹解釈オプション: full
デフォルトの分析スキーム: _ro_default_
• アルゴリズム語幹解釈: full
• デフォルトのストップワードディクショナリ
ロシア語(ru)
アルゴリズム語幹解釈オプション: light|full
デフォルトの分析スキーム: _ru_default_
• アルゴリズム語幹解釈: light
API Version 2013-01-01
88
Amazon CloudSearch 開発者ガイド
言語固有の設定
• デフォルトのストップワードディクショナリ
スペイン語(es)
アルゴリズム語幹解釈オプション: light|full
デフォルトの分析スキーム: _es_default_
• アルゴリズム語幹解釈: light
• デフォルトのストップワードディクショナリ
スウェーデン語(sv)
アルゴリズム語幹解釈オプション: light|full
デフォルトの分析スキーム: _sv_default_
• アルゴリズム語幹解釈: light
• デフォルトのストップワードディクショナリ
タイ語(th)
サポートされていないアルゴリズム語幹解釈
サポートされていない語幹解釈ディクショナリ
デフォルトの分析スキーム: _th_default_
• デフォルトのストップワードディクショナリ
トルコ語(tr)
アルゴリズム語幹解釈: full
デフォルトの分析スキーム: _tr_default_
• アルゴリズム語幹解釈: full
• デフォルトのストップワードディクショナリ
API Version 2013-01-01
89
Amazon CloudSearch 開発者ガイド
データのアップロード
Amazon CloudSearch でのデータの
アップロードとインデックス作成
データを検索可能にするには、「データの準備 (p. 60)」で説明されているように、データを JSON 形
式または XML 形式にして、それをインデックス作成のために検索ドメインにアップロードする必要
があります。ほとんどの場合、Amazon CloudSearch は自動的にデータのインデックスを作成し、そ
れは数分で検索結果に反映されます。ただし、特定のドメイン設定を変更すると、ドメインが NEEDS
INDEXING 状態になります。このような変更を有効にするには、明示的にインデックス作成を実行し
てインデックスを再構築する必要があります。現在は、サジェスタがインデックスの最新データを反
映するように、定期的にインデックス作成を実行する必要もあります。以下のセクションでは、ドメ
インにデータをアップロードする方法と、必要な場合にインデックス作成を実行する方法を説明しま
す。
トピック
• Amazon CloudSearch ドメインにデータをアップロード (p. 90)
• Amazon CloudSearch を使用したドキュメントデータのインデックス作成 (p. 95)
Amazon CloudSearch ドメインにデータをアップ
ロード
Amazon CloudSearch ドメインにアップロードするデータを記述するためのドキュメントバッチを作
成します。ドキュメントバッチは追加および削除操作のコレクションであり、ドメインで追加、更
新、削除するドキュメントを表します。バッチは JSON または XML で記述できます。ドキュメント
バッチをドメインにアップロードすると、ドメインのインデックス作成オプションに従って自動的に
データのインデックスが作成されます。
データが変更されたら、バッチをアップロードし、インデックスに関してドキュメントを追加、変
更、削除します。Amazon CloudSearch は継続的に更新を適用します。明示的にデータのインデッ
クスを再作成する必要があるのは、ドメインが NEEDS INDEXING 状態になる設定変更を実行した場
合、または、サジェスタを更新する必要がある場合のみです。
ドメインにデータをアップロードするには、データが有効な JSON または XML バッチ形式である必
要があります。各ドキュメントに指定されたフィールドは、ドメイン用に設定されたインデックス
フィールドに対応する必要があります。ただし、設定されたすべてのインデックスフィールドをド
API Version 2013-01-01
90
Amazon CloudSearch 開発者ガイド
ドキュメントサービスリクエストの送信
キュメントが含んでいる必要はありません。ドキュメントバッチの作成方法については、「データの
準備 (p. 60)」を参照してください。ドメインのインデックスフィールドの設定については、「イン
デックスフィールドの設定 (p. 66)」を参照してください。
削除操作を行うバッチも含めて、検索ドメインにアップロードしたドキュメントバッチの合計数
に対して請求されます。Amazon CloudSearch の料金の詳細については、「aws.amazon.com/
cloudsearch/pricing/」を参照してください。
Important
ドメインのドキュメントエンドポイントと検索エンドポイントは、ドメインが存在している
間変わりません。すべてのアップロードリクエストや検索リクエストの前にエンドポイント
を取得するのではなく、エンドポイントをキャッシュに保存してください。各リクエストの
前に aws cloudsearch describe-domains または DescribeDomains を呼び出すことに
よって Amazon CloudSearch 設定サービスにクエリを実行すると、リクエストが調整される
可能性があります。
ドキュメントバッチは、Amazon CloudSearch console (p. 93) または AWS CLI を使用するか、ド
メインのドキュメントサービスエンドポイントに posting it directly (p. 95) することで、ドメインに
送信できます。
ドキュメントサービス API の詳細については、「ドキュメントサービス API リファレン
ス (p. 236)」を参照してください。
トピック
• Amazon CloudSearch ドメインへのドキュメントのアップロードリクエストの送信 (p. 91)
• Amazon CloudSearch での一括アップロード (p. 92)
• Amazon CloudSearch コンソールを使用したデータのアップロード (p. 93)
• AWS CLI を使用したデータのアップロード (p. 94)
• HTTP 経由で Amazon CloudSearch ドメインのドキュメントサービスエンドポイントにドキュメ
ントを投稿 (p. 95)
Amazon CloudSearch ドメインへのドキュメントの
アップロードリクエストの送信
AWS SDK または AWS CLI のいずれか 1 つを使用して、ドキュメントのアップロードリクエストを
送信することをお勧めします。SDK と AWS CLI は、リクエスト署名を自動的に処理し、すべての
Amazon CloudSearch アクションを簡単に実行できる方法を提供します。1 ステップでソースドキュ
メントを処理して、生成された JSON または XML バッチをドメインにアップロードするには、スタ
ンドアロンの Amazon CloudSearch コマンドラインツールで cs-import-documents コマンドを使
用できます。詳細については、「ソースデータの処理 (p. 64)」を参照してください。また、個々の
バッチをアップロードして、DynamoDB または S3 からデータをインポートするときにも、Amazon
CloudSearch コンソールを使用できます。
Important
ドメインのドキュメントエンドポイントと検索エンドポイントは、ドメインが存在している
間変わりません。すべてのアップロードリクエストや検索リクエストの前にエンドポイント
を取得するのではなく、エンドポイントをキャッシュに保存してください。各リクエストの
前に aws cloudsearch describe-domains または DescribeDomains を呼び出すことに
よって Amazon CloudSearch 設定サービスにクエリを実行すると、リクエストが調整される
可能性があります。
たとえば、次のリクエストは、AWS CLI を使用してバッチをアップロードします。
API Version 2013-01-01
91
Amazon CloudSearch 開発者ガイド
一括アップロード
aws cloudsearchdomain --endpoint-url http://doc-moviesy6gelr4lv3jeu4rvoelunxsl2e.us-east-1.cloudsearch.amazonaws.com uploaddocuments --content-type
application/json --documents movie-data-2013.json
開発とテストの目的で、ドメインのドキュメントサービスへの匿名アクセスを許可し、未署名の
HTTP POST リクエストを直接ドメインのドキュメント サービスに送信することができます。本番
環境では、ドメインへのアクセスを特定の IAM ユーザー、グループ、ロールに制限し、署名付き
リクエストを送信します。Amazon CloudSearch へのアクセスの制御方法については、「Amazon
CloudSearch のアクセス設定 (p. 30)」を参照してください。リクエスト署名の詳細については、
「AWS API リクエストのサインアップ」を参照してください。
たとえば、次の POST リクエストは、JSON 形式のドメインのバッチをドメインエンドポイント docmovies-123456789012.us-east-1.cloudsearch.amazonaws.com にアップロードします。
curl -X POST --upload-file data1.json doc-movies-123456789012.useast-1.cloudsearch.amazonaws.com/2013-01-01/documents/batch --header
"Content-Type: application/json"
Amazon CloudSearch での一括アップロード
ドキュメントバッチのサイズは、バッチごとに 5 MB に制限されています。ただし、バッチを並行し
てアップロードして、すべてのデータをアップロードするのにかかる時間を短縮することができま
す。
一括アップロードを実行するには、以下に従います。
• バッチのサイズを制限の 5 MB にできるだけ近付けてください。小さなバッチを大量にアップロー
ドすると、アップロードとインデックス作成の処理速度が低下します。
• 必要なインスタンスタイプを、デフォルトの search.m1.small より大きなインスタンスタイプに
設定します。使用できるアップロードスレッドの数は、ドメインで使っている検索インスタンスの
タイプ、データの性質、インデックス作成オプションによって異なります。インスタンスタイプが
大きいほど、アップロード容量が大きくなります。search.m1.small インスタンスにバッチを並
列アップロードしようとすると、通常は、高い確率で 504 または 507 エラーが発生します。必要な
インスタンスタイプの設定の詳細については、「スケーリングオプションの設定 (p. 41)」を参照し
てください。
• 設定の変更がアクティブになったら、データのアップロードを開始します。5xx エラーが高い確率
で発生する場合は、アップロードレートを減らすか、サイズの大きいインスタンスタイプに切り替
える必要があります。最大のインスタンスタイプを既に使っている場合は、望ましいパーティショ
ン数を増やしてアップロード容量をさらに増やすことができます。
Important
ドメインが「PROCESSING」状態の間に大量の更新を送信した場合、更新が検索インデッ
クスに適用されるまでの時間が長くなることがあります。これを回避するには、ドメイン
が「ACTIVE」状態になるまで待ってから一括アップロードを開始してください。
• 一括アップロードが終了すると、必要なインスタンスタイプを、小さなインスタンスタイプに戻す
ことができます。小さなタイプにインデックスが収まる場合は、Amazon CloudSearch が自動的に
ドメインを縮小します。Amazon CloudSearch は、ドメインに設定された必要なインスタンスタイ
プより小さいインスタンスタイプに縮小することはありません。
データが 1 GB 未満のデータセットまたは 1,000,001 KB 未満のドキュメントの場合は、スモール
検索インスタンスで十分です。1~8 GB のデータセットをアップロードするには、アップロード
する前に、必要なインスタンスタイプを search.m3.large に設定することをお勧めします。8
~16 GB のデータセットは、search.m3.xlarge で始まります。16~32 GB のデータセット
API Version 2013-01-01
92
Amazon CloudSearch 開発者ガイド
コンソールを使用したデータのアップロード
は、search.m3.2xlarge で始まります。アップロードのサイズが 32 GB を超える場合は、インス
タンスタイプに search.m3.2xlarge を選択し、データセットに対応できるように、望ましいパー
ティション数を増やします。各パーティションに最大 32 GB のデータを格納できます。さらに多く
のアップロード容量が必要な場合、または 500 GB を超えるインデックスを作成する場合は、Service
Increase Limit Request を送信します。
Amazon CloudSearch コンソールを使用したデータ
のアップロード
Amazon CloudSearch コンソールでは、ドメインダッシュボードを使って、ローカルファイルシステ
ムや Amazon S3 からドメインにデータをアップロードできます。コンソールは、アップロード処理
中に以下のファイルタイプを自動的にドキュメントバッチに変換します。
• カンマ区切り値(.csv)
• Adobe Portable Document Format(.pdf)
• HTML(.htm、.html)
• Microsoft Excel(.xls、.xlsx)
• Microsoft PowerPoint(.ppt、.pptx)
• Microsoft Word(.doc、.docx)
• テキストドキュメント(.txt)
また、DynamoDB テーブルの項目を変換してアップロードすることもできます。詳細については、
「Uploading DynamoDB Data (p. 114)」を参照してください。
Note
Amazon S3 または DynamoDB からデータをアップロードするには、サービスとアップロー
ドするリソースの両方に対するアクセス許可が必要です。詳細については、「バケットポリ
シーとユーザーポリシーの使用」および「IAM を使用して DynamoDB リソースへのアクセス
をコントロールする」を参照してください。
CSV ファイルは行単位で解析され、行ごとに別のドキュメントが生成されます。その他のファイル
タイプはすべて単一ドキュメントとして扱われます。ドキュメントバッチの自動生成の詳細について
は、「データの準備 (p. 60)」を参照してください。
Note
Amazon S3 バケットまたは DynamoDB テーブルから Amazon CloudSearch にデータをアッ
プロードするには、それらのサービスとリソースにアクセスする必要があります。
インデックス作成のためにデータをドメインに送信するには
1.
AWS マネジメントコンソールにサインインし、Amazon CloudSearch console at https://
console.aws.amazon.com/cloudsearch/home を開きます。
2.
[Navigation] ペインで、ドメインの名前をクリックします。
3.
ドメインのダッシュボードの上部で、[Upload Documents] をクリックします。
4.
ドメインにアップロードするデータの場所を選択します。
• ローカルディスク上のファイル
• Amazon S3 のオブジェクト
• DynamoDB の項目
• 定義済みデータ
API Version 2013-01-01
93
Amazon CloudSearch 開発者ガイド
AWS CLI を使用したデータのアップロード
ドキュメントバッチとしてフォーマットされていないデータをアップロードすると、アップロー
ド処理中に自動的に変換されます。
Note
5.
バッチが無効になっている場合、Amazon CloudSearch は 1 つのコンテンツフィールド
と汎用メタデータフィールドを含む有効なバッチにコンテンツを変換します。これらは
通常、ドメイン用に設定されたフィールドではないため、フィールドが存在しないこと
を示すエラーが発生します。
ローカルファイルをアップロードする場合は、[Browse] をクリックして、アップロードするファ
イルを選択します。
6.
Amazon S3 からオブジェクトをアップロードする場合は、アップロード元となるバケットを選択
します。バケットのコンテンツ全体をアップロードするには、[Prefix] フィールドを空白のままに
して、[Add] をクリックします。選択したオブジェクトをアップロードするには、[Prefix] フィー
ルドにフィルタを入力して、[Add] をクリックします(複数のプレフィックスを追加できます)。
7.
DynamoDB から項目をアップロードする場合は、アップロード元となるテーブルを選択します。
特定の項目から読み込みを開始するには、開始キーを指定します。テーブルからの読み取り時に
消費可能な読み取りキャパシティユニットを制限するには、読み取りキャパシティユニットの最
大パーセンテージを入力します。
8.
定義済みのサンプルデータをアップロードする場合は、使用するデータ セットを選択します。
9.
アップロードするデータを選択したら、[Continue] をクリックします。
10. [Review Documents] ステップで、アップロードするドキュメントを確認し、[Upload Documents]
をクリックして続行します。
11. [Document Summary] ステップで、ドキュメントバッチがデータから自動生成されている場合
は、[Download the generated document batch] をクリックして、そのバッチを取得できます。
[Finish] をクリックして、ドメインダッシュボードに戻ります。
AWS CLI を使用したデータのアップロード
aws cloudsearch upload-documents コマンドを使って、ドキュメントバッチを検索ドメインに
送信できます。AWS CLI のインストールおよびセットアップの詳細については、『AWS Command
Line Interface ユーザーガイド』を参照してください。
別の方法として、cs-import-documents コマンドを使って、1 回のステップでドキュメントバッチ
を生成してドメインにアップロードする単体の Amazon CloudSearch コマンドラインツールを使用す
ることもできます。cs-import-documents コマンドを使うと、ローカルデータの他に Amazon S3
と DynamoDB に保存されたデータを処理してアップロードすることができます。詳細については、
「CLT を使ったソースデータの処理 (p. 65)」を参照してください。
インデックス作成のためにドキュメントバッチをドメインに送信するには
•
aws cloudsearch upload-documents コマンドを実行して、ドメインにバッチをアップロー
ドします。--source オプションを少なくとも 1 つ指定して、アップロードするバッチの場所を
指定する必要があります。
aws cloudsearchdomain --endpoint-url http://doc-moviesy6gelr4lv3jeu4rvoelunxsl2e.us-east-1.cloudsearch.amazonaws.com uploaddocuments --content-type application/json --documents movie-data-2013.json
{
"status": "success",
"adds": 5000,
"deletes": 0
}
API Version 2013-01-01
94
Amazon CloudSearch 開発者ガイド
HTTP 経由でドキュメントサービス
エンドポイントにドキュメントを投稿
HTTP 経由で Amazon CloudSearch ドメインのド
キュメントサービスエンドポイントにドキュメント
を投稿
documents/batch (p. 237) リソースを使用して、ドメインにドキュメントバッチを投稿し、ド
キュメントを追加、更新、または削除します。以下に例を示します。
curl -X POST --upload-file movie-data-2013.json doc-movies-123456789012.useast-1.cloudsearch.amazonaws.com/2013-01-01/documents/batch --header
"Content-Type:application/json"
Amazon CloudSearch を使用したドキュメント
データのインデックス作成
ドキュメント更新をドメインに送信すると、Amazon CloudSearch はドメインの検索インデックスを
新しいデータで自動的に更新します。インデックスを作成する更新に対しては何も行う必要があり
ません。ただし、ドメインのインデックスフィールドまたはテキストオプションの設定を変更した場
合、それらの変更が検索結果に表示されるようにするには検索インデックスを明示的に再構築する必
要があります。データが多い場合、インデックスの再構築にかなり時間がかかることがあるため、ド
キュメントのインデックスを再作成する前に構成の変更をすべて終了する必要があります。
Important
フィールドのタイプを変更したことで、新しいフィールド タイプと互換性のないデータを含
むドキュメントがインデックス内に存在する場合、インデックス作成を実行すると、処理さ
れるすべてのフィールドは FailedToValidate 状態になり、インデックス作成操作は失敗し
ます。互換性のない設定の変更をロールバックすると、インデックスを再構築できるように
なります。変更が必要な場合、互換性のないドキュメントを更新するか、インデックスから
削除し、新しい設定を使用する必要があります。
インデックスの再作成が必要となる変更を加えると、ドメインステータスが NEEDS INDEXING に
変わります。インデックスの再構築中、ドメインのステータスは PROCESSING です。インデッ
クス作成の進行中に検索リクエストを送信し続けることができますが、インデックス作成が完了し
てドメインのステータスが ACTIVE に変わるまで設定の変更は検索結果に表示されません。また、
ドメインにドキュメントバッチを引き続きアップロードすることも可能です。ただし、ドメインが
「PROCESSING」状態の間に大量の更新を送信した場合、更新が検索インデックスに適用されるま
での時間が長くなることがあります。これが問題になる場合は、ドメインが「ACTIVE」状態に戻るま
で、更新のペースを下げてください。
Note
データ量によっては、インデックス全体を構築するのにかなりの量のコンピューティング能
力が消費される可能性があります。Amazon CloudSearch では、インデックスの構築に必要
なリソースがタイムリーに自動管理されます。ほとんどのデータ更新と簡単なドメイン設
定変更は、数分で構築されてデプロイされます。大量のデータのインデックス作成をする場
合、およびインデックス全体の再構築を必要とする設定の変更を適用する場合、より長い時
間がかかります。
インデックス作成は、Amazon CloudSearch console (p. 96) コマンドを使用して aws
cloudsearch index-documents から開始するか、AWS SDK を通じて開始できます。
API Version 2013-01-01
95
Amazon CloudSearch 開発者ガイド
コンソールを使用したドキュメントのインデックス作成
トピック
• Amazon CloudSearch コンソールを使用したドキュメントのインデックス作成 (p. 96)
• Amazon CloudSearch AWS CLI を使用したドキュメントのインデックス作成 (p. 96)
• AWS SDK を使用したドキュメントのインデックス作成 (p. 96)
Amazon CloudSearch コンソールを使用したドキュ
メントのインデックス作成
ドメインのインデックスの再構築が必要になる変更を加えると、ドメインダッシュボードに表示され
るステータスは NEEDS INDEXING に変わります。変更が終わると、インデックス作成の実行を求め
るメッセージもコンソールの設定ページの上部に表示されます。
インデックス作成を実行するには
1.
AWS マネジメントコンソールにサインインし、Amazon CloudSearch console at https://
console.aws.amazon.com/cloudsearch/home を開きます。
2.
[Navigation] ペインで、インデックス作成が必要なドメインの名前をクリックします。
3.
ドメインダッシュボードで、[Run Indexing] ボタンをクリックします。
4.
[Starting Indexing] ダイアログボックスで [OK] をクリックし、ドメインダッシュボードに戻りま
す。
Amazon CloudSearch AWS CLI を使用したドキュ
メントのインデックス作成
ドメインの検索インデックスを再構築するには、aws cloudsearch index-documents コマンド
を使用します。AWS CLI のインストールおよびセットアップの詳細については、『AWS Command
Line Interface ユーザーガイド』を参照してください。
Note
2.0.0.1 バージョンの Amazon CloudSearch のコマンドラインツールを使用している場
合、cs-index-documents コマンドを使用してインデックスを再構築できます。ただ
し、AWS CLI に移行することをお勧めします。AWS CLI は、インストールが簡単で、設定が
統一されていて、コマンドライン構文が一貫しているクロスサービスの CLI を提供します。
ドメインのインデックスを明示的に作成するには
•
aws cloudsearch index-documents コマンドを実行します。以下の例では、movies という
ドメインのインデックスを再構築します。
aws cloudsearch index-documents --domain-name movies
AWS SDK を使用したドキュメントのインデックス
作成
AWS SDK では(Android および iOS SDK を除く)、IndexDocuments (p. 192) も含め
て、Amazon CloudSearch 設定 API で定義されたすべての Amazon CloudSearch アクションがサポー
API Version 2013-01-01
96
Amazon CloudSearch 開発者ガイド
AWS SDK を使用したドキュメントのインデックス作成
トされています。AWS SDK のインストールと使用の詳細については、「AWS Software Development
Kits」を参照してください。
API Version 2013-01-01
97
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch でのデータの
検索
検索する用語または値を q パラメータを使用して指定します。検索条件の指定方法は、使用するクエ
リパーサーによって異なります。Amazon CloudSearch は 4 つのクエリパーサーをサポートしていま
す。
• simple - 指定された文字列をすべての text および text-array フィールドで検索します。simple
クエリパーサーでは、フレーズ、個々の用語、プレフィックスを検索することができます。必須
またはオプションとして用語を指定することも、特定の用語を含む一致を除外することもできま
す。特定のフィールドを検索するには、q.options パラメータで検索するフィールドを指定できま
す。simple クエリパーサーは、q.parser パラメータが指定されない場合にデフォルトで使用さ
れます。
• structured - 特定のフィールドの検索、ブール演算子を使用した複合クエリの作成、および用語
の増強や近接検索などの高度な機能を使用することができます。
• lucene - Apache Lucene クエリパーサーの構文を使用して、検索条件を指定します。現在 Lucene
構文を使用している場合は、lucene クエリパーサーを使用することで、検索クエリを Amazon
CloudSearch 構造化検索構文で完全に書き換えなくても、検索サービスを Amazon CloudSearch ド
メインに移行することができます。
• dismax - DisMax のクエリパーサーで定義された Apache Lucene のクエリパーサー構文の簡略
化されたサブセットを使用して、検索条件を指定します。現在 DisMax 構文を使用している場合
は、dismax クエリパーサーを使用することで、検索クエリを Amazon CloudSearch 構造化検索構
文で完全に書き換えなくても、検索サービスを Amazon CloudSearch ドメインに移行することがで
きます。
追加の検索パラメータを使用して、検索結果の返し方を制御 (p. 133)したり、検索結果にファセッ
ト、強調表示、候補などの追加情報を含める (p. 118)ことができます。
すべての Amazon CloudSearch 検索パラメータの詳細については、「検索 API リファレン
ス (p. 245)」を参照してください。
トピック
• Amazon CloudSearch ドメインへの検索リクエストの送信 (p. 99)
• Amazon CloudSearch での複合クエリの作成 (p. 101)
• Amazon CloudSearch でのテキストの検索 (p. 103)
• Amazon CloudSearch での数値の検索 (p. 108)
• Amazon CloudSearch での日付と時刻の検索 (p. 108)
API Version 2013-01-01
98
Amazon CloudSearch 開発者ガイド
検索リクエストの送信
• Amazon CloudSearch での値の範囲の検索 (p. 108)
• Amazon CloudSearch での地理的位置による検索および結果のランク付け (p. 109)
• Amazon CloudSearch を使用した DynamoDB の検索 (p. 111)
• Amazon CloudSearch での一致するドキュメントのフィルタリング (p. 116)
• Amazon CloudSearch での検索リクエストのパフォーマンスのチューニング (p. 116)
Amazon CloudSearch ドメインへの検索リクエス
トの送信
AWS SDK または AWS CLI のいずれかを使用して、検索リクエストを送信することをお勧めしま
す。SDK と AWS CLI は、リクエスト署名を自動的に処理し、すべての Amazon CloudSearch アク
ションを簡単に実行できる方法を提供します。また、Amazon CloudSearch コンソールで検索テス
ターを使用して、データの検索、結果の参照、生成されたリクエストの URL および JSON と XML レ
スポンスの表示を行うこともできます。詳細については、「検索テスターによる検索 (p. 12)」を参照
してください。
Important
ドメインのドキュメントエンドポイントと検索エンドポイントは、ドメインが存在している
間変わりません。すべてのアップロードリクエストや検索リクエストの前にエンドポイント
を取得するのではなく、エンドポイントをキャッシュに保存してください。各リクエストの
前に aws cloudsearch describe-domains または DescribeDomains を呼び出すことに
よって Amazon CloudSearch 設定サービスにクエリを実行すると、リクエストが調整される
可能性があります。ドメインの IP アドレスは時間が経つと変更される場合があります。IP ア
ドレスよりも、コンソールに表示され aws cloudsearch describe-domains コマンドで
返されるエンドポイントをキャッシュすることが重要です。詳細については、「DNS 名参照
用の JVM TTL の設定」を参照してください。
たとえば、次のリクエストは AWS CLI を使用して wolverine の単純なテキスト検索を送信し、一致
ドキュメントの ID だけを返します。
aws cloudsearchdomain --endpoint-url http://search-moviesy6gelr4lv3jeu4rvoelunxsl2e.us-east-1.cloudsearch.amazonaws.com search -search-query wolverine --return _no_fields
{
"status": {
"rid": "/rnE+e4oCAqfEEs=",
"time-ms": 6
},
"hits": {
"found": 3,
"hit": [
{
"id": "tt1430132"
},
{
"id": "tt0458525"
},
{
"id": "tt1877832"
}
],
"start": 0
API Version 2013-01-01
99
Amazon CloudSearch 開発者ガイド
検索テスターによる検索
}
}
デフォルトでは、Amazon CloudSearch は JSON 形式で応答を返します。format パラメータを指定
することで、結果を XML 形式で取得することができますレスポンス形式の設定は、成功したリクエ
ストのレスポンスのみに影響します。エラーレスポンスの形式は、エラーの発生元によって異なりま
す。検索サービスによって返されるエラーは、常に JSON 形式で返されます。サーバーのタイムアウ
トなど、リクエストのルーティング関連の問題による 5xx エラーは XML 形式で返されます。
開発とテストの目的で、ドメインの検索サービスへの匿名アクセスを許可し、未署名の HTTP GET ま
たは POST リクエストを直接ドメインの検索エンドポイントに送信することができます。本番環境
では、ドメインへのアクセスを特定の IAM ユーザー、グループ、ロールに制限し、AWS SDK または
AWS CLI を使用して署名付きリクエストを送信します。Amazon CloudSearch へのアクセスの制御方
法については、「Amazon CloudSearch のアクセス設定 (p. 30)」を参照してください。リクエスト署
名の詳細については、「AWS API リクエストのサインアップ」を参照してください。
任意の方法を使用して、HTTP リクエストを直接ドメインの検索エンドポイントに送信することがで
きます。ウェブブラウザにリクエスト URL を直接入力することも、cURL を使用してリクエストを送
信することも、好みの HTTP ライブラリを使用して HTTP 呼び出しを生成することもできます。検索
条件を指定するには、検索の制約とレスポンスに含める情報を指定するクエリ文字列を指定します。
クエリ文字列は URL エンコードする必要があります。GET で送信される検索リクエストの最大サイ
ズは、HTTP メソッド、URI、プロトコルのバージョンを含め 8,190 バイトです。HTTP POST を使用
すると大きなリクエストを送信できますが、大きくて複雑なリクエストは処理に時間がかかり、タイ
ムアウトになる可能性が高いことに注意が必要です。詳細については、「Amazon CloudSearch での
検索リクエストのパフォーマンスのチューニング (p. 116)」を参照してください。
たとえば、次のリクエストは search-movies-rr2f34ofg56xneuemujamut52i.useast-1.cloudsearch.amazonaws.com ドメインに構造化クエリを送信し、title フィールドのコ
ンテンツを取得します。
http://search-movies-rr2f34ofg56xneuemujamut52i.us-east-1.cloudsearch.
amazonaws.com/2013-01-01/search?q=(and+(term+field%3Dtitle+'star')
(term+field%3Dyear+1977))&q.parser=structured&return=title
Important
クエリ文字列の特殊文字は、URL エンコードする必要があります。たとえば、構成化
クエリでは、= 演算子を %3D(term+field%3Dtitle+'star') のようにエンコード
する必要があります。検索リクエストを送信するときに特殊文字をエンコードしない
と、InvalidQueryString エラーが発生します。
検索テスターによる検索
Amazon CloudSearch コンソールの検索テスターを使用すると、サポートされるクエリパーサー
(simple、structured、lucene、dismax)のいずれかを使用してサンプルの検索リクエストを送信す
ることができます。デフォルトでは、リクエストは simple クエリパーサーを使用して処理されます。
指定パーサーに対するオプションの指定、フィルタリング、結果の並べ替え、設定されたファセッ
トの参照が可能です。検索ヒットは、検索結果で自動的にハイライト表示されます。実行方法の詳
細については、「Amazon CloudSearch で検索ヒットをハイライト (p. 127)」を参照してくださ
い。[Search] フィールドに用語を入力する際に、サジェスタを選択し、候補を取得することもできま
す。(候補を取得するには、あらかじめサジェスタを設定する必要があります。詳細については、
「Amazon CloudSearch での自動入力候補の取得 (p. 128)」を参照してください。)
デフォルトでは、自動的に生成された関連性スコア _score に従って、結果がソートされます。結
果のランク付け方法のカスタマイズについて詳しくは、「Amazon CloudSearch での結果のソー
ト (p. 133)」を参照してください。
API Version 2013-01-01
100
Amazon CloudSearch 開発者ガイド
複合クエリの作成
ドメインを検索するには
選択したクエリパーサーに追加のオプションを指定して、クエリで使用できるデフォルトの演
算子とコントロールを設定することができます。詳細については、「検索リクエストのパラメー
タ (p. 247)」を参照してください。
1.
Amazon CloudSearch console at https://console.aws.amazon.com/cloudsearch/homeに移動しま
す。
2.
[Navigation]パネルで、映画ドメインの名前をクリックし、[Run a Test Search] リンクをクリック
します。
3.
単純なテキストの検索を実行するには、検索するテキストを入力し、[Go] をクリックします。デ
フォルトでは、すべての text および text-array フィールドが検索されます。
4.
特定のフィールドを検索するには、[More Parameters] リンクをクリックし、[Search Fields]
フィールドに、検索するフィールドをコンマで区切ったリストを入力します。キャレット(^)を
使用して各フィールドに重みを追加し、検索結果での各フィールドの相対的な重要度を制御する
ことができます。たとえば、title^5, description を指定すると、一致する各ドキュメント
の関連性スコアを計算するときに、title フィールド内のヒットに description フィールド内
のヒットの 5 倍の重みを付加します。
5.
構造化クエリ構文を使用するには、[Query Parser] メニューから [Structured] を選択しま
す。structured クエリパーサーを選択したら、[Search] フィールドに構造化クエリを入力し、[Go]
をクリックします。たとえば、2000 年以前にリリースされた、タイトルに star を含むすべての
映画を検出するには、次のように入力します。(and title:'star' year:{,2000])。詳細に
ついては、「複合クエリの作成 (p. 101)」を参照してください。Lucene または DisMax のクエ
リを送信するには、適切なクエリパーサーを選択します。
ドメインの検索エンドポイントに送信された HTTP 検索リクエストと Amazon CloudSearch によって
返されたレスポンスを表示するには、表示するレスポンスフォーマットに対応する [view raw] リンク
をクリックします。
リクエスト URL をコピーして貼り付け、リクエストを送信して、ウェブブラウザから応答を表示する
こともできます。リクエストは、HTTP または HTTPS 経由で送信できます。
Amazon CloudSearch での複合クエリの作成
structured クエリパーサーを使用すると、ブール演算子 and、or、not で一致式を結合することがで
きます。structured クエリパーサーを選択するには、クエリに q.parser=structured を含めます。
構造化クエリ演算子は、prefix 演算子として指定されます。構文は次のとおりです。
• (and boost=N EXPRESSION1 EXPRESSION2 ... EXPRESSIONn)
• (or boost=N EXPRESSION1 EXPRESSION2 ... EXPRESSIONn)
• (not boost=N EXPRESSION)
たとえば、次のクエリは、サンプルデータセット内でタイトルに star が含まれ、actors フィールド
に Harrison Ford または William Shatner のいずれかの名前があり、Zachary Quinto の名前のないすべ
ての映画と一致します。
(and title:'star' (or actors:'Harrison Ford' actors:'William Shatner')(not
actors:'Zachary Quinto'))
構造化クエリ演算子を使用するときは、演算子の名前、演算子のオプション、および操作対象の一致
式を (OPERATOR OPTIONS EXPRESSION) のように指定します。一致式には、単純な文字列または
複合クエリのサブクラスを使用できます。オプションは語句の前に指定する必要があります。たとえ
API Version 2013-01-01
101
Amazon CloudSearch 開発者ガイド
複合クエリの作成
ば、(and (not field=genres 'Sci-Fi')(or (term field=title boost=2 'star')(term
field=plot 'star'))) と指定します。
式の評価の順番は、括弧で制御します。式を括弧で囲んだ場合、その式が最初に評価され、その結果
の値が複合クエリの残り部分の評価に使用されます。
Important
クエリ文字列の特殊文字は、URL エンコードする必要があります。たとえば、構造化ク
エリでは、= 演算子を %3D(term+field%3Dtitle+'star') のようにエンコードする必
要があります。特殊文字が URL エンコードされていない場合、Amazon CloudSearch は
InvalidQueryString エラーを返します。URL エンコードの詳細については、W3C の
「HTML URL エンコードリファレンス」を参照してください。
たとえば、次のクエリは title フィールドを検索対象として語句 star wars を検索し、year
フィールドの値が 2000 より小さいものを除外します。
(and (phrase field='title' 'star wars') (not (range field=year {,2000})))
この検索リクエストを送信するには、クエリ文字列をエンコードして、q.parser パラメーターをつ
けた structured クエリパーサーを指定します。
http://search-movies-rr2f34ofg56xneuemujamut52i.us-east-1.cloudsearch.
amazonaws.com/2013-01-01/search?q=(and+(phrase+field='title'+'star
wars')+(not+(range+field%3Dyear+{,2000})))&q.parser=structured
構造化クエリの構文を使用すると、複数のフィールドに対する検索を結合できます。検索するフィー
ルドを指定しない場合は、すべての text および text-array フィールドが検索されます。た
とえば、次のクエリはすべての text および text-array フィールドで、star という用語を検索
し、actors フィールドに Zachary Quinto を含むドキュメントを除外します。
(and 'star' (not actors:'Zachary Quinto'))
boost 値を指定して、複合クエリのある式の重要度を他より高くすることができます。boost
値は一致ドキュメントのスコアを高くします。たとえば、次のクエリでは、star という用語が
description フィールドではなく title フィールドに存在している場合、一致の重要度が高くなり
ます。
(and (range field=year [2013,}) (or (term field=title boost=2 'star') (term
field=plot 'star'))
Boost 値は 0 より大きくする必要があります。
and、or、not に加えて、Amazon CloudSearch 構造化検索構文ではいくつかの専門演算子がサポー
トされています。
• matchall - ドメイン内の各ドキュメントと一致。構文: matchall.
• near - あいまいフレーズクエリをサポート。distance 値には、フレーズ内の単語を分割できる
単語の最大数を指定します。たとえば、(near field='plot' distance=4 'naval mutiny
demonstration') のようにします。near 演算子を使用すると、指定した用語がごく近接してい
ますが、隣接してはいないときに一致します。あいまいフレーズ検索の詳細については、「フレー
ズの検索 (p. 105)」を参照してください。構文: (near field=FIELD distance=N boost=N
'STRING').
• phrase - text または text-array フィールドでフレーズを検索します。たとえば、(phrase
field="title" 'teenage mutant ninja') となります。式に一致するドキュメントの増強を
API Version 2013-01-01
102
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch でのテキストの検索
サポートします。フレーズ検索の詳細については、「フレーズの検索 (p. 105)」を参照してくださ
い。構文: (phrase field=FIELD boost=N 'STRING').
• prefix - テキスト、テキスト配列、リテラル、リテラル配列フィールドで指定されたプレフィッ
クス単独またはその後に文字が続くものを検索します。たとえば、(prefix field='title'
'wait') となります。式に一致するドキュメントの増強をサポートします。プレフィックス検索
の詳細については、「プレフィックスの検索 (p. 106).構文: (prefix field=FIELD boost=N
'STRING')」を参照してください。
• range - 数値フィールドで値の範囲を検索。例: (range field=year [2000,2013])。範
囲検索の詳細については、「値の範囲の検索 (p. 108)」を参照してください。構文: (range
field=FIELD boost=N RANGE).
• term - 任意のフィールドで個々の用語または値を検索。例: (and (term field=title 'star')
(term field=year 1977))。構文: (term field=FIELD boost=N 'STRING'|VALUE).
特定のデータタイプの検索の詳細については、次のセクションを参照してください。構造化検索構文
の詳細については、「構造化検索構文 (p. 253)」を参照してください。
Amazon CloudSearch でのテキストの検索
テキストとリテラルの両方のフィールドで、テキスト文字列を検索できます。
• Text および text-array フィールドは、常に検索可能です。個々の用語だけでなくフレーズも検
索できます。text および text-array フィールド内の検索では、大文字と小文字は区別されませ
ん。
• Literal および literal-array フィールドは、ドメインのインデックスオプションで検索を有
効にしている場合のみ検索できます。検索文字列の完全一致を検索することができます。リテラル
フィールドの検索では、大文字/小文字が区別されます。
簡単なクエリパーサーを使用する場合、または構造化クエリパーサーで検索時にフィールドを指定し
ない場合、デフォルトではすべての text および text-array フィールドが検索されます。リテラル
フィールドはデフォルトでは検索されません。q.options パラメーターを使用して、検索するフィー
ルドを指定できます。
ユニークなドキュメント ID フィールドを、他のテキストフィールドと同様に検索できます。検索リク
エストでドキュメント ID フィールドを参照するには、フィールド名 _id を使用します。ドキュメン
ト ID は、必ず検索結果で返されます。
トピック
• Amazon CloudSearch での個々の用語の検索 (p. 103)
• Amazon CloudSearch でのフレーズの検索 (p. 105)
• Amazon CloudSearch でのリテラル文字列の検索 (p. 106)
• Amazon CloudSearch でのプレフィックスの検索 (p. 106)
Amazon CloudSearch での個々の用語の検索
text および text-array フィールドで個々の用語を検索すると、Amazon CloudSearch は指定され
たフィールド内のどこかに検索する用語が含まれているすべてのドキュメントを任意の順序で見つけ
ます。たとえば、サンプルの映画データで、title フィールドは text フィールドとして設定されて
います。title フィールドで star を検索する場合、title フィールドのどこかに star を含んでいる
すべての映画、たとえば star、star wars、a star is born などが見つかります。これは、一致と見なさ
れるにはフィールド値が検索文字列と完全に一致している必要がある literal フィールドの検索と
は異なります。
API Version 2013-01-01
103
Amazon CloudSearch 開発者ガイド
個々の用語の検索
simple クエリパーサーでは、text および text-array フィールドで 1 つ以上の用語を簡単に検索
できます。q.parser パラメータを使用して他のクエリパーサーを指定しなければ、デフォルトで
simple クエリパーサーが使用されます。
たとえば、katniss を検索するには、クエリ文字列に katniss と指定します。デフォルトで
は、Amazon CloudSearch は検索結果に値を返すことが可能なすべてのフィールドを含めま
す。return パラメータを設定して、返す必要のあるフィールドを指定できます。
https://search-domainname-domainid.us-east-1.cloudsearch.amazonaws.com/
2013-01-01/search?q=katniss&return=title
デフォルトでは、応答は JSON で返されます。
{
"status": {
"rid": "rd+5+r0oMAo6swY=",
"time-ms": 9
},
"hits": {
"found": 3,
"start": 0,
"hit": [
{
"id": "tt1951265",
"fields": {
"title": "The Hunger Games: Mockingjay - Part 1"
}
},
{
"id": "tt1951264",
"fields": {
"title": "The Hunger Games: Catching Fire"
}
},
{
"id": "tt1392170",
"fields": {
"title": "The Hunger Games"
}
}
]
}
}
複数の用語を指定するには、用語をスペースで区切ります。例: star wars。複数の検索用語を指定
するときは、デフォルトで、一致と見なされるすべての用語がドキュメントに含まれている必要があ
ります。用語は、テキストフィールド内の任意の場所で、任意の順序で出現する可能性があります。
デフォルトでは、simple クエリパーサーを使用すると、すべての text および text-array フィール
ドが検索されます。q.options パラメータを指定することで、検索するフィールドを指定できます。
たとえば、このクエリでは、title および description フィールドに検索を制限し、title フィー
ルドでの一致の重要度を description フィールドでの一致より高く設定します。
q=star wars&q.options={fields: ['title^5','description']}
simple クエリパーサーを使用する場合は、次のプレフィックスを使用して、個々の用語を必須または
オプションとして指定したり、検索結果から除外するように指定できます。
API Version 2013-01-01
104
Amazon CloudSearch 開発者ガイド
フレーズの検索
• + - 一致するドキュメントは用語を含んでいる必要があります。これはデフォルトです。スペースで
用語を区切るのは、用語の前に + プレフィックスを付けることに相当します。
• - - 用語を含むドキュメントを検索結果から除外します。- 演算子は、個々の用語にのみ適用さ
れます。たとえば、デフォルトの検索フィールドに star という用語を含むドキュメントを除外す
るには、-star を指定します。search?q=-star wars の検索では、star という用語は含まれ
ず、wars という用語が含まれるすべてのドキュメントが取得されます。
• | - 他の用語が含まれていない場合でも、その用語を含むドキュメントが検索結果に含められま
す。| 演算子は、個々の用語にのみ適用されます。たとえば、2 つの用語のいずれかが存在するド
キュメントを含めるには、term1 |term2 と指定します。search?q=star wars |trek で検索
すると、star と wars の両方、または trek という用語を含むドキュメントが取得されます。
これらのプレフィックスは、シンプルなクエリの個々の用語にのみ適用できます。複合クエリを作成
するには、simple クエリパーサーではなく、structured クエリパーサーを使用する必要があります。
たとえば、structured クエリパーサーを使用して star および wars という用語を検索するには、次のよ
うに指定します。
(and 'star' 'wars')
このクエリでは、検索対象のいずれかのフィールドにそれぞれの用語を含むドキュメントが一致する
ことに注意してください。一致とみなされるには、用語が同じフィールドにある必要はありません。
ただし、(and 'star wars' 'luke') と指定した場合は、star および wars は同じフィールド内に
ある必要があります。luke はどのフィールドでもかまいません。
structured クエリパーサーを使用するときにフィールドを指定しない場合は、simple パーサーの
場合と同様に、デフォルトですべての text および text-array フィールドが検索されます。同様
に、q.options パラメータを使用して、検索されるフィールドを制御したり、選択したフィールドの
重要度を高くすることができます。詳細については、「複合クエリの作成 (p. 101)」を参照してくだ
さい。
simple クエリパーサーを使用して、あいまい検索を実行することもできます。あいまい検索を実行す
るには、~ 演算子と、ユーザーのクエリ文字列と用語が異なっていても一致と見なされる文字数を示
す値を追加します。たとえば、planit~1 と指定すると、用語 planit を検索しますが、1 文字だけ異
なる場合は一致と見なします。つまり、planet は結果に含まれます。
Amazon CloudSearch でのフレーズの検索
フレーズを検索すると、Amazon CloudSearch は、指定された順序で完全なフレーズを含むすべての
ドキュメントを見つけます。また、あいまいフレーズ検索を実行して、相互に指定された距離の範囲
内に存在する用語を見つけることもできます。
simple クエリパーサーを使用した検索で、フレーズ内の個々の用語ではなく、フレーズ全体で一致さ
せるには、フレーズを二重引用符でフレーズを囲みます。たとえば、次のクエリでは、with love とい
うフレーズを検索します。
q="with love"
simple クエリパーサーであいまいフレーズ検索を行うには、~ 演算子と距離の値を追加しま
す。distance 値には、フレーズ内の単語を分割できる単語の最大数を指定します。たとえば、次のク
エリは、相互に 3 単語以内で with love という用語を検索します。
q="with love"~3
複合クエリでは、phrase 演算子を使用して、次のように一致するフレーズを指定します。
API Version 2013-01-01
105
Amazon CloudSearch 開発者ガイド
リテラル文字列の検索
(phrase field=title 'star wars')
複合クエリであいまいフレーズ検索を実行するには、near 演算子を使用します。near 演算子を使用
して、検索するフレーズと、フィールド内でどのくらい離れた用語まで一致と見なされるかを指定す
ることができます。たとえば、次のクエリは、title フィールド内で 3 ワード以内の距離に star と
wars という用語を含むドキュメントを一致と見なします。
(near field=title distance=3 'star wars')
詳細については、「複合クエリの作成 (p. 101)」を参照してください。
Amazon CloudSearch でのリテラル文字列の検索
リテラルフィールドで文字列を検索する場合、Amazon CloudSearch は指定されたフィールドで、
大文字/小文字の区別も含め検索文字列全体の完全一致を含むドキュメントのみを返します。たとえ
ば、title フィールドがリテラルフィールドとして設定されていて、Star を検索する場合、一致と見
なされるためには、title フィールドの値が Star でなければなりません。star、star wars、および a
star is born は検索結果に含まれません。これは、大文字と小文字が区別されず、指定された検索用語
が任意の順序でフィールド内のどこにでも出現できるテキストフィールドの検索とは異なります。
リテラルフィールドを検索するには、検索文字列の前に、検索するリテラルフィールドの名前とコロ
ンを付けます。検索文字列は一重引用符で囲む必要があります。たとえば、次のクエリでは、リテラ
ル文字列 Sci-Fi を検索します。
genres:'Sci-Fi'
この例では、各ドキュメントの genre フィールドを検索し、genre フィールドに Sci-Fi の値が含まれ
ているすべてのドキュメントに一致します。一致と見なされるには、フィールド値が大文字/小文字の
区別も含め、検索文字列と完全に一致する必要があります。たとえば、genre フィールドに Sci-Fi と
いう値が含まれるドキュメントは、sci-fi または young adult sci-fi を検索する場合は、検索結果に含ま
れません。
複合クエリでは、term 演算子構文を使用してリテラルフィールドを検索します。("(term
field=genres 'Sci-Fi')" など)。詳細については、「複合クエリの作成 (p. 101)」を参照して
ください。
リテラルフィールドにファセットを組み合わせて使用することで、ファセット属性に基づいて結果
をドリルダウンすることができます。ファセットの詳細については、「Amazon CloudSearch でファ
セット情報を取得して使用 (p. 120)」を参照してください。
Amazon CloudSearch でのプレフィックスの検索
text、text-array、literal、および literal-array フィールドで、用語全体ではなくプレ
フィックスを検索できます。この一致の結果には、プレフィックスとその後に 0 またはいくつかの文
字が含まれます。プレフィックスとして少なくとも 1 文字を指定する必要があります。(すべてのド
キュメントを一致させるには、構造化クエリで matchall 演算子を使用します。)一般的に、大量
のドキュメントが一致することがないように、2 文字以上のプレフィックスを使用する必要がありま
す。
text または text-array フィールドを検索するときは、プレフィックスと一致する用語は、フィー
ルドのコンテンツ内のどこにあっても検出できます。リテラルフィールドを検索するときは、プレ
フィックス文字列を含むそれ以降の検索文字列全体が完全に一致する必要があります。
• simple クエリパーサー - * (アスタリスク) ワイルドカード演算子を使用してプレフィックスを検索
します (例: pre*)。
API Version 2013-01-01
106
Amazon CloudSearch 開発者ガイド
プレフィックスの検索
• 構造化クエリパーサー - prefix 演算子を使用してプレフィックスを検索します (例: prefix
'pre')。
たとえば、次のクエリでは、title フィールドで oce プレフィックスを検索し、ヒットしたタイトルを
返します。
q=oce*&q.options={fields:['title']}&return=title
この検索をサンプルの映画データに対して実行した場合、Ocean's Eleven と Ocean's Twelve が返さ
れます。
{
"status": {
"rid": "hIbIxb8oRAo6swY=",
"time-ms": 2
},
"hits": {
"found": 2,
"start": 0,
"hit": [
{
"id": "tt0240772",
"fields": {
"title": "Ocean's Eleven"
}
},
{
"id": "tt0349903",
"fields": {
"title": "Ocean's Twelve"
}
}
]
}
}
複合クエリでは、prefix 演算子を使用してプレフィックスを検索します。たとえば、title フィー
ルドで oce プレフィックスを検索するには、次のように指定します。
(prefix field=title 'oce')
詳細については、「複合クエリの作成 (p. 101)」を参照してください。
Note
テキストフィールドでワイルドカード検索を実行するときは、Amazon CloudSearch がイ
ンデックス作成中にテキストフィールドをトークン分割し、そのフィールドに設定された
分析スキームに従ってステミングが実行されることに注意してください。通常、Amazon
CloudSearch は検索クエリでも同じテキスト処理を実行します。ただし、ワイルドカード演
算子(*)または prefix 演算子を持つプレフィックスを検索するときは、プレフィックスに
対してステミングは実行されません。つまり、s で終わるプレフィックスを検索すると、単
数形の用語とは一致しないことになります。これは、複数形だけでなく末尾が s のあらゆる
用語に適用される可能性があります。たとえば、サンプル映画データの actor フィールドで
Anders を検索した場合、一致する映画が 3 つあるとします。Ander* を検索した場合、それ
API Version 2013-01-01
107
Amazon CloudSearch 開発者ガイド
数値の検索
らの映画に加えて他のいくつかの映画が一致します。一方、Anders* を検索した場合、一致
はありません。これは、用語が ander としてインデックスに格納されており、anders はイ
ンデックスにないためです。Amazon CloudSearch がテキストを処理する方法とそれが検索
に与える影響の詳細については、「Amazon CloudSearch でのテキスト処理 (p. 82)」を参照
してください。
Amazon CloudSearch での数値の検索
構造化クエリを使用して、特定の値または値の範囲 (p. 108)を見つけるために検索可能な任意の数
値フィールドを検索できます。Amazon CloudSearch は、double、double-array、int、intarray の 4 種類の数値フィールドをサポートします。詳細については、「インデックスフィールドの
設定 (p. 66)」を参照してください。
1 つの値を 1 つのフィールドで検索する基本的な構文は、FIELD:VALUE となります。たとえ
ば、year:2010 は、2010 年にリリースされた映画を見つけるためにサンプルの映画データを検索し
ます。
フィールド構文を使用するには、structured クエリパーサーを使用する必要があります。数値は引
用符で囲みません。引用符は値を文字列に指定します。値の範囲を検索するには、上限と下限を
カンマ(,)で区切り、ブラケットか中括弧で範囲を囲みます。詳細については、「値の範囲の検
索 (p. 108)」を参照してください。
複合クエリでは、term 演算子構文を使用して、1 つの値を検索します。(term field=year
2010)。
Amazon CloudSearch での日付と時刻の検索
構造化クエリを使用して、検索可能なフィールドで特定の日付と時刻、または 日時範囲 (p. 108)を
検索できます。Amazon CloudSearch では、date と date-array の 2 種類の日付フィールドをサ
ポートします。詳細については、「インデックスフィールドの設定 (p. 66)」を参照してください。
日付と時刻は、IETF RFC3339: yyyy-mm-ddTHH:mm:ss.SSSZ に従って、UTC(協定
世界時間)で指定されます。たとえば、1970 年 8 月 23 日午後 5 時は、UTC 形式では
1970-08-23T17:00:00Z となります。UTC で時間を指定するときは、小数点以下の秒数も指定でき
ます。例: 1967-01-31T23:20:50.650Z.
date フィールドで日付(または時刻)を検索するには、日付文字列を一重引用符で囲む必要がありま
す。たとえば、次のクエリはいずれも 2001 年 12 月 25 日にリリースされたすべての映画に関する映
画データを検索します。
release_date: '2001-12-25T00:00:00Z'
(term field=release_date '2001-12-25T00:00:00Z')
Amazon CloudSearch での値の範囲の検索
構造化クエリを使用して、1 つのフィールドで値の範囲を検索できます。値の範囲を指定するには、
上限と下限をカンマ(,)で区切り、ブラケットか中括弧で範囲を囲みます。角括弧 [ または ] は、そ
の境界も範囲に含まれることを示し、波括弧 { または } は、境界は除外することを示します。
たとえば、サンプルのデータセットから 2008 年から 2010 年まで(これらの年も含む)にリリースさ
れた映画を検索するには、[2008,2010] のように範囲を指定します。
API Version 2013-01-01
108
Amazon CloudSearch 開発者ガイド
日付範囲の検索
期限のない範囲を指定するには、境界を省略します。たとえば、year:[2002,} は 2002 年以降にリ
リースされたすべての映画に一致し、year:{,1970] は 1970 年までにリリースされたすべての映画
に一致します。境界を省略するときは、波括弧を使用する必要があります。
複合クエリでは、range 演算子構文を使用して値の範囲を検索します。例: (range field=year
[1967,})。
日付範囲の検索
date フィールドで日付(または時刻)の範囲を検索するには、数値に使用するのと同じ、括弧付き
の範囲構文を使用しますが、日付文字列は一重引用符で囲む必要があります。たとえば、次のリクエ
ストは、リリース日が 2013 年 1 月 1 日以降のすべての映画を見つけるために映画データを検索しま
す。
release_date:['2013-01-01T00:00:00Z',}
場所の範囲の検索
場所の範囲を検索することにより、境界ボックス検索を実行できます。latlon フィールドで場所の
範囲を検索するには、数値に使用するのと同じ、括弧付きの範囲構文を使用しますが、緯度と経度の
ペアを一重引用符で囲む必要があります。
たとえば、各ドキュメントに location フィールドを含める場合、location:
['nn.n,nn.n','nn.n,nn.n'] のように境界ボックスフィルタを指定することができます。次の例
では、restaurant の一致がフィルタされ、カリフォルニア州パソロブレス市のダウンタウンエリア内
の一致のみが結果に含まれます。
q='restaurant'&fq=location:
['35.628611,-120.694152','35.621966,-120.686706']&q.parser=structured
詳細については、「Amazon CloudSearch での地理的位置による検索および結果のランク付
け (p. 109)」を参照してください。
テキスト範囲の検索
括弧付きの範囲構文を使用すると、値の範囲を見つけるためにテキストまたはリテラルフィールドを
検索することもできます。日付と同様に、テキスト文字列は一重引用符で囲む必要があります。たと
えば、次のリクエストは、ドキュメント ID の範囲を見つけるために映画データを検索します。ドキュ
メント ID を参照するには、特別なフィールド名 _id を使用します。
_id:['tt1000000','tt1005000']
Amazon CloudSearch での地理的位置による検索
および結果のランク付け
latlon フィールドを使用してドキュメントデータに位置情報を保存する場合、Amazon CloudSearch
の式で haversin 関数を使用して 2 つの位置の距離を計算できます。ドキュメントデータと共に位置
情報を保存することによって、簡単に特定の地域内の検索を実行することもできます。
トピック
• Amazon CloudSearch での地域内の検索 (p. 110)
• Amazon CloudSearch での距離による結果のソート (p. 110)
API Version 2013-01-01
109
Amazon CloudSearch 開発者ガイド
地域内の検索
Amazon CloudSearch での地域内の検索
検索ドキュメントに位置情報を関連付けるには、10 進表記を使用して latlon フィールドに
位置の緯度と経度を保存できます。値はカンマ区切りリスト lat,lon で指定され、たとえ
ば、35.628611,-120.694152 のように指定します。ドキュメントと位置情報を関連付けることに
よって、fq パラメータを使って、簡単に検索ヒットを特定の地域に制限することができます。
境界ボックスを使用して結果を特定の地域に制限するには
1.
対象とする地域の左上隅と右下隅の緯度と経度を特定します。
2.
その境界ボックスの座標を使用して、一致するドキュメントをフィルタするには、fq パ
ラメータを使用します。たとえば、各ドキュメントに location フィールドを含める場
合、fq=location:['nn.n,nn.n','nn.n,nn.n'] のように境界ボックスフィルタを指定する
ことができます。次の例では、restaurant の一致がフィルタされ、カリフォルニア州パソロブレ
ス市のダウンタウンエリア内の一致のみが結果に含まれます。
q='restaurant'&fq=location:
['35.628611,-120.694152','35.621966,-120.686706']&q.parser=structured
Amazon CloudSearch での距離による結果のソート
検索リクエストの一部として式を定義することで、距離によって結果をソートできます。Amazon
CloudSearch の式は haversin 関数をサポートしています。この関数は、各地点の緯度と経度を使用
して、球上の 2 地点間の大圏距離を計算します。(詳細については、半正矢関数の公式を参照してく
ださい)。結果の距離は km 単位で返されます。
一致する各ドキュメントとユーザーとの距離を計算するには、ユーザーの位置情
報を haversin 関数に渡し、latlon フィールドに保存されたドキュメントの位
置情報を参照します。10 進表記でユーザーの緯度と経度を指定し、latlon に
保存された緯度と経度に、FIELD.latitude と FIELD.longitude を使ってア
クセスします。たとえば、expr.distance=haversin(userlat,userlon,
location.latitude,location.longitude) と指定します。
式を使用して検索結果をソートするには、sort パラメータを指定します。
たとえば、次のクエリは、レストランを検索し、ユーザーからの距離によって結果をソートします。
q=restaurant&expr.distance=haversin(35.621966,-120.686706,location.latitude,location.longitu
asc
明示的にソート方向(desc または asc)を指定する必要があることに注意してください。
return パラメータで式の名前を指定することよって、各ドキュメントについて計算された距離を検
索結果に含めることができます。たとえば、return=distance と指定します。
ドキュメントの関連性 _score など、他の特性を考慮するより複雑な式で距離の値を使用することも
できます。以下の例で、2 番目の rank 式では、ドキュメントの計算された distance とその関連性
_score の両方を使用します。
expr.distance=haversin(38.958687,-77.343149,latitude,longitude)&expr.myrank=_score/
log(distance)&sort=-myrank
式を使用した検索結果のソートの詳細については、「検索結果の制御 (p. 133)」を参照してくださ
い。
API Version 2013-01-01
110
Amazon CloudSearch 開発者ガイド
DynamoDB データの検索
Amazon CloudSearch を使用した DynamoDB の
検索
インデックスオプションを設定するとき、またはコンソールやコマンドラインツールを通じてデータ
を検索ドメインにアップロードするときに、DynamoDB テーブルをソースとして指定します。これに
より、検索ドメインをすばやくセットアップし、DynamoDB データベーステーブルに保存されている
データの検索を試みることができます。
検索ドメインがテーブルの変更と同期された状態を保つには、テーブルおよび検索ドメインの両方に
更新を送信するか、テーブル全体を新しい検索ドメインに定期的に読み込むことができます。
トピック
• DynamoDB データを検索するための Amazon CloudSearch ドメインの設定 (p. 111)
• DynamoDB から Amazon CloudSearch へのデータのアップロード (p. 113)
• 検索ドメインと DynamoDB テーブルの同期 (p. 115)
DynamoDB データを検索するための Amazon
CloudSearch ドメインの設定
DynamoDB データを検索するように検索ドメインを設定するには、Amazon CloudSearch コンソール
を使用するのが最も簡単です。コンソールの設定ウィザードは、テーブルデータを分析し、テーブル
内の属性に基づいて推奨されるインデックス作成オプションを表示します。推奨される設定を変更し
て、インデックスを作成するテーブル属性を制御できます。
コマンドラインツールを使用して、テーブルからドキュメントバッチを生成してドメインを自動的に
設定することもできます。または、インデックス作成オプションを手動で設定することができます。
インデックス作成オプションの設定に関する一般的な情報については、「インデックスフィールドの
設定 (p. 66)」を参照してください。
Note
DynamoDB からデータをアップロードするには、サービスとアップロードするリソースの両
方に対するアクセス許可が必要です。詳細については、「IAM を使用して DynamoDB リソー
スへのアクセスをコントロールする」を参照してください。
DynamoDB テーブルから検索ドメインを自動的に設定すると、最大 200 の一意の属性をインデックス
フィールドにマッピングできます(200 を超えるフィールドを検索ドメインに設定することはできな
いため、属性が 200 未満の DynamoDB テーブルからのみデータをアップロードできます)。Amazon
CloudSearch により、一意の値の数が少ない属性が検出されると、フィールドの推奨される設定で
ファセットが有効になります。
Important
DynamoDB テーブルを使用してドメインを設定しても、データがインデックス作成のために
ドメインに自動的にアップロードされることはありません。ドメインを設定した後、別個の
ステップとしてインデックス作成のためにデータをアップロードする必要があります。
Amazon CloudSearch コンソールを使用した DynamoDB を検
索するためのドメインの設定
DynamoDB テーブルのデータを分析して検索ドメインを設定するために、Amazon CloudSearch コン
ソールを使用できます。テーブルのサイズに関係なく、最大 5 MB が読み取られます。デフォルトで
API Version 2013-01-01
111
Amazon CloudSearch 開発者ガイド
DynamoDB データを検索するためのドメインの設定
は、Amazon CloudSearch はテーブルの先頭から読み取ります。開始キーを指定して、特定のアイテ
ムから読み取りを開始できます。
DynamoDB テーブルを使用して検索ドメインを設定するには
1.
AWS マネジメントコンソールにサインインし、Amazon CloudSearch console at https://
console.aws.amazon.com/cloudsearch/home を開きます。
2.
[Navigation] ペインで、ドメインの名前をクリックし、そのドメインの [Indexing Options] リンク
をクリックします。
3.
[Indexing Options] ペインの上部で、[configuration wizard] リンクをクリックします。
4.
[Choose Source] ステップで、[Analyze sample item(s) from DynamoDB] を選択します。
5.
[DynamoDB Table] リストから、分析する DynamoDB テーブルを選択します。
• テーブルからの読み取り時に消費可能な読み取りキャパシティーユニットを制限するには、使
用する読み取りキャパシティーユニットの最大パーセンテージを入力します。
• 特定の項目から読み取りを開始するには、[Start Hash Key] を指定します。テーブルでハッシュ
および範囲タイプのプライマリキーが指定されている場合、項目のハッシュ属性と範囲属性の
両方を指定します。
6.
テーブルオプションの指定が完了したら、[Continue] をクリックします。
7.
[Review Configuration] ステップで、推奨される設定を確認します。これらのフィールドを編集し
て、フィールドを追加できます。
8.
終了したら、[Apply Configuration] をクリックします。
9.
[Apply Configuration] ステップでは、設定ウィザードの終了時にインデックス作成を実行するよう
に選択できます。まだデータをドメインにアップロードしていない場合は、[Run Indexing Now]
チェックボックスをオフにして、インデックスを作成せずに終了します。設定の変更が終了し、
新しい設定でデータのインデックスを作成する準備ができたら、[Run Indexing Now] が選択され
ていることを確認します。変更を適用する準備が完了したら、[Finish] をクリックします。
最初にドメインを作成するときに、DynamoDB テーブルを使用してインデックスオプションを設定す
ることもできます。[Configure Index] ステップで、[Analyze sample item(s) from DynamoDB] を選択
し、分析するテーブルを選択します。
Amazon CloudSearch コマンドラインツールを使用した
DynamoDB テーブルを検索するためのドメインの設定
cs-import-documents (p. 149) コマンドと cs-configure-from-batches (p. 148) コマンドを使用する
と、DynamoDB テーブル内のデータに基づいてドメインを設定できます。
DynamoDB テーブルを使用して検索ドメインを設定するには
1.
cs-import-documents コマンドを実行し、--source オプションと --output オプションを指
定します。ソースは DynamoDB テーブルの名前です。出力は、生成されたドキュメントバッチ
を保存するローカルディレクトリまたは Amazon S3 バケットです。
cs-import-documents --source ddb://myDDBTable --output c:\myddbdata
Note
生成されたドキュメントデータは、ドメインの設定に使用する前に変更を加えることが
できます。インデックスフィールドにデータをマッピングする方法の詳細については、
「データの準備 (p. 60)」を参照してください。ドメイン設定のカスタマイズについて
は、「インデックスフィールドの設定 (p. 66)」を参照してください。
API Version 2013-01-01
112
Amazon CloudSearch 開発者ガイド
DynamoDB からのデータのアップロード
2.
cs-configure-from-batches コマンドを実行し、--domain オプションと --source オプ
ションを指定します。ドメインは、設定する検索ドメインの名前です。ソースは、ドメインの設
定に使用するドキュメントバッチを指定します。
cs-configure-from-batches --domain ddb-cs-search --source c:\myddbdata\*
DynamoDB から Amazon CloudSearch へのデータ
のアップロード
Amazon CloudSearch コンソールまたは Amazon CloudSearch コマンドラインツールを使用して、検
索ドメインに DynamoDB データをアップロードできます。DynamoDB テーブルからデータをアップ
ロードすると、インデックスを作成できるように Amazon CloudSearch によってドキュメントバッチ
に変換されます。ドメイン設定で各属性のインデックスフィールドを選択して定義します。詳細につ
いては、「DynamoDB データを検索するための Amazon CloudSearch ドメインの設定 (p. 111)」を
参照してください。
複数の DynamoDB テーブルから同じ Amazon CloudSearch ドメインにデータをアップロードできま
す。ただし、すべてのテーブルから最大 200 の属性を組み合わせてアップロードできることに注意し
てください。同じキーを持つ項目が、アップロードされた複数のテーブルに存在する場合、最後に適
用された項目により、それより前のすべてのバージョンが上書きされます。
テーブルデータをドキュメントバッチに変換すると、Amazon CloudSearch によりテーブルから読み
取られる項目ごとにドキュメントが生成され、各項目の属性がドキュメントフィールドとして表され
ます。各ドキュメントの一意の ID は、docid 項目属性(存在する場合)から読み取られるか、プラ
イマリキーに基づいて英数字値が割り当てられます。
Amazon CloudSearch により、テーブル項目のドキュメントが生成された場合:
• 文字列セットと数値セットは、多値フィールドとして表されます。DynamoDB セットに 100 個を超
える値が含まれている場合、最初の 100 個の値だけが多値フィールドに追加されます。
• DynamoDB バイナリ属性は無視されます。
• 属性名は、フィールド名の Amazon CloudSearch 命名規則に準拠するように変更されます。
• 大文字はすべて小文字に変換されます。
• DynamoDB 属性名の先頭が文字でない場合、フィールド名の先頭には f_ が付きます。
• a ~ z、0 ~ 9、_(下線)以外のすべての文字は、下線で置き換えられます。この変換の結果
フィールド名が重複する場合、フィールド名を一意にするために番号が付けられます。たとえ
ば、属性名 håt、h-t、hát はそれぞれ h_t、h_t1、h_t2 にマッピングされます。
• DynamoDB 属性名が 64 文字を超える場合、属性名の最初の 56 文字が属性名全体の 8 文字の
MD5 ハッシュで連結され、フィールド名が形成されます。
• 属性名が body の場合、フィールド名 f_body にマッピングされます。
• 属性名が _score の場合、フィールド名 f_ _score にマッピングされます。
• 数値属性は Amazon CloudSearch int フィールドにマッピングされ、値は 32 ビットの符号なし整数
に変換されます。
• 数値属性に 10 進値が含まれる場合、値の整数部だけが保存されます。小数点の右側の値はすべ
て削除されます。
• 符号なし整数として保存可能な値より値が大きい場合、値は切り捨てられます。
• 負の整数は、正の符号なし整数として扱われます。
API Version 2013-01-01
113
Amazon CloudSearch 開発者ガイド
DynamoDB からのデータのアップロード
Amazon CloudSearch コンソールを使用したドメインへの
DynamoDB データのアップロード
Amazon CloudSearch コンソールを使用して、最大 5 MB のデータを DynamoDB テーブルから検
索ドメインにアップロードできます。DynamoDB テーブルから大量のデータをアップロードするに
は、command line tools (p. 114) を使用します。
コンソールを使用して DynamoDB データをアップロードするには
1.
AWS マネジメントコンソールにサインインし、Amazon CloudSearch console at https://
console.aws.amazon.com/cloudsearch/home を開きます。
2.
[Navigation] ペインで、ドメインの名前をクリックします。
3.
ドメインのダッシュボードの上部で、[Upload Documents] をクリックします。
4.
[Document Source] ステップで、[Item(s) from DynamoDB] を選択します。
5.
[DynamoDB Table] リストで、データが含まれている DynamoDB テーブルを選択します。
• テーブルからの読み取り時に消費可能な読み取りキャパシティユニットを制限するには、読み
取りキャパシティユニットの最大パーセンテージを入力します。
• 特定の項目から読み取りを開始するには、[Start Hash Key] を指定します。テーブルでハッシュ
および範囲タイプのプライマリキーが指定されている場合、項目のハッシュ属性と範囲属性の
両方を指定します。
6.
テーブルオプションの指定が完了したら、[Continue] をクリックします。
7.
[Review Documents] ステップで、アップロードされる項目を確認します([Download the
generated document batch] をクリックして、生成されたドキュメントバッチを保存することもで
きます)。終了したら、[Upload Documents] をクリックします。
8.
[Document Summary] ステップで、[Finish] をクリックしてドキュメントのアップロードウィザー
ドを終了します。
Amazon CloudSearch コマンドラインツールを使用したドメイ
ンへの DynamoDB データのアップロード
cs-import-documents (p. 149) コマンドを使用して、DynamoDB テーブルで項目を処理およびアッ
プロードできます。
コマンドラインツールを使用して DynamoDB データをアップロードするには
•
cs-import-documents コマンドを実行し、--source オプションと --domain オプションを指
定します。ソースは、データが含まれる DynamoDB テーブルの名前です。ドメインは、データ
の検索に使用する検索ドメインの名前です。
cs-import-documents --domain ddb-cs-search --source ddb://myDDBTable
Note
--domain オプションの代わりに --output オプションを指定することで、生成された
ドキュメントバッチをローカルファイルシステムまたは Amazon S3 バケットに保存でき
ます。これにより、cs-import-documents (p. 149) コマンドを使用してアップロードす
る前にドキュメントデータを確認および変更できるようになります。
API Version 2013-01-01
114
Amazon CloudSearch 開発者ガイド
検索ドメインと DynamoDB テーブルの同期
検索ドメインと DynamoDB テーブルの同期
検索ドメインと DynamoDB テーブルの更新が同期された状態を保つには、更新をプログラムにより
追跡してドメインに適用するか、新しいドメインを定期的に作成してテーブル全体を再度アップロー
ドできます。大量のデータがある場合、プログラムにより更新を追跡して適用することをお勧めしま
す。
プログラムによる更新の同期
DynamoDB テーブルへの変更と追加を同期させるには、別個の更新テーブルを作成して検索対象の
テーブルの変更を追跡し、更新テーブルの内容を対応する検索ドメインに定期的にアップロードでき
ます。
検索ドメインからドキュメントを削除するには、削除された各ドキュメントの削除オペレーション
を含むドキュメントバッチを生成してアップロードする必要があります。1 つの方法として、別個の
DynamoDB テーブルを使用して削除された項目を追跡し、テーブルを定期的に処理して削除オペレー
ションのバッチを生成し、バッチを検索ドメインにアップロードすることができます。
初期データアップロード時に加えた変更が失われないようにするために、追跡の変更の収集は初期
データアップロードの前に開始する必要があります。一部の Amazon CloudSearch ドキュメントは同
じデータで更新できますが、変更が失われておらず、検索ドメインに各ドキュメントの最新バージョ
ンが含まれていることを確認してください。
更新を同期させる頻度は、変更の量と更新のレーテンシーの許容度によって決まります。1 つの方法
として、一定期間の変更を蓄積し、その期間の終わりに変更をアップロードして、その期間の追跡
テーブルを削除することができます。
たとえば、変更と追加項目を 1 日 1 回同期させるには、1 日の始めに updates_YYYY_MM_DD という
テーブルを作成して毎日の更新を収集できます。1 日の終わりに、updates_YYYY_MM_DD テーブル
を検索ドメインにアップロードします(更新テーブル 5 MB を超える場合、コマンドラインツールを
使用する必要があります)。アップロードが完了したら、更新テーブルを削除し、翌日の新しいテー
ブルを作成できます。
新しい検索ドメインへの切り替え
個々の更新を追跡してテーブルに適用しない場合、テーブル全体を新しい検索ドメインに定期的に読
み込み、クエリトラフィックを新しいドメインに切り替えることができます。
新しい検索ドメインに切り替えるには
1.
新しい検索ドメインを作成し、既存のドメインから設定をコピーします。
2.
DynamoDB テーブル全体を新しいドメインにアップロードします(テーブルが 5 MB を超える
場合、コマンドラインツールを使用してアップロードする必要があります)。詳細については、
「DynamoDB から Amazon CloudSearch へのデータのアップロード (p. 113)」を参照してくだ
さい。
3.
新しいドメインがアクティブになったら、新しいドメインをポイントするようクエリトラフィッ
クを古い検索ドメインに転送する DNS エントリを更新します。たとえば、Amazon Route 53 を
使用している場合、新しい検索サービスエンドポイントでレコードセットを更新するだけで済み
ます。
4.
古いドメインを削除します。
API Version 2013-01-01
115
Amazon CloudSearch 開発者ガイド
一致するドキュメントのフィルタリング
Amazon CloudSearch での一致するドキュメント
のフィルタリング
fq パラメータを使用すると、q パラメータで指定された検索条件と一致するドキュメントを、検索結
果に含まれるドキュメントの関連性スコアに影響を与えることなくフィルタできます。フィルタを指
定して、一致したドキュメントのうちどれを結果に含めるかを制御できますが、ドキュメントのスコ
アやソート順には影響しません。
fq パラメータは、「検索 API リファレンス (p. 245)」で説明されている構造化クエリ構文をサポー
トしています。
たとえば、アイテムの在庫があるかどうかを示す available フィールドをドキュメントに追加し、
そのフィールドをフィルタして、結果を在庫のあるアイテムのみに制限します。
search?q=star+wars&fq=available:'true'&return=title
Amazon CloudSearch での検索リクエストのパ
フォーマンスのチューニング
検索リクエストの処理には、大量のリソースが消費される可能性があり、検索ドメインのパフォーマ
ンスと実行コストに影響を与えることがあります。一般に、大量のヒット項目を返す検索や複雑な構
造化クエリは、検索ドメインのドキュメントが一致する割合が低い単純なテキストクエリよりも多く
のリソースを消費します。
応答時間が長く、内部サーバーエラー(507 または 509 エラーが一般的)が頻繁に発生する場合や、
検索対象のデータ量の実質的な増加はないにもかかわらず、検索ドメインが消費するインスタンス時
間数が増加している場合は、検索リクエストを微調整することで処理のオーバーヘッドを削減できま
す。このセクションでは、検索リクエストをチューニングするための注意事項とステップについて説
明します。
クエリのレイテンシー分析
リクエストをチューニングする前に、現在の検索パフォーマンスを分析する必要があります。検索リ
クエストと応答時間のログを作成し、処理に最も時間のかかるリクエストを特定します。時間のかか
る検索は、検索ドメインのリソースを拘束することで、全体的なパフォーマンスに不釣り合いな影響
を与える可能性があります。最も時間のかかる検索リクエストを最適化することで、すべての検索の
速度が上がります。
トピック
• ヒット数の削減 (p. 116)
• 構造化クエリの単純化 (p. 117)
ヒット数の削減
クエリのレイテンシーは、一致するドキュメントの数に正比例します。ほとんどのドキュメントに一
致する検索が、一般的には最も遅くなります。
一般的に多数のドキュメントに一致する結果となる 2 種類の検索を削除することで、全体的なパ
フォーマンスを劇的に改善できます。
API Version 2013-01-01
116
Amazon CloudSearch 開発者ガイド
クエリのレイテンシー分析
• コーパス内のすべてのドキュメントに一致するクエリ(matchall)。これは、ドメイン内のすべ
てのドキュメントのリストを作成するには便利な方法ですが、リソースを多用するクエリです。ド
キュメントの量が多い場合は、他のリクエストがタイムアウトする原因になるだけでなく、それ自
体もタイムアウトする可能性があります。
• 1~2 文字のみを指定したプレフィックス(ワイルドカード)検索。このタイプの検索を使用して、
ユーザーの入力として即時に結果を提供する場合、ユーザーが少なくとも 2 文字入力するのを待っ
てから、クエリを送信し、可能性のある候補を表示します。
リクエストに一致するドキュメントの数を減らすには、次の操作を行うこともできます。
• 関係のない単語は、マッチングに使用されないようにコーパスから削除します。最も簡単な方法
は、使用している分析スキーマのストップワードリストディクショナリに追加することです。ま
た、データの前処理を行って、無関係の単語を削除することができます。関係のない単語を削除す
るとインデックスのサイズが縮小されるというメリットもあり、それがコスト削減に繋がる可能性
もあります。
• fq パラメータを使用して、特定のフィールドの値に基づいて結果を明示的にフィルタします。
それでも多数のドキュメントに一致するリクエストがある場合、結果セットに対して行う処理の量を
最小化することで、レイテンシーを減らすことができます。
• リクエストするファセット情報を最小限に抑えます。ファセットカウントの生成により処理に必要
な時間が長くなり、他のリクエストがタイムアウトする可能性が高くなります。ファセット情報を
リクエストする場合、指定するファセットが多いほど、リクエストの処理時間が長くなります。
• ソートに独自の式を使用しないようにします。結果のソートに必要な処理が追加されると、リクエ
ストがタイムアウトする可能性が高くなります。結果のソート方法をカスタマイズする必要がある
場合は、一般的に式を使用するよりもフィールドを使用する方が時間はかかりません。
検索結果で大量のデータを返すと、転送時間が長くなり、クエリのレイテンシーにも影響します。返
すフィールド数を最小にすることで、パフォーマンスを改善し、インデックスのサイズを縮小するこ
とができます。
構造化クエリの単純化
クエリ条件の句の数が多いほど、クエリの処理時間が長くなります。
適切に機能しない複雑な構造化クエリがある場合は、句の数を減らす方法を見つける必要がありま
す。場合によっては、制限を設定したり、クエリを再生成できる可能性があります。その他に、より
単純なクエリに対応するためにドメイン設定を変更しなければならない場合があります。
API Version 2013-01-01
117
Amazon CloudSearch 開発者ガイド
インデックスフィールドからデータを取得
Amazon CloudSearch で検索ドメイ
ンをクエリして詳細情報を検索
検索リクエストを送信すると、Amazon CloudSearch は検索条件に一致するドキュメントのコレク
ションを返します。また、次の項目を取得できます。
• 指定されたフィールドの内容
• 結果を分類するためのファセット情報
• 数値フィールドに含まれる値の統計
• フィールドデータ内の検索ヒットを示すハイライト
• 自動入力の候補
トピック
• Amazon CloudSearch でインデックスフィールドからデータを取得 (p. 118)
• Amazon CloudSearch での数値フィールドの統計情報の取得 (p. 119)
• Amazon CloudSearch でファセット情報を取得して使用 (p. 120)
• Amazon CloudSearch で検索ヒットをハイライト (p. 127)
• Amazon CloudSearch での自動入力候補の取得 (p. 128)
Amazon CloudSearch でインデックスフィールド
からデータを取得
デフォルトでは、検索結果に戻り値として使用できるすべてのフィールドが含まれます。戻り値とし
て使用できるフィールドのサブセットを返す場合、または、一致するドキュメントの式の値を返す場
合は、return パラメータを指定できます。一致するドキュメントのドキュメント ID のみを返すに
は、return=_no_fields を指定します。各ドキュメントに対して計算された関連性スコアを取得す
るには、return=_score を指定します。複数の戻り値フィールドはカンマ区切りリストとして指定
API Version 2013-01-01
118
Amazon CloudSearch 開発者ガイド
数値フィールドの統計情報の取得
します。たとえば、return=title,_score は、一致する各ドキュメントのタイトルと関連性スコア
のみを返します。
検索結果には、戻り値として使用できることが設定されたフィールドのみを含めることができます。
フィールドを戻り値として使用可能にすると、インデックスのサイズが増加し、ドメインの実行コス
トが増加します。フィールドを戻り値として使用可能にして、検索インデックスにドキュメントデー
タを保存するのは、他の方法を使用してデータを取得するのが困難な場合、またはコストがかかる場
合のみにします。ドメイン全体にドキュメントの更新を適用するにはある程度の時間がかかるため、
価格情報などの重大なデータは、インデックスから返す代わりに、返されたドキュメント ID を使用し
て取得する必要があります。
たとえば、検索結果に title と関連性の _score を含めるには、次のように指定します。
search?q=star -wars&return=title,_score&size=3
指定したフィールドは、各ヒット項目と共に検索結果に含まれます。
{
"status" : {
"rid" : "y9Dzhs8oEwqMHnk=",
"time-ms" : 2
},
"hits" : {
"found" : 76,
"start" : 0,
"hit" : [ {
"id" : "tt1411664",
"fields" : {
"title" : "Bucky Larson: Born to Be a Star",
"_score" : "9.231539"
}
}, {
"id" : "tt1911658",
"fields" : {
"title" : "The Penguins of Madagascar",
"_score" : "7.1051397"
}
}, {
"id" : "tt0120601",
"fields" : {
"title" : "Being John Malkovich",
"_score" : "6.206055"
}
} ]
}
}
Amazon CloudSearch での数値フィールドの統計
情報の取得
Amazon CloudSearch では、ファセット対応数値フィールドについて次の統計を返すことができま
す。
• count - 指定されたフィールドに値を含むドキュメントの数。
API Version 2013-01-01
119
Amazon CloudSearch 開発者ガイド
ファセット情報の取得と使用
• max - 指定されたフィールドにある最大値。
• mean - 指定されたフィールドにある値の平均。
• min - 指定されたフィールドにある最小値。
• missing - 指定されたフィールドに値を含まないドキュメントの数。
• stddev - フィールドの値の偏差または分散量を数値化する方法。低標準偏差は、すべてのドキュ
メントの値が平均に近いことを示します。高標準偏差は、値が広い範囲に分散していることを示し
ます。標準偏差は、分散の平方根を取って計算されます。分散は、平均値からの差の自乗の平均で
す。
• sum - すべてのドキュメントのフィールドの値の合計。
• sumOfSquares - 平方されたすべてのフィールドの値の合計。
フィールドの統計を取得するには、stats.FIELD パラメーターを使用します。FIELD はファセット
対応数値フィールドの名前です。指定されたフィールドで使用できるすべての統計を取得するには、
空の JSON オブジェクト stats.FIELD={} を指定します。(stats.FIELD パラメーターはオプショ
ンをサポートしません。空の JSON オブジェクトを引き渡す必要があります。)同じリクエストで複数
のフィールドの統計をリクエストできます。
ファセット対応数値フィールド (date、date-array、double、double-array、int、
または int-array) でのみ統計を取得できます。date および date-array フィールドで
は、count、max、min および missing の統計のみが返されることに注意してください。フィールド
をファセット対応にする方法の詳細については、「インデックスフィールドの設定 (p. 66)」を参照し
てください。
たとえば、star を検索して year フィールドの統計を取得するには、次のように指定します。
search?q=star&stats.year={}
Amazon CloudSearch でファセット情報を取得し
て使用
トピック
• Amazon CloudSearch でファセット情報を取得 (p. 121)
• Amazon CloudSearch でファセット情報を使用 (p. 122)
ファセットとは、検索結果の絞り込みとフィルタ処理を行うために使用するカテゴリを表すインデッ
クスフィールドです。Amazon CloudSearch に検索リクエストを送信すると、ファセット情報をリク
エストして、特定のフィールドで同じ値を共有するドキュメントの数を調べることができます。この
情報を検索結果と共に表示して、ユーザーはそれを利用して対話的に検索結果を絞り込むことができ
ます。(これは多くの場合、ファセットナビゲーションまたはファセット検索と呼ばれます)。
検索リクエストで facet.FIELD パラメーターを指定することで、ファセット対応フィールドのファ
セット情報を取得できます。デフォルトで、Amazon CloudSearch は上位 10 個の値のファセット数
を返します。フィールドをファセット対応にする方法の詳細については、「インデックスフィールド
の設定 (p. 66)」を参照してください。facet.FIELD パラメータの説明については、検索 API リファ
レンスの「検索リクエストのパラメータ (p. 247)」を参照してください。
各フィールドのファセット値のソート方法を制御する、返されるファセット値の数を制限する、また
はカウントして返すファセット値を選択するために、ファセットオプションを指定することができま
す。
API Version 2013-01-01
120
Amazon CloudSearch 開発者ガイド
ファセット情報の取得
Amazon CloudSearch でファセット情報を取得
フィールドのファセット情報を取得するには、facet.FIELD パラメーターを使用します。FIELD は
ファセット対応フィールドの名前です。ファセットオプションは JSON オブジェクトとして指定しま
す。JSON オブジェクトが空の場合(facet.FIELD={})、ファセット数はすべてのフィールド値に
ついて計算され、ファセットはファセット数によってソートされ、上位 10 個のファセットが結果で
返されます。同じリクエストで複数のフィールドのファセット情報をリクエストできます。
ファセット情報を取得するには 2 つの方法があります。
• sort - ファセット数またはファセット値のいずれかでソートしてファセット情報を返します。
• buckets - 特定のファセット値または範囲のファセット情報を返します。
ファセット情報のソート
sort オプションを指定して、ファセット情報のソート方法を制御します。ソートオプションには
count と bucket の 2 つがあります。
• count はファセット数によってファセットをソートするために使用します。たとえ
ば、facet.year={sort:'count'} は、年の値が同じ一致の数をカウントし、その数を基準に
ファセット情報をソートします。
• bucket はファセット値によってファセットをソートするために使用します。たとえ
ば、facet.year={sort:'bucket'} と指定します。
sort オプションを使用する場合、size オプションを指定して、結果で返すファセット値の最大数を
制御できます。size オプションは、sort オプションを使用する場合にのみ有効です。
次の例では、ファセット情報が genres フィールドについて計算されます。ジャンルはファセット値
順にソートされ、最初の 5 つのジャンルが結果で返されます。
facet.genres={sort:'bucket', size:5}
ファセット情報のバケット
buckets オプションを指定して、カウントするファセット値または範囲を明示的に指定できま
す。バケットは値の配列または範囲として指定します。たとえば facet.color={buckets:
["red","green","blue"]} です。
値の範囲を指定するには、上限と下限をカンマ(,)で区切り、ブラケットか中括弧で範囲を囲みま
す。角括弧 [ または ] は、その境界も範囲に含まれることを示し、波括弧 { または } は、境界は除外
することを示します。上限または下限を省略すると、制限のない範囲を指定することができます。
境界を省略するときは、波括弧を使用する必要があります。 たとえば、facet.year={buckets:
["[1970,1979]","[1980,1989]", "[1990,1999]","[2000,2009]","[2010,}"]}。
バケットを指定した場合、sort および size オプションは無効です。
Amazon CloudSearch では、バケット数を計算する方法として filter および interval という 2 つ
のメソッドがサポートされています。デフォルトでは、filter メソッドが使用されます。これは、
単純に各バケットに追加のフィルタークエリを送信してバケット数を取得します。多くの場合はこの
方法が有効に機能しますが、これらのクエリは内部キャッシュメカニズムの利点を生かせないため、
更新が頻繁な場合や大量のファセットを取得する場合は、パフォーマンスに影響が出ることがありま
す。
バケット化されたファセットのクエリパフォーマンスが遅くなる場合は、バケットメソッドを
interval に設定して、複数のクエリを送信する代わりに検索結果のセットの後処理を試みてくださ
い。
API Version 2013-01-01
121
Amazon CloudSearch 開発者ガイド
ファセット情報の使用
facet.year={buckets:
["[1970,1979]","[1980,1989]","[1990,1999]"],method:"interval"}
パフォーマンステストを実行して、ご使用のアプリケーションに適したメソッドを決定することをお
勧めします。一般に、更新がそれほど頻繁ではなく、バケット数がそれほど多くない場合は、filter
メソッドの方が高速です。ただし、更新頻度が高い場合やバケットが大量にある場合は、interval
メソッドを使用して結果セットを後処理する方がクエリパフォーマンスの速度が大幅に向上すること
もあります。
Amazon CloudSearch でファセット情報を使用
ファセット情報を表示すると、ユーザーが検索結果をさらに簡単に参照し、興味のある情報を特定で
きるようになります。たとえば、ユーザーがスタートレックの映画の 1 つを見つけようとしている
ときに、完全なタイトルを覚えていない場合、まず star を検索する可能性があります。genre の上位
ファセットを表示する場合、クエリに facet.FIELD と、各ファセットで取得するファセット値の数
を含めます。
search?q=star&facet.genres={sort:'count',size:5}&format=xml&return=_no_fields
前の例では、検索レスポンスとして次の情報が返されます。
<results>
<status rid="v7r9hs8oFQqMHnk=" time-ms="3"/>
<hits found="85" start="0">
<hit id="tt1411664"/>
<hit id="tt1911658"/>
<hit id="tt0086190"/>
<hit id="tt0120601"/>
<hit id="tt2141761"/>
<hit id="tt1674771"/>
<hit id="tt0056687"/>
<hit id="tt0397892"/>
<hit id="tt0258153"/>
<hit id="tt0796366"/>
</hits>
<facets>
<facet name="genres">
<bucket value="Comedy" count="41"/><bucket value="Drama"
count="35"/>
<bucket value="Adventure" count="29"/>
<bucket value="Sci-Fi" count="24"/>
<bucket value="Action" count="20"/>
</facet>
</facets>
</results>
Amazon CloudSearch の複数選択ファセット
使用できるファセットを表示して、ユーザーが複数の値を選択して結果を絞り込めるようにする場合
は、1 つのリクエストを送信してファセット制約に一致するドキュメントを取得し、続いて追加のリ
クエストを送信してファセット数を取得します。
たとえば、サンプル映画データで、genres、rating、year の各フィールドはファセット対応
です。ユーザーが poet という語句を検索する場合、次のリクエストを送信して、一致する映画
と、genres、rating、year の各フィールドのファセット数を取得できます。
API Version 2013-01-01
122
Amazon CloudSearch 開発者ガイド
ファセット情報の使用
q=poet&facet.genres={}&facet.rating={}&facet.year={}&return=_no_fields
facet.FIELD オプションを指定していないため、Amazon CloudSearch はファセット値をすべてカ
ウントして、各ファセットの上位 10 個の値を返します。
{
"status" : {
"rid" : "it3T8tIoDgrUSvA=",
"time-ms" : 5
},
"hits" : {
"found" : 14,
"start" : 0,
"hit" : [
{"id" : "tt0097165"},
{"id" : "tt0059113"},
{ "id" : "tt0108174"},
{"id" : "tt1067765"},
{ "id" : "tt1311071"},
{"id" : "tt0810784"},
{"id" : "tt0819714"},
{"id" : "tt0203009"},
{"id" : "tt0114702"},
{"id" : "tt0107840"} ]
},
"facets" : {
"genres" : {
"buckets" : [
{"value" : "Drama","count" : 12},
{"value" : "Romance","count" : 9},
{"value" : "Biography", "count" : 4},
{"value" : "Comedy","count" : 2},
{"value" : "Thriller","count" : 2},
{"value" : "War","count" : 2},
{"value" : "Crime","count" : 1},
{"value" : "History","count" : 1},
{"value" : "Musical","count" : 1} ]
},
"rating" : {
"buckets" : [
{"value" : "6.3","count" : 3},
{"value" : "6.2","count" : 2},
{"value" : "7.1","count" : 2},
{"value" : "7.9","count" : 2},
{"value" : "5.3","count" : 1},
{"value" : "6.1""count" : 1},
{"value" : "6.4","count" : 1},
{"value" : "6.9","count" : 1},
{"value" : "7.6","count" : 1} ]
},
"year" : {
"buckets" : [
{"value" : "2013","count" : 3},
{"value" : "1993","count" : 2},
{"value" : "1965","count" : 1},
{"value" : "1989","count" : 1},
{"value" : "1995","count" : 1},
{"value" : "2001","count" : 1},
API Version 2013-01-01
123
Amazon CloudSearch 開発者ガイド
ファセット情報の使用
{"value"
{"value"
{"value"
{"value"
:
:
:
:
"2004","count"
"2006","count"
"2008","count"
"2009","count"
:
:
:
:
1},
1},
1},
1} ]
}
}
}
ユーザーがファセット値を選択して検索結果を絞り込むときは、ユーザーのファセット選択を使用し
て結果をフィルタします。たとえば、ユーザーが 2013、2012、1993 を選択した場合、次のリクエス
トはこれらの年に公開された一致する映画を取得します。
q=poet&fq=(or year:2013 year:2012 year:1993)&facet.genres={}&facet.rating={}
&facet.year={}&return=_no_fields
これにより、ユーザーの選択に一致するドキュメントと、フィルタが適用されたファセット数が取得
されます。
{
"status" : {
"rid" : "zMP38tIoDwrUSvA=",
"time-ms" : 6
},
"hits" : {
"found" : 6,
"start" : 0,
"hit" : [
{"id" : "tt0108174"},
{"id" : "tt1067765"},
{"id" : "tt1311071"},
{"id" : "tt0107840"},
{"id" : "tt1462411"},
{"id" : "tt0455323"} ]
},
"facets" : {
"genres" : {
"buckets" : [
{"value" : "Drama","count" : 4},
{"value" : "Romance","count" : 3},
{"value" : "Comedy","count" : 2},
{"value" : "Thriller","count" : 2},
{"value" : "Biography","count" : 1},
{"value" : "Crime","count" : 1} ]
},
"rating" : {
"buckets" : [
{"value" : "6.3","count" : 2},
{"value" : "5.3","count" : 1},
{"value" : "6.2","count" : 1},
{"value" : "6.4","count" : 1},
{"value" : "7.1","count" : 1} ]
},
"year" : {
"buckets" : [
{"value" : "2013","count" : 3},
{"value" : "1993","count" : 2},
{"value" : "2012","count" : 1} ]
API Version 2013-01-01
124
Amazon CloudSearch 開発者ガイド
ファセット情報の使用
}
}
}
これが、ジャンルとレーティングについて表示するデータです。ただし、ユーザーが年のフィルタを
変更できるようにするには、選択されていない年のファセット数も取得する必要があります。これを
行うには、2 つ目のリクエストを送信して、フィルタなしで年フィールドのファセット数を取得しま
す。
q=poet&facet.year={}&size=0
一致するドキュメントを取得する必要はありません。そのため、リクエストの遅延を最小限に抑える
ために、size パラメータはゼロに設定します。このリクエストは、year フィールドのファセット情
報だけを返します。
{
"status" : {
"rid" : "x/7r0NIoRwqlHfo=",
"time-ms" : 4
},
"hits" : {
"found" : 14,
"start" : 0,
"hit" : [ ]
},
"facets" : {
"year" : {
"buckets" : [
{"value" : "2013","count"
{"value" : "1993","count"
{"value" : "1965","count"
{"value" : "1989","count"
{"value" : "1995","count"
{"value" : "2001","count"
{"value" : "2004","count"
{"value" : "2006","count"
{"value" : "2008","count"
{"value" : "2009","count"
}
}
:
:
:
:
:
:
:
:
:
:
3},
2},
1},
1},
1},
1},
1},
1},
1},
1} ]
}
応答時間を最小限に抑えるには、フィルタされた結果を取得するリクエストと並行して、このリクエ
ストを送信します。ただし、このような追加リクエストは、クエリ全体のパフォーマンスに影響する
可能性があり、追加のトラフィックを処理可能にするためにドメインをスケールする必要が生じる場
合もあることを忘れないでください。(スケーリングの詳細については、「スケーリングオプションの
設定 (p. 41)」を参照してください。)
ユーザーがジャンルやレーティングを選択して、さらに検索結果を絞り込む場合は、それをフィ
ルタ条件に追加して、一致するドキュメントを取得します。たとえば、次のリクエストは、2013
年、2012 年、1993 年に公開され、レーティングが 6.3 の映画を取得します。
q=poet&fq=(and rating:6.3 (or year:2013 year:2012
year:1993))&facet.genres={}&return=_no_fields
このリクエストでジャンルのファセット情報を取得すると、レーティングおよび年フィルタが適用さ
れて、ファセット数が返されます。
API Version 2013-01-01
125
Amazon CloudSearch 開発者ガイド
ファセット情報の使用
{
"status" : {
"rid" : "l66b89IoEArUSvA=",
"time-ms" : 6
},
"hits" : {
"found" : 2,
"start" : 0,
"hit" : [
{"id" : "tt1462411"},
{"id" : "tt0455323"} ]
},
"facets" : {
"genres" : {
"buckets" : [
{"value" : "Drama","count" : 2} ]
}
}
}
ユーザーが別のレーティングを選択できるようにするには、追加リクエストを送信し、年のフィルタ
だけを適用して、レーティングのファセット数を取得します。
q=poet&fq=(or year:2013 year:2012 year:1993)&facet.rating={}&size=0
このリクエストは次のレスポンスを取得します。
{
"status" : {
"rid" : "jqWj89IoEQrUSvA=",
"time-ms" : 5
},
"hits" : {
"found" : 6,
"start" : 0,
"hit" : [ ]
},
"facets" : {
"rating" : {
"buckets" : [
{"value" : "6.3","count"
{"value" : "5.3","count"
{"value" : "6.2","count"
{"value" : "6.4","count"
{"value" : "7.1","count"
}
}
:
:
:
:
:
2},
1},
1},
1},
1} ]
}
同様に、レーティングのフィルタだけを適用して、年のファセット数を取得するために、もう 1 つの
リクエストが必要です。
q=poet&fq=rating:6.3&facet.year={}&size=0
このリクエストは次のレスポンスを取得します。
API Version 2013-01-01
126
Amazon CloudSearch 開発者ガイド
検索ヒットのハイライト
{
"status" : {
"rid" : "4L6F8NIoDQrUSvA=",
"time-ms" : 4
},
"hits" : {
"found" : 3,
"start" : 0,
"hit" : [ ]
},
"facets" : {
"year" : {
"buckets" : [
{"value" : "1995","count" : 1},
{"value" : "2012","count" : 1},
{"value" : "2013","count" : 1} ]
}
}
}
Amazon CloudSearch で検索ヒットをハイライト
Amazon CloudSearch では、検索結果と共に抜粋を返して、一致するドキュメントの特定のフィー
ルド内のどこに検索用語が出現しているかを示すことができます。たとえば、次の抜粋では、luke
skywalker という検索用語が plot フィールド内でハイライト表示されています。
highlights": {
"plot": "After the rebels have been brutally overpowered by the Empire on
their newly established base, *Luke* *Skywalker* takes advanced Jedi
training with Master Yoda, while his friends are pursued by Darth Vader
as part of his plan to capture *Luke*."
}
フレーズ検索の場合、一致するドキュメントはそのフレーズを含む必要があります。しかし、ハイ
ライトを取得すると、フレーズ内の用語が個別にハイライト表示されます。"Luke Skywalker" と
いうフレーズを検索して、先の例のように plot フィールドのハイライトを取得する場合、後ろに
Skywalker という用語がなくても Luke という用語がハイライト表示されます。ハイライトは、
フィールドの最初の 10 KB のデータについてのみ返されます。フィールドが 10 KB 以上のデータを含
み、10 KB の上限を超えた位置に検索用語が出現する場合、ハイライト処理はされません。
検索リクエストで highlight.FIELD パラメータを指定することで、任意のハイライト対応フィール
ドのハイライトを取得できます。たとえば、plot フィールドのハイライトを取得するには、次のよう
に指定します。
search?q=star wars&highlight.plot={}
フィールドをハイライト対応にする方法の詳細については、「インデックスフィールドの設
定 (p. 66)」を参照してください。
抜粋内に出現する検索用語のハイライト回数、ハイライト方法、抜粋をプレーンテキスト形式または
HTML 形式として返すかどうかを制御できます。抜粋を HTML として返すときは、アルファベット以
外の文字は HTML のエンティティエンコーディングを使用してエスケープされます。フィールドには
ユーザーが生成したコンテンツが最初に入力されている場合があるため、こうすることで、信頼され
ない HTML コンテンツの埋め込みに関連するリスクを最小限に抑えられます。
API Version 2013-01-01
127
Amazon CloudSearch 開発者ガイド
候補の取得
ハイライトのオプションは JSON オブジェクトとして指定します。JSON オブジェクトが空である場
合(highlight.FIELD={})、Amazon CloudSearch は検索用語のすべての出現を HTML の強調タ
グで囲む(<em>term</em>)ことでハイライトし、抜粋は HTML として返されます。
• 抜粋を text または html のどちらで返すか指定するには、format オプションを使用します。たと
えば、highlight.plot={format:'text'} と指定します。
• 出現した検索用語をハイライトする最大回数を指定するには、max_phrases オプションを使用し
ます。たとえば、highlight.plot={max_phrases:3} と指定します。デフォルトは1、最大値は
5です
• ハイライトする用語の前に追加する文字列を指定するには、pre_tag オプションを使用します。
たとえば、highlight.plot={pre_tag:'<strong>', post_tag:'</strong>'} と指定しま
す。
• ハイライトする用語の後に追加する文字列を指定するには、post_tag オプションを使用します。
たとえば、highlight.plot={pre_tag:'<strong>', post_tag:'</strong>'} と指定しま
す。
Amazon CloudSearch での自動入力候補の取得
このセクションでは、候補を取得できるようにサジェスタを設定する方法について説明します。候補
は、不完全な検索クエリと一致する可能性のある要素です。これにより、ユーザーがクエリの入力を
終了する前に、可能な候補を表示することができます。Amazon CloudSearch では、候補は特定のテ
キストフィールドのコンテンツに基づいています。候補をリクエストすると、Amazon CloudSearch
はサジェスタフィールドの値が指定されたクエリ文字列で始まるすべてのドキュメントを見つけま
す。一致と見なされるためには、フィールドの先頭がクエリ文字列と一致している必要があります。
返されるデータには、各一致に対するフィールド値とドキュメント ID が含まれます。サジェスタは、
クエリ文字列との完全一致を見つけるように設定することも、誤字や脱字を修正できるように文字列
との近似一致(あいまい一致)を実行するように設定することもできます。
suggest API の詳細については、「検索 API リファレンス (p. 245)」の「候補 (p. 262)」を参照し
てください。
トピック
• Amazon CloudSearch のサジェスタの設定 (p. 128)
• Amazon CloudSearch での候補の取得 (p. 131)
Amazon CloudSearch のサジェスタの設定
サジェスタを設定するには、一致候補を検索するテキストフィールドの名前と、サジェスタの一意の
名前を指定する必要があります。候補を使用するフィールドは、値を返すように設定されている必要
があります。フィールド内のデータの先頭から 512 バイトだけが候補の生成に使用されます。
サジェスタの名前は、3 文字以上、64 文字以内で、先頭は英字にする必要があります。使用できる
文字は、a~z(小文字)、0~9、_(下線)です。サジェスタ名は、候補を取得するときにクエリ文
字列で指定されるため、短い名前を使用することをお勧めします。score という名前は予約済みのた
め、サジェスタ名として使用できません。
サジェスタは、次の 2 つのオプションもサポートしています。
• FuzzyMatching - 文字列の一致候補を示すときに使用するあいまいさのレベルを、なし、低、高に
設定できます。none の場合、指定された文字列は正確なプレフィックスとして処理されます。low
の場合、候補は指定された文字列との異なる箇所が 1 文字以内である必要があります。high の場
合、候補は 2 文字まで異なることができます。デフォルトは none です。
• SortExpression - 候補のソート方法を制御するためにそれぞれのスコアを計算する式を設定しま
す。スコアは最も近い整数に丸められ、下限が 0 で上限が 2^31-1 です。ドキュメントの関連性ス
API Version 2013-01-01
128
Amazon CloudSearch 開発者ガイド
サジェスタの設定
コアは提案には計算されていないため、ソート式は _score 値を参照することはできません。数値
フィールドまたは既存の式を使用して候補をソートするには、フィールドまたは式の名前を指定し
ます。サジェスタ用の式が設定されていない場合、最も一致している候補から順に並べられます。
サジェスタ内に定義される式は、検索リクエストやその他の式で参照することはできません。式を
他の目的に使用する必要がある場合は、式をドメイン設定に追加し、サジェスタから名前で参照し
てください。式の詳細については、「式の設定 (p. 134)」を参照してください。
複数のテキストフィールドから候補を取得する必要がある場合は、フィールドごとにサジェスタを定
義し、それぞれの候補リクエストを送信して、各サジェスタから一致を取得します。最大 10 個のサ
ジェスタを設定できます。
サジェスタを最も簡単に定義できるのは、Amazon CloudSearch コンソールの [Suggesters] ページを
使用する方法です。また、AWS SDK か AWS CLI を使用してサジェスタを定義することもできます。
Important
検索ドメインにサジェスタを追加したら、これを使用して候補を取得する前に、インデック
ス作成を実行する必要があります。ドキュメントは追加や削除されるため、定期的にイン
デックスを再構築して提案を更新する必要があります。IndexDocuments を呼び出すまで
は、追加または削除されたドキュメントは提案に反映されません。
Amazon CloudSearch コンソールからのサジェスタの設定
Amazon CloudSearch コンソールから、簡単にサジェスタの追加、更新、削除を行うことができま
す。
サジェスタを追加するには
1.
AWS マネジメントコンソールにサインインし、Amazon CloudSearch console at https://
console.aws.amazon.com/cloudsearch/home を開きます。
2.
ナビゲーションペインで、ドメインの名前をクリックし、そのドメインの [Suggesters] リンクを
クリックします。
3.
[Suggesters] ペインで、[Add a New Suggester] ボタンをクリックします。このボタンは、ドメイ
ンに対して設定されたサジェスタリストの下にあります。
4.
[Name] フィールドに新しいサジェスタの名前を入力します。
5.
[Source] フィールドに、候補を使用するテキストフィールドを指定します。
6.
マイナーな誤字や脱字を修正するための候補を含める場合は、[Fuzzy Matching] オプションを low
または high に設定します。low に設定すると、ユーザーのクエリ文字列と 1 文字だけ異なる用語
が候補に含まれます。high に設定すると、最大 2 文字異なる用語が候補に含まれます。
7.
候補をソートする方法を制御する場合は、[Sort Expression] フィールドに数式を入力します。式
には、単純に候補をソートするために使用する数値フィールド、既存の式の名前、または任意の
有効な式を使用できます。式の詳細については、「式の設定 (p. 134)」を参照してください。
8.
[Submit] をクリックして変更を保存します。
9.
検索ドメインの候補の設定が終了したら、サジェスタを使用する前に、ドメインのインデックス
を作り直す必要があります。インデックス作成を実行するには、ドメインのダッシュボードに移
動し、ドメインダッシュボードの [Run Indexing] ボタンをクリックします。
サジェスタを更新するには
1.
AWS マネジメントコンソールにサインインし、Amazon CloudSearch console at https://
console.aws.amazon.com/cloudsearch/home を開きます。
2.
[Navigation] ペインで、ドメインの名前をクリックし、そのドメインの [Suggesters] リンクをク
リックします。
API Version 2013-01-01
129
Amazon CloudSearch 開発者ガイド
サジェスタの設定
3.
[Suggesters] ペインで、サジェスタの設定を変更します。
4.
[Submit] をクリックして変更を保存します。
サジェスタを削除するには
1.
AWS マネジメントコンソールにサインインし、Amazon CloudSearch console at https://
console.aws.amazon.com/cloudsearch/home を開きます。
2.
[Navigation] ペインで、ドメインの名前をクリックし、そのドメインの [Suggesters] リンクをク
リックします。
3.
[Suggesters] ペインで、削除するサジェスタに対応する [Delete this Suggester] リンクをクリック
します。
4.
[Submit] をクリックして変更を保存します。
AWS CLI でのサジェスタの設定
aws cloudsearch define-suggester コマンドを使用して、サジェスタを追加または更新するこ
とができます。サジェスタを削除するには、aws cloudsearch delete-suggester を使用しま
す。
サジェスタを追加または更新するには
•
aws cloudsearch define-suggester コマンドを実行します。--suggester オプションを
使用して、JSON にサジェスタの設定を指定します。サジェスタの設定は引用符で囲み、設定内
のすべての引用符はバックスラッシュでエスケープする必要があります。サジェスタ設定の形式
については、『AWS Command Line Interface Reference』の 「define-suggester」を参照してく
ださい。たとえば、次のコマンドは、mysuggester というサジェスタに title に基づいた候補
を返すように設定します。
aws cloudsearch define-suggester --domain-name movies --suggester
"{\"SuggesterName\": \"mysuggester\", \"DocumentSuggesterOptions\":
{\"SourceField\":\"title\"}}"
{
"Suggester": {
"Status": {
"PendingDeletion": false,
"State": "RequiresIndexDocuments",
"CreationDate": "2014-06-26T17:26:43Z",
"UpdateVersion": 27,
"UpdateDate": "2014-06-26T17:26:43Z"
},
"Options": {
"DocumentSuggesterOptions": {
"SourceField": "title"
},
"SuggesterName": "mysuggester"
}
}
}
--fuzzy-matching オプションを使用して、マイナーな誤字や脱字を修正する候補を含める
ことができます。あいまい一致の有効な値は none、low、および high です。(デフォルトは
none です。)low に設定すると、ユーザーのクエリ文字列と 1 文字だけ異なる用語が候補に含
まれます。high に設定すると、最大 2 文字異なる用語が候補に含まれます。たとえば、次のコ
マンドは、ユーザーのクエリ文字列と 1 文字だけ異なる候補を含めるように mysuggester を設
定します。
API Version 2013-01-01
130
Amazon CloudSearch 開発者ガイド
候補の取得
aws cloudsearch --name mysuggester --source title
--fuzzy-matching low
--sort-expression オプションを使用すると、返される候補のソート方法を制御することがで
きます。ソートには任意の有効な式を使用できます。(通常、ここには、数値フィールドの名前
や定義済みの式を指定します。) たとえば、mysuggester によって返される候補を year フィー
ルドの値でソートするには、次のように指定します。
aws cloudsearch define-suggester --name mysuggester --source title
--fuzzy-matching low --sort-expression year
サジェスタを削除するには
•
aws cloudsearch delete-suggester コマンドを実行し、--name オプションを指定しま
す。たとえば、mysuggester を削除するには、次のように指定します。
aws cloudsearch delete-suggester --name mysuggester --delete
AWS SDK を使用したサジェスタの設定
AWS SDK では(Android および iOS SDK を除く)、DefineSuggester (p. 167) も含め
て、Amazon CloudSearch 設定 API で定義されたすべての Amazon CloudSearch アクションがサポー
トされています。AWS SDK のインストールと使用の詳細については、「AWS Software Development
Kits」を参照してください。
Amazon CloudSearch での候補の取得
HTTP GET を介してドメインの検索エンドポイントの suggest リソースにリクエストを送信するこ
とにより、候補を取得します。以下に例を示します。
http://search-movies-rr2f34ofg56xneuemujamut52i.us-east-1.cloudsearch.
amazonaws.com/2013-01-01/suggest?q=kat&suggester=mysuggester
リクエストには、API バージョンを指定して、クエリ文字列を URL エンコードする必要があります。
候補リクエストの最大サイズは、HTTP メソッド、URI、プロトコルのバージョンを含め 8190 バイト
です。
suggest リソースは、次の 4 つのパラメータをサポートします。
• q - 候補を取得する文字列。
• suggester - 使用するサジェスタの名前。
• size - 取得する候補の数。デフォルトでは、上位 10 件の候補が返されます。(候補は、サジェス
タに定義されたソート式に従ってソートされます。サジェスタにソート式が定義されていない場
合、最も一致している候補から順に並べられます。)
• format - レスポンスのコンテンツタイプで、json または xml。デフォルトでは、候補は JSON 形
式で返されます。
q および suggester パラメータは必ず指定しなければなりません。空の文字列に対する候補をリク
エストした場合、候補は返されません。size および format パラメータはオプションです。
以下の例では、title フィールドのコンテンツに基づいて、文字列 oce の候補を取得します。
API Version 2013-01-01
131
Amazon CloudSearch 開発者ガイド
候補の取得
http://search-imdb-hd6ebyouhw2lczkueyuqksnuzu.uswest-2.cloudsearch.amazonaws.com/2013-01-01/suggest d"q=oce&suggester=suggest_title"
{"status":{"rid":"646f5s0oDAr8pVk=","time-ms":2},
"suggest":{
"query":"oce",
"found":3,
"suggestions":[
{"suggestion":"Ocean's Eleven","score":0,"id":"tt0054135"},
{"suggestion":"Ocean's Thirteen","score":0,"id":"tt0496806"},
{"suggestion":"Ocean's Twelve","score":0,"id":"tt0349903"}
]
}
}
API Version 2013-01-01
132
Amazon CloudSearch 開発者ガイド
結果の並べ替え
Amazon CloudSearch で返される検
索結果の制御
検索リクエストでパラメータを指定して、検索結果のソート方法を制御し、JSON 形式ではなく XML
形式で結果を返し、結果セットをページ分割することができます。検索制約の指定や結果のソートに
使用できるカスタム値を計算する式を定義できます。
トピック
• Amazon CloudSearch での結果のソート (p. 133)
• フィールドの相対的重み付けを利用した Amazon CloudSearch の関連性ランキングのカスタマイ
ズ (p. 134)
• Amazon CloudSearch での式の設定 (p. 134)
• Amazon CloudSearch で結果を XML 形式で取得 (p. 139)
• Amazon CloudSearch の結果のページ分割 (p. 139)
Amazon CloudSearch での結果のソート
デフォルトでは、検索結果は検索リクエストとの関連性に基づいてソートされます。ドキュメントの
関連性スコア(_score)は、検索用語がドメインのすべてのドキュメントに出現する頻度と、そのド
キュメントに出現する頻度を比較した結果に基づいて計算されます。関連性スコアは、データおよび
クエリによって大きく異なる正の値です。クエリの各句のスコアは加算されるため、句の数が多いほ
ど、句の数が 1 つまたは 2 つのクエリよりも当然高いスコアになります。一般的なクエリがどのよう
な結果になるかわかっている場合は、テストクエリを実行して、実際のスコアの範囲がどのようにな
るか確認することができます。
検索結果のソート方法を変更するには、以下の方法があります。
• text または literal フィールドを使用して、結果をアルファベット順にソートします。Amazon
CloudSearch では Unicode コードポイントでソートされるため、数字が文字の前に、大文字が小文
字の前に来ることに注意してください。数は値ではなく文字列としてソートされ、たとえば 10 は 2
の前に来ます。
• int または double フィールドを使用して、結果を数値順にソートします。
• date フィールドを使用して、結果を日付順にソートします。
• カスタム式を使用して、結果をソートします。
フィールドを使用して検索結果をソートするには、そのフィールドを SortEnabled に設定する必要
があります。SortEnabled にできるのは単一値フィールドのみです。配列型のフィールドをソート
API Version 2013-01-01
133
Amazon CloudSearch 開発者ガイド
フィールドの相対的重み付けを利用
したテキストの関連性のカスタマイズ
時に使用することはできません。フィールドの設定の詳細については、「インデックスフィールドの
設定 (p. 66)」を参照してください。
ソート時に式を使用するには、int フィールド、その他の式、ドキュメントの関連性スコア、数値演
算子および数値関数を使用して、数式を作成します。式は、ドメイン設定または検索リクエスト内で
定義できます。式の設定の詳細については、「式の設定 (p. 134)」を参照してください。
結果のソートに使用するフィールドまたは式を指定するには、sort パラメータを使用します。フィー
ルドまたは式の名前と共に、明示的にソート方向を指定する必要があります。例えば、sort=year
asc、sort=year desc などです。
ソートにフィールドを使用するとき、値がないドキュメントは最後に表示されます。フィールドまた
は式のカンマ区切りリストを指定する場合は、最初のフィールドまたは式はプライマリソート条件と
して使用され、2 番目はセカンダリソート条件として使用され、以降も同様です。
sort パラメータを指定しなかった場合、検索結果は、ドキュメントのデフォルトの関連性スコアを
使用してランク付けされ、スコアの高いドキュメントから順に表示されます。これは sort=_score
desc を指定した場合と同等です。
q.options パラメータを使用して、ドキュメントの関連性 _score を計算する際にフィールドに適用
する重みを指定できます。詳細については、「フィールドの相対的重み付けを利用したテキストの関
連性のカスタマイズ (p. 134)」を参照してください。
フィールドの相対的重み付けを利用した Amazon
CloudSearch の関連性ランキングのカスタマイズ
選択したフィールドに重みを付けて、title フィールドなどのキーフィールドが一致した場合にド
キュメントの関連性 _score を高くし、重要性の低いフィールドが一致した場合の影響を最小限に抑
えることができます。デフォルトでは、すべてのフィールドの重みは 1 です。
フィールドの重みは、q.options の fields オプションで設定します。フィールドは文字列の配列と
して指定します。フィールドの重みを設定するには、フィールド名に続けてキャレット(^)と正の数
値を指定します。フィールドの重みをゼロに設定することはできません。数学関数または数式を使用
してフィールドの重みを定義することもできません。
たとえば、title フィールドが一致したときのスコアを plot フィールドが一致したときよりも高く
する場合、次のように title フィールドの重みを 2、plot フィールドの重みを 0.5 に設定すること
ができます。
q.options={fields:['title^2','plot^0.5']}
フィールドの重みの制御に加えて、fields オプションは、simple クエリパーサーを使用している場
合、または構造化クエリパーサーを使っているときに複合式の一部としてフィールドを指定していな
い場合に、デフォルトで検索するフィールドセットも定義します。詳細は、『検索 API リファレン
ス』の「検索リクエストのパラメータ (p. 247)」を参照してください。
式の定義時に重み付けされた関連性スコアを参照するには、_score を使用します。重み付けされた
_score 値は、数値フィールド、その他の式、標準の数値演算子および数値関数と組み合わせて使用
できます。詳細については、「式の設定 (p. 134)」を参照してください。
Amazon CloudSearch での式の設定
数値式を定義し、検索結果の並べ替えに使用できます。式は検索結果内に返すこともできます。ドメ
イン設定に式を追加したり、検索リクエストで式を定義したりできます。
API Version 2013-01-01
134
Amazon CloudSearch 開発者ガイド
式の記述
トピック
• Amazon CloudSearch の式の記述 (p. 135)
• 検索リクエスト内での Amazon CloudSearch 式の定義 (p. 136)
• Amazon CloudSearch 内の検索ドメインに対する再利用可能な式の設定 (p. 137)
• Amazon CloudSearch での式の比較 (p. 138)
Amazon CloudSearch の式の記述
Amazon CloudSearch の式は以下で構成される可能性があります。
• 1 つの値が含まれるソート可能な数値フィールド(int、double、date). (特定のフィールドを指
定する必要があります。ワイルドカードはサポートされていません。)
• その他の式
• ドキュメントの関連性スコアを参照する _score 変数
• 現在のエポック時間を参照する _time 変数
• ランダムに生成された値を返す _rand 変数
• 整数、浮動小数点、16 進数、8 進数のリテラル
• 算術演算子: + - * / %
• ビット演算子: | & ^ ~ << >> >>>
• ブール演算子(三項演算子を含む): && || ! ?:
• 比較演算子: < <= == >= >
• 数学関数: abs ceil exp floor ln log10 logn max min pow sqrt pow
• 三角関数: acos acosh asin asinh atan atan2 atanh cos cosh sin sinh tanh tan
• haversin 距離関数
JavaScript の優先順位ルール が演算子に適用されます。演算子の優先順位は括弧を使用することで変
更できます。
論理式の評価にはショートカット評価が使用されます。つまり、式の値が最初の引数の評価後に決
定できる場合、2 番目の引数は評価されません。たとえば、式 a || b で b が評価されるのは、a が
true でない場合のみです。
式は常に、0 から符号付き 64 ビット整数最大値(2^63 - 1)までの整数値を返します。中間結果は倍
精度浮動小数点値として計算され、戻り値は最も近い整数に丸められます。式は、無効であるか負の
値に評価された場合は、0 を返します。式は、最大値よりも大きい値に評価された場合は、最大値を
返します。
式名は、3 文字以上、64 文字以内で、先頭は英字にする必要があります。a ~ z(小文字)、0 ~
9、_(アンダースコア)の文字を使用できます。score という名前は予約済みのため、式名として使
用できません。
たとえば、ドメイン用に popularity という名前の int フィールドを定義した場合は、そのフィールド
とデフォルトの関連性 _score を組み合わせてカスタム式を作成できます。
(0.3*popularity)+(0.7*_score)
この簡単な例では、使用頻度ランクと関連性 _score の値がほぼ同じ範囲内にあることを想定していま
す。結果をランク付ける式をチューニングするには、式の構成要素に付ける重みをテストして、必要
な結果が得られる重みを決定する必要があります。
API Version 2013-01-01
135
Amazon CloudSearch 開発者ガイド
検索リクエスト内での式の定義
Amazon CloudSearch 式での日付型フィールドの使用
date フィールドの値は、ミリ秒単位でエポック時刻として保存されます。つまり、ドキュメントに保
存された日付と現在のエポック時刻 (_time) を使用した式を構築するために算術演算子と比較演算子
を使用できるということです。たとえば、以下の式を使用して movies ドメインの検索結果をソート
すると、リリース日が最近の映画がリストの先頭に来ます。
_score/(_time - release_date)
検索リクエスト内での Amazon CloudSearch 式の定
義
結果のソートに使用する式を細かくチューニングしながら、すばやく反復処理できるように、検索リ
クエスト内で直接、式を定義して使用できます。また、検索リクエスト内で式を定義することで、
ユーザーの位置情報などのコンテキスト情報を式に組み込むこともできます。ドメイン設定で定義さ
れた式を上書きするために、検索リクエスト内で同じ名前の式を定義することもできます。
検索リクエスト内で式を定義すると、その式はドメイン設定の一部として保存されません。その式を
他のリクエスト内でも使用する場合は、各リクエストで定義するか、ドメイン設定に追加する必要が
あります。式をドメイン設定に追加せずに、各リクエストに定義すると、リクエストのオーバーヘッ
ドが増加し、その結果として応答時間が遅くなり、ドメインの運用コストが増える可能性がありま
す。ドメイン設定に式を追加する方法については、「式の設定 (p. 134)」を参照してください。
検索リクエストで複数の式を定義して使用することができます。式の定義では、ドメイン設定の一部
として設定された式だけでなく、リクエストに定義された他の式も参照できます。
検索リクエストで定義する式の使用方法に制限はありません。式を使用することで、検索結果をソー
トしたり、他の式を定義したり、検索結果内に計算後の情報を返したりできます。
検索リクエスト内で式を定義するには
1.
expr.NAME パラメーターを使用します。ここで、NAME は定義する式の名前です。以下に例を
示します。
expr.rank1=log10(clicks)*_score
2.
式を使用して結果をソートするには、sort パラメーターで式の名前を指定します。
search?q=terminator&expr.rank1=log10(clicks)*_score&sort=rank1 desc
3.
検索結果内に計算後の値を返すには、return フィールドのリストに式を追加します。
search?q=terminator&expr.rank1=log10(clicks)*_score&sort=rank1
desc&return=rank1
たとえば、以下のリクエストは結果のソートに使用される 2 つの式を作成し、検索結果にそのうちの
1 つを返します。
search?
q=terminator&expr.rank1=sin( _score)&expression.rank2=cos( _score)&sort=rank1
desc,rank2 desc&return=title,_score,rank2
API Version 2013-01-01
136
Amazon CloudSearch 開発者ガイド
再利用可能な式の設定
Amazon CloudSearch 内の検索ドメインに対する再
利用可能な式の設定
トピック
• Amazon CloudSearch コンソールを使用した式の設定 (p. 137)
• AWS CLI を使用した Amazon CloudSearch 式の設定 (p. 137)
• Amazon CloudSearch Configuration API を使用した式の設定 (p. 138)
ドメインの設定で式を定義すると、その式は任意の検索リクエストで参照できます。ドメイン設定に
式を追加すると、リクエストごとにその式を指定するオーバーヘッドが減少し、その結果として応答
時間が最速になり、コストが最小になる可能性があります。
ドメイン設定に式を追加すると、その変更が処理されて新しい式がアクティブになるまでに、し
ばらく時間がかかります。式への変更をすばやくテストするには、「検索リクエスト内での式の定
義 (p. 136)」で説明するように、検索リクエスト内でで直接式を定義して使用できます。式をテスト
してチューニングした後、ドメイン設定に追加する必要があります。
Amazon CloudSearch コンソールを使用した式の設定
式を設定するには
1.
AWS マネジメントコンソールにサインインし、Amazon CloudSearch console at https://
console.aws.amazon.com/cloudsearch/home を開きます。
2.
[Navigation] ペインで、ドメインの名前をクリックし、ドメインの [Expressions] リンクをクリッ
クします。
3.
[Expressions] ペインで、[Add a New Expression] ボタンをクリックします。このボタンは、ドメ
イン用に設定した式のリストの下にあります。
4.
[Name] フィールドに新しい式の名前を入力します。
5.
検索時に評価する必要がある数式を [Expression] フィールドに入力します。[insert...] メニューを
使用して特殊な値、数学関数、三角関数を挿入できます。
6.
[Add a New Expression] をクリックして追加の式を設定します。
7.
[Submit] をクリックして変更を保存します。
AWS CLI を使用した Amazon CloudSearch 式の設定
aws cloudsearch configure-expressions コマンドを使用してドメイン用に計算式を定義しま
す。
式を設定するには
•
aws cloudsearch define-expression コマンドを実行して新しい式を定義します。--name
オプションを使用して式の名前を指定し、--expression オプションを使用して評価する数式を
指定します。たとえば以下のリクエストは、ドキュメントの popularity と関連性 _score を考
慮に入れた popularhits という名前の式を作成します。
aws cloudsearch define-expression --domain-name movies --name popularhits
--expression '((0.3*popularity)/10.0)+(0.7* _score)'
{
"Expression": {
"Status": {
"PendingDeletion": false,
API Version 2013-01-01
137
Amazon CloudSearch 開発者ガイド
式の比較
"State": "Processing",
"CreationDate": "2014-05-01T01:15:18Z",
"UpdateVersion": 52,
"UpdateDate": "2014-05-01T01:15:18Z"
},
"Options": {
"ExpressionName": "popularhits",
"ExpressionValue": "((0.3*popularity)/10.0)+(0.7* _score)"
}
}
}
Amazon CloudSearch Configuration API を使用した式の設定
AWS SDK では(Android および iOS SDK を除く)、DefineExpression (p. 163) も含め
て、Amazon CloudSearch 設定 API で定義されたすべての Amazon CloudSearch アクションがサポー
トされています。AWS SDK のインストールと使用の詳細については、「AWS Software Development
Kits」を参照してください。
Amazon CloudSearch での式の比較
Amazon CloudSearch コンソールを使用して式を比較し、式やフィールドの重みの変更が検索結果の
ソート方法にどのような影響を与えるかを確認します。
式を比較するには
1.
AWS マネジメントコンソールにサインインし、Amazon CloudSearch console at https://
console.aws.amazon.com/cloudsearch/home を開きます。
2.
3.
[Navigation] ペインで、ドメインを選択し、[Compare Expressions] リンクをクリックします。
[Compare Expressions] ペインで、比較するランク式を指定します。式エディターでそれぞれ、
新しい式を追加したり、[Expressions] メニューから既存の式を選択したりできます。新しい式は
検索リクエストの送信時に検証されます。エラーが検出された場合、式は赤で強調表示され、問
題の説明が表示されます。
[Field Weights] メニューのスライダーを調整することで、各式で使用するフィールドの重みを指
定します。式で直接、フィールドの重みを編集することもできます。フィールドの重みは 0.0 ~
10.0 の範囲内で指定する必要があります。デフォルトで、すべてのフィールドの重みは 1.0 に
設定されています。個々のフィールドの重みを設定することで、特定のテキストまたはリテラル
のフィールドの一致がドキュメントの relevance _score に与える影響を制御できます。また、デ
フォルトの重みを変更することもできます。
4.
Note
5.
フィールドの重みを調整すると、式が _score の値を参照する場合にのみ、結果のラン
ク付けに影響を与えます。式を変更して、重みの関連性 _score がドキュメント全体の
ランク付けに与える影響を変えることができます。詳細については、「フィールドの相
対的重み付けを利用したテキストの関連性のカスタマイズ (p. 134)」を参照してくださ
い。
検索する用語を [Search] フィールドに入力し、[GO] をクリックします。検索結果は、指定した
式と重みを使用してランク付けされます。式または重みを変更するたびに結果が更新されます。
2 つの式の検索結果は並べて表示されます(式が空白の場合、結果はデフォルトの関連性 _score
に従ってソートされます)。以下の 4 つのアイコンによって違いが強調表示されます。
緑の上矢印
ドキュメントは、2 番目の式を使用した検索結果で上位にランク付けされています。
API Version 2013-01-01
138
Amazon CloudSearch 開発者ガイド
XML 形式で結果を取得
赤の下矢印
ドキュメントは、2 番目の式を使用した検索結果で下位にランク付けされています。
黄色のプラス記号
ドキュメントは、2 番目の式を使用した検索結果に含まれていますが、最初の式を使用した
検索結果からは除外されました。
赤のマイナス記号
ドキュメントは、2 番目の式を使用した検索結果からは除外されましたが、最初の式を使用
した検索結果には含まれています。
Note
式は [Compare Expressions] ペインから直接、ドメイン設定に保存できます。式のいずれかを
保存するには、[Expressions] メニューの [Save Expression] を選択し、式の名前を入力して、
[OK] をクリックします。
Amazon CloudSearch で結果を XML 形式で取得
デフォルトでは、Amazon CloudSearch の検索レスポンスは JSON 形式です。XML 形式で結果を取得
するには、検索リクエストでクエリパラメータ format=xml を指定します。
search?q=star wars&return=_no_fields&format=xml
XML 形式の検索レスポンスは JSON 形式のレスポンスと正確に同じ情報を含みます。
<results>
<status rid="3abhhs8oEAqMHnk=" time-ms="2"/>
<hits found="9" start="0">
<hit id="tt0076759"/>
<hit id="tt0086190"/>
<hit id="tt0121766"/>
<hit id="tt2488496"/>
<hit id="tt1408101"/>
<hit id="tt0489049"/>
<hit id="tt0120915"/>
<hit id="tt0080684"/>
<hit id="tt0121765"/>
</hits>
</results>
検索リクエストの JSON および XML レスポンス形式に関する詳細については、「検索レスポン
ス (p. 258)」を参照してください。
Amazon CloudSearch の結果のページ分割
デフォルトで、Amazon CloudSearch は指定されたソート順に従って上位 10 件のヒット項目を返し
ます。結果セットで返されるヒット項目の数を制御するには、size パラメータを使用します。
特定のオフセットから始まる次のヒットセットを取得するには、start パラメータを使用します。
結果セットはゼロ起点で、最初の項目のインデックスは 0 であることに注意してください。最初
API Version 2013-01-01
139
Amazon CloudSearch 開発者ガイド
10,000 件を超えるディープページ分割
の 10,000 件のヒット項目は、size および start パラメータを使用して取得できます。10,000 件
を超えるヒット項目をページ分割するには、cursor パラメータを使用します。詳細については、
「10,000 件を超えるディープページ分割 (p. 140)」を参照してください。
たとえば、search?q=wolverine は、wolverine を含むインデックス 0 から始まる最初の 10 件の
ヒット項目を返します。次の例は start パラメータを 10 に設定して次の 10 件を取得します。
search?q=wolverine&start=10
1 回で 25 件取得する場合は、size パラメータを 25 に設定します。最初のヒットセットを取得する
場合、start パラメータを設定する必要はありません。
search?q=wolverine&size=25
それ以降のリクエストでは、start パラメータを使用して必要なヒットセットを取得します。たとえ
ば、25 件単位で 3 番目のヒットセットを取得するには、次のように指定します:
search?q=wolverine&size=25&start=50
Amazon CloudSearch で 10,000 件を超えるディー
プページ分割
size と start を使用して結果をページ分割して参照する方法は、結果の最初の数ページのみにアク
セスする場合であればうまくいきます。しかし、数千件単位のヒット項目をページ分割する必要があ
る場合は、カーソルを使用する方が効率的です。10,000 件を超えるヒット項目をページ分割するに
は、cursor を使用する必要があります(start および size パラメータを使用してアクセスできる
のは最初の 10,000 件のみです)。
カーソルを使用して結果をページ分割するには、最初の検索リクエストで cursor=initial を指定
し、size パラメータを使って取得する件数を指定します。Amazon CloudSearch はレスポンスでカー
ソル値を返します。それを使用して、次のヒットセットを取得できます。カーソルはヒットセットを
逐次的に返します。ただし、必要であれば、カーソルを使用してディープページのランダムアクセス
をシミュレートすることもできます。注意点として、カーソルは、最初のリクエストからあまり時間
がたっていないうちに結果セットをページ分割することを想定しています。途中でインデックスが更
新された場合、古いカーソルを使用すると古い結果が返されることがあります。
Important
ドキュメントスコア (_score) によってソートされた結果セットを、カーソルを使用してペー
ジ分割すると、リクエストの合間にインデックスが更新された場合に結果が不整合になるこ
とがあります。ドメインのレプリケーション数が 1 より大きい場合にも同様の現象が発生す
ることがあります。これは、更新が結果整合性方式でドメイン内のインスタンス間に適用さ
れるためです。問題になる場合は、スコアによるソートを避けてください。sort オプション
を使用して特定のフィールドでソートするか、または q の代わりに fq を使用して検索条件を
指定できます。(ドキュメントスコアはフィルタークエリでは計算されません)
たとえば、次のリクエストは cursor の値を initial に設定し、size パラメータを 100 に設定し
て、最初のヒットセットを取得します。
search?q=-star&cursor=initial&size=100
次のヒットセット用のカーソルは、レスポンスに含まれています。
API Version 2013-01-01
140
Amazon CloudSearch 開発者ガイド
10,000 件を超えるディープページ分割
{
"status": {
"rid": "z67+3L0oHgo6swY=",
"time-ms": 7
},
"hits": {
"found": 1649,
"start": 0,
"cursor": "Vb-HSS4YQW9JSVFKeFpvQ2wwZERBek16SXpOems9Aw",
"hit": [
{
"id": "tt0397892"
},
.
.
.
{
"id": "tt0332379"
}
]
}
}
次のリクエストでは、cursor パラメータに、返されたカーソル値を指定します。
search?q=-star&cursor=HSS4YQW9JSVFKeFpvQ2wwZERBek16SXpOems9Aw&size=100
API Version 2013-01-01
141
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch のエラーのタイプ
Amazon CloudSearch でのエラー処
理
このセクションでは、プログラムで Amazon CloudSearch と対話しているときに、エラーを処理する
方法について説明します。Amazon CloudSearch サービスから返される特定のエラーコードの詳細に
ついては、以下を参照してください。
• 検索サービスのエラー (p. 264)
• documents/batch ステータスコード (p. 243)
• 設定サービスの一般的なエラー (p. 235)。特定のアクションから返される特定のエラーについて
は、そのアクション (p. 155)に関するドキュメントを参照してください。
トピック
• Amazon CloudSearch のエラーのタイプ (p. 142)
• Amazon CloudSearch でのリクエストの再試行 (p. 143)
Amazon CloudSearch のエラーのタイプ
Amazon CloudSearch API によって返される HTTP ステータスコードは、リクエストが正常に完了し
たかどうか、またはリクエストの処理中にクライアントまたはサーバーでエラーが発生したかどうか
を示します。
• 2xx ステータスコードは、クライアントのリクエストが正常に処理されたことを示します。
• 4xx ステータスコードは、クライアントのリクエストに問題があったことを示します。一般的なク
ライアントリクエストエラーには、無効な認証情報の提供や、必須パラメータの指定漏れがありま
す。4xx エラーが発生したときは、問題を解決し、適切な形式のクライアントリクエストを再送信
する必要があります。
• 5xx ステータスコードは、クライアントリクエストの処理中にサーバーでエラーが発生したことを
示します。通常、サーバーエラーは一時的で、多くの場合サーバータイムアウト、スロットリン
グ、容量制限が原因です。すべての 5xx エラーを見つけて、再試行することをお勧めします。
HTTP ステータスコードは、リクエストごとに返されます。さらに、レスポンスの本文で、追加の警
告およびエラー情報が提供されます。
API Version 2013-01-01
142
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch でのリクエストの再試行
search レスポンス内のメッセージは、深刻度レベル、警告またはエラーコード、および検索リク
エストに関する問題の説明を示します。検索サービスによって返される警告およびエラーのリスト
については、「検索レスポンスのプロパティ(JSON) (p. 260)」または「検索レスポンスの要素
(XML) (p. 261)」を参照してください。
documents/batch レスポンス内のエラーおよび警告は、ドキュメントデータの処理中に発生し
た解析および検証の問題に関する情報を提供します。詳細については、「documents/batch 応答
(JSON) (p. 239)」または「documents/batch 応答(XML) (p. 242)」を参照してください。
設定サービスのレスポンスで返されるエラーは、リクエストが 4xx または 5xx ステータスコードを返
した原因に関する情報を提供します。すべてのアクションに共通のエラーの詳細については、「共通
エラー (p. 235)」を参照してください。アクション固有のエラーは、「Amazon CloudSearch の設定
API リファレンス (p. 153)」の「アクション」のトピックに一覧表示されています。
Amazon CloudSearch でのリクエストの再試行
アプリケーションをスムーズに実行するには、エラーを見つけ、エラーに対応するロジックを組み込
む必要があります。一般的な方法は、try ブロックまたは if-then ステートメント内にリクエストを実
装することです。
すべてのサーバーエラー(5xx)を見つけて、再試行することをお勧めします。エラーはリクエストパ
イプライン内のどこでも生成される可能性があるため、特定のステータスコードに対する専用の処理
方法だけでなく、予期しない 5xx エラーに対するフォールバックを実装する必要があります。
507 および 509 のエラーは、通常、検索サービスが過負荷になっていることを示します。これは、送
信した検索リクエストのボリュームや複雑さが原因である可能性があります。Amazon CloudSearch
は、通常、負荷を処理するために自動的にスケーリングします。追加検索インスタンスのデプロイに
は時間がかかるため、エクスポネンシャルパックオフ再試行ポリシーを使用して、一時的にリクエス
トレートを低減し、リクエストの失敗を最小限に抑えることをお勧めします。詳細については、「エ
ラーの再試行とエクスポネンシャルパックオフ」を参照してください。
複雑な検索クエリを 1 つの小さな検索インスタンスに送信するなど、特定の使用パターンは、自動ス
ケーリングをトリガーすることなくタイムアウトする可能性があります。高いエラー率が頻繁に見ら
れる場合、Amazon CloudSearch Service Limit Request フォームを使用して追加容量を明示的にリク
エストできます。
通常、クライアントエラー(4xx)は、問題を解決するためにリクエストを修正する必要があることを
示します。単純に同じリクエストを再試行するだけでは、ほとんどの場合同じエラーで終わります。
構成サービスから返された 409 エラーは、リソースの限界に達したために、リクエストが拒否された
ことを示します。詳細については、「制限 (p. 273)」を参照してください。
API Version 2013-01-01
143
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch のコマンドラ
インツールリファレンス
トピック
• Amazon CloudSearch 用のコマンドラインツールの使用 (p. 145)
• cs-configure-from-batches (p. 148)
• cs-import-documents (p. 149)
AWS CLI を使用して、検索ドメインの作成、設定、管理、ドキュメントのアップロード、および検
索リクエストの送信を含む、すべての Amazon CloudSearch API オペレーションを、2013-01-01 API
で作成した検索ドメインに対して実行することができます。AWS CLI は、簡単なインストール、統
一された設定、および AWS サービス間での一貫したコマンドライン構文を特徴とする、複数サービ
スにわたるコマンドラインインターフェイスです。 CLI は Linux/UNIX、Windows、および Mac で
サポートされます。AWS CLI のインストールおよび使用の詳細については、『AWS Command Line
Interface ユーザーガイド』を参照してください。
スタンドアロン Amazon CloudSearch コマンドラインツールは、ドキュメントバッチを生成し、バッ
チの内容に基づいて自動的にインデックスオプションを設定する、高度なツールを提供しています。
Note
Amazon CloudSearch コマンドラインツールのバージョン 2.0.0.1 は、設定サービスのオペ
レーションもサポートします。ただし、これらのオペレーションについては、バグ修正や機
能強化は公開されず、将来のバージョンで削除される予定です。2.0.0.1 コマンドラインツー
ルを使用して検索ドメインの管理を継続できますが、できるだけ早く AWS CLI に移行するこ
とをお勧めします。
Amazon CloudSearch コマンドラインツールおよびサンプル IMDB 映画データセットは、Amazon
CloudSearch 開発者ツールのページで入手できます。
このセクションでは、Amazon CloudSearch コマンドラインツールのバージョン 2.0.0.2 で使用でき
るコマンドについて説明します。コマンドラインから --help オプションを指定して、各ツールのリ
API Version 2013-01-01
144
Amazon CloudSearch 開発者ガイド
コマンドラインツールの使用
ファレンス情報にアクセスすることもできます。たとえば、cs-import-documents --help と指定
します。
Amazon CloudSearch 用のコマンドラインツール
の使用
トピック
• Amazon CloudSearch コマンドラインツールをインストールするための前提条件 (p. 145)
• Amazon CloudSearch 用のコマンドラインツールのインストール (p. 145)
• Amazon CloudSearch コマンドの実行 (p. 147)
このセクションでは、スタンドアロンの Amazon CloudSearch コマンドラインツールをインストー
ルして実行する方法について説明します。AWS CLI のインストールおよび使用の詳細については、
『AWS Command Line Interface ユーザーガイド』を参照してください。
Amazon CloudSearch コマンドラインツールをイン
ストールするための前提条件
Amazon CloudSearch コマンドラインツールを使用するには、以下が必要です。
• Linux/UNIX または Windows 環境での作業に関する基本的な知識。
• Java 7 互換の Java ランタイム環境(JRE)。最新の JRE は、java.com からダウンロードできま
す。
• Java ランタイムの場所を指す JAVA_HOME 環境変数。この環境変数では、java(Linux/UNIX)また
は java.exe(Windows)実行形式ファイルを含む bin ディレクトリの親ディレクトリをフルパス
で設定します。
• AWS アクセスキー ID とシークレットアクセスキー。AWS ルートアカウントアクセスキーの代わ
りに IAM ユーザーアクセスキーを使用します。IAM では、AWS アカウントでの AWS サービスと
リソースへのアクセスを安全に制御できます。認証情報の取得方法の詳細については、「セキュリ
ティ認証情報の取得方法」(AWS General Reference)を参照してください。
Amazon CloudSearch 用のコマンドラインツールの
インストール
Amazon CloudSearch コマンドラインツールをインストールするには
1.
Windows 用のコマンドラインツールをダウンロードし、https://aws.amazon.com/
developertools/4320728073503020 にアクセスして、[Download] ボタンをクリックします。
2.
Mac OS/Linux 用のコマンドラインツールをダウンロードし、https://aws.amazon.com/
developertools/9054800585729911 にアクセスして、[Download] ボタンをクリックします。
3.
.zip または .tar.gz ファイルを解凍します。Windows では、C:\CloudSearch ディレクトリに
ツールを解凍することをお勧めします。
4.
ツールを解凍したディレクトリを指すように CS_HOME 環境変数を設定します。
Linux および UNIX は、以下のコマンドを入力します。
export CS_HOME=install_directory_path
API Version 2013-01-01
145
Amazon CloudSearch 開発者ガイド
コマンドラインツールのインストール
Windows は、以下のコマンドを入力します。
set CS_HOME=install_directory_path
Note
これらの例では、ターミナルセッション期間中の一時的な CS_HOME および PATH 変数
を設定します。これを永続的に設定することもできます。Linux および MacOSX では、
ホームディレクトリのシェル起動ファイル(.profile、.bashrc、.tcshrc、または .zshrc)
に export コマンドを追加します。Windows では、コントロールパネル([Control Panel]
> [System and Security] > [System] > [Advanced] > [Environment Variables])からこれを
行うことができます。
5.
CS_HOME 環境変数を PATH に追加します。
Linux および UNIX は、以下のコマンドを入力します。
export PATH=$PATH:$CS_HOME/bin
Windows は、以下のコマンドを入力します。
set PATH=%PATH%;%CS_HOME%\bin
6.
Java 7 (以降) JRE がインストールされ、JAVA_HOME 環境変数が Java 実行ファイルが存在してい
る bin ディレクトリのあるディレクトリのフルパスに設定されていることを確認します。Java の
インストールの確認方法については、java.com を参照してください。
Note
Mac OS X では、/usr/libexec/java_home コマンドを使用して JAVA_HOME を設定す
る必要があります。例: export JAVA_HOME=$(/usr/libexec/java_home)。詳細に
ついては、developer.apple.com で「QA1170」を参照してください。
7.
AWS 識別子を使用するようにコマンドラインツールを設定します。Amazon CloudSearch コマン
ドラインツールは、AWS_CREDENTIAL_FILE 環境変数によって指定された場所のローカルシステ
ムのテキストファイルで AWS 識別子を検索します。まだ AWS 認証情報ファイルを設定してい
ない場合は、次の手順を実行します。
a.
テキストエディタを使用して、AWS 識別子を指定する 2 行のテキストファイルを作成し
ます。以下の例のように、最初の行には accessKey プロパティを設定し、2 行目には
secretKey プロパティを設定します。
accessKey=AKIAIOSFODNN7EXAMPLE
secretKey=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
b.
任意の名前(たとえば、account-key)を使用してファイルを保存します。
c.
ファイルアクセス許可をファイルの所有者のみに制限します。(たとえば、Linux/UNIX を使
用している場合は、ファイルに chmod 600 を使用します)。
d.
AWS_CREDENTIAL_FILE 環境変数を設定します。
Linux および UNIX は、以下のコマンドを入力します。
export AWS_CREDENTIAL_FILE=credential_file_path
Windows は、以下のコマンドを入力します。
API Version 2013-01-01
146
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch コマンドの実行
set AWS_CREDENTIAL_FILE=credential_file_path
8.
検索ドメインを作成および設定する AWS リージョンの Amazon CloudSearch 設定サービスエ
ンドポイントを指定するように CS_ENDPOINT 環境変数を設定します。サポートされているリー
ジョンのリストについては、「Amazon CloudSearch のリージョンとエンドポイント」を参照し
てください。
Linux および UNIX は、以下のコマンドを入力します。
export CS_ENDPOINT=cloudsearch.region.amazonaws.com
Windows は、以下のコマンドを入力します。
set CS_ENDPOINT=cloudsearch.region.amazonaws.com
Note
CS_ENDPOINT が設定されていない場合、Amazon CloudSearch コマンドラインツー
ルは、デフォルトの 米国東部 (バージニア北部) リージョン(cloudsearch.useast-1.amazonaws.com)の設定サービスエンドポイントを使用します。ま
た、Amazon CloudSearch を実行する際に、--endpoint オプションを指定して、エン
ドポイントを明示的に設定することもできます。
9.
Amazon CloudSearch ツールが正しく設定されていることを確認するには、引数なしで csimport-documents コマンドを実行します。
cs-import-documents
このコマンドが "Expected at least one input source" というメッセージを返すことを確認します。
別のエラーを返された場合、以下を確認してください:
• システムが指定されたパスを検出できない場合、JAVA_HOME 環境変数を JRE がインストール
されている場所(たとえば、C:\Program Files\Java\jre6)に設定する必要があります。
• cs-import-documents がコマンドとして認識されない場合は、PATH にコマンドラインツー
ルの bin ディレクトリ(たとえば、/Users/username/CloudSearch/tools/bin)が含まれ
ていることを確認します。
Note
ドメインにドキュメントをインポートしようとして InvalidClientTokenId エラーが
発生した場合は、AWS 認証情報が正しく設定されていません。AWS_CREDENTIAL_FILE
環境変数が設定されていること、および認証情報ファイルに有効な AWS アクセスキー
ID とシークレットアクセスキーが含まれていることを確認します。
Amazon CloudSearch コマンドの実行
Amazon CloudSearch コマンドはすべて AWS アクセスキー ID とシークレットアクセスキーを必要と
します。キーを指定する最も簡単な方法は、AWS 認証情報ファイルをセットアップし、インストール
手順で説明されるように AWS_CREDENTIAL_FILE 環境変数を設定することです。
また、--aws-credential-file オプションを使用して認証情報ファイルの場所を指定するか、-access-key と --secret-key の両方のオプションを指定することで、リクエストごとに明示的に
キーを指定することもできます。
API Version 2013-01-01
147
Amazon CloudSearch 開発者ガイド
cs-configure-from-batches
また、-d または --domain-name オプションを使って検索ドメインの名前を指定する必要もありま
す。
cs-configure-from-batches
NAME
cs-configure-from-batches
DESCRIPTION
Scans document data formatted in JSON or XML and configures index
fields for all of the document fields. Prompts for confirmation before
making any changes unless you specify the --force option. By default,
fields that have already been configured are left as-is. Use the
--replace option to overwrite the existing configuration. For more
information, see the developer guide topic "Configuring Index Fields
for an Amazon CloudSearch Domain".
SYNOPSIS
cs-configure-from-batches --source FILE|S3_URI
[--replace] [--force]
COMMON_OPTIONS
COMMON OPTIONS
-a, --access-key STRING
Your AWS access key ID. Used in conjunction with --secret-key.
Required if you do not use an AWS credential file.
-c, --aws-credential-file FILE
The path to the file that contains your AWS access key ID and
secret access key. Required if you have not set the
AWS_CREDENTIAL_FILE environment variable or explicitly set your
credentials with --access-key and --secret-key.
-d, --domain-name STRING
The name of the domain that you are querying or configuring.
Required.
-e,
--endpoint URL
The endpoint for the Amazon CloudSearch Configuration Service.
Defaults to the CS_ENDPOINT environment variable or
cloudsearch.us-east-1.amazonaws.com if the environment variable
is not set. Optional.
-h, --help
Display this help message. Optional.
-k, --secret-key STRING
Your AWS secret access key. Used in conjunction with --access-key.
Required if you do not use an AWS credential file.
-ve, --verbose
Display verbose log messages. Optional.
-v, --version
Display the version number of the command line tools. Optional.
CONFIGURE OPTIONS
API Version 2013-01-01
148
Amazon CloudSearch 開発者ガイド
cs-import-documents
-f,
--force
Apply changes to the domain's configuration without confirmation.
Optional.
-re, --replace
Upload configuration information for all identified fields and
overwrite the configuration of any fields that were already
defined. (Prompts for confirmation unless you also specify
--force.) Optional.
-s, --source
The path
to scan.
--source
FILE|S3 URI
to a file or an S3 URI that contains the data you want
You can specify multiple files or S3 URIs. For example:
batch1.json batch2.json. Required.
EXAMPLE
cs-configure-from-batches -d mydomain --source s3://mybucket/
myAmazingDataSet
COMMON_OPTIONS
cs-import-documents
NAME
cs-import-documents
DESCRIPTION
Uploads documents to a search domain for indexing. If necessary,
the source data is analyzed and converted to JSON or XML so it
can be indexed by Amazon CloudSearch. The data source can
be a local directory or file, an S3 bucket, or a DynamoDB table.
Specify the --domain option to upload the documents to your search
domain. To save the generated JSON or XML files to your local file
system or an S3 bucket, specify the --output option.
The cs-import-documents command can process the following content
types:
text/csv
text/html
text/plain
application/msword
application/pdf
application/vnd.ms-excel
application/vnd.ms-powerpoint
application/vnd.openxmlformats-officedocument.
presentationml.presentation
application/vnd.openxmlformats-officedocument.
spreadsheetml.sheet
application/vnd.openxmlformats-officedocument.
wordprocessingml.document
For more information, see the developer guide topic "Generating JSON
or XML from Your Source Data for Amazon CloudSearch".
SYNOPSIS
API Version 2013-01-01
149
Amazon CloudSearch 開発者ガイド
cs-import-documents
cs-import-documents --source PATH|S3_URI|DDB_TABLE
[--output PATH|S3_URI]
[--modified-after yyyy-MM-ddTHH:mm:ssZ]
[--exclude-metadata] [--exclude-content]
[--single-doc-per-csv] [--multivalued FIELDS]
[--sdf-format json|xml] [--docid-prefix STRING]
[--batch-size MB] [--batch-docs NUM]
[--num-rows NUM] [--dynamodb-rcu-percent NUM]
[--start-hash-key STRING] [--start-range-key STRING]
[--delimiter CHAR] [--encapsulator CHAR]
[--comment-character CHAR]
COMMON_OPTIONS
COMMON OPTIONS
-a, --access-key STRING
Your AWS access key ID. Used in conjunction with --secret-key.
Required if you do not use an AWS credential file.
-c, --aws-credential-file FILE
The path to the file that contains your AWS access key ID and
secret access key. Required if you have not set the
AWS_CREDENTIAL_FILE environment variable or explicitly set your
credentials with --access-key and --secret-key.
-d, --domain-name STRING
The name of the domain that you are querying or configuring.
Required.
-e,
--endpoint URL
The endpoint for the Amazon CloudSearch Configuration Service.
Defaults to the CS_ENDPOINT environment variable or
cloudsearch.us-east-1.amazonaws.com if the environment variable
is not set. Optional.
-h, --help
Display this help message. Optional.
-k, --secret-key STRING
Your AWS secret access key. Used in conjunction with --access-key.
Required if you do not use an AWS credential file.
-ve, --verbose
Display verbose log messages. Optional.
-v, --version
Display the version number of the command line tools. Optional.
BASIC OPTIONS
-o, --output PATH|S3_URI
The local directory or S3 bucket where you want to save the
generated JSON or XML files. Required if you do not specify the
--domain option to upload the documents to a search domain.
-s, --source PATH|S3_URI|DDB_TABLE
The local directory or file, S3 bucket, or DynamoDB table that
contains your source data. You can process data from multiple
locations by specifying multiple sources. For example:
--source c:\DataSet1 c:\DataSet2. Supports wildcards for
filenames, directories, and S3 prefixes: ? matches any single
API Version 2013-01-01
150
Amazon CloudSearch 開発者ガイド
cs-import-documents
character, * matches zero or more characters, ** matches zero
or more directories or prefixes. Required.
ADVANCED OPTIONS
-bd, --batch-docs NUM
The maximum number of documents in a batch. Optional.
-bs, --batch-size MB
The maximum batch size in MB. Defaults to 5MB. Optional.
-char, --comment-character CHAR
The character used to identify comments in CSV source files. If
not
specified, the default comment character is a hash character (#).
Optional.
-del, --delimiter CHAR
The character used to delimit fields in CSV source files. If not
specified, the default delimiter is a comma (,). Optional.
-dp, --docid-prefix STRING
The prefix to prepend to the document ID while processing CSV
data.
If not specified, the filename is used as the --docid-prefix. The
docid column is used as the document ID if it is included in the
CSV data; otherwise, the row number is used as the document ID.
Optional.
-enc, --encapsulator CHAR
The character used to encapsulate individual values of a
multi-valued field in CSV source files. If not specified, the
default encapsulator is a double quote (\"). Optional.
-ec, --exclude-content
Do not include the content of the source files in the generated
JSON or XML, only process the metadata. Optional.
-em, --exclude-metadata
Do not include the metadata of the source files in the generated
JSON or XML, only process the content. Optional.
-m, --modified-after TIMESTAMP
Only process files or S3 objects modified after the specified date
and time. Specified in RFC 822 time zone format
(yyyy-MM-dd'T'HH:mm:ssZ). For example, 2012-12-12T01:00:00GMT.
Optional.
-mv, --multivalued FIELDS
Treat the specified fields as multi-valued fields when processing
CSV files. Specify multiple fields as a comma-separated list.
If no fields are specified, all fields other than docid are
processed as multi-valued fields. This option is not valid if
the -sdpc option is specified and it has no effect on non-CSV
files. Optional.
-format, --sdf-format json|xml
The format of the generated documents: json or xml. Defaults to
API Version 2013-01-01
151
Amazon CloudSearch 開発者ガイド
cs-import-documents
json. Optional.
-sdpc, --single-doc-per-csv
Treat each CSV file as a single document. If this option is
specified, the contents of a CSV file are treated as a single text
field. This option is not valid if the -mv option is specified
and
it has no effect on non-CSV files. Optional.
DynamoDB SOURCE OPTIONS
-drp, --dynamodb-rcu-percent
The maximum percentage of configured read capacity units to use
while reading from the DynamoDB table. By default, the maximum
number of read capacity units is set to 20% the table's configured
read capacity units. Optional.
-n, --num-rows
The maximum number of rows to read from the DynamoDB table.
Optional.
By default, the entire table is read.
-shk, --start-hash-key
The hash attribute of the item in the DynamoDB table where you
want
to begin reading. If the table has a hash and range type primary
key, the --start-range-key option must also be specified. By
default, the table is read starting with the first item.
Optional.
-srk, --start-range-key
The range attribute of the item in the DynamoDB table where you
want to begin reading. Required if --start-hash-key is specified
and the DynamoDB table has a hash and range type primary key. Not
used if the table has a hash type primary key. Optional.
EXAMPLES
Process all of the source documents in a directory and upload the data
for indexing:
cs-import-documents -d mydomain --source c:\myAmazingDataSet\*
COMMON_OPTIONS
Process a DynamoDB table and save the generated XML files to a local
directory:
cs-import-documents --source ddb://myDDBTable
--output c:\myAmazingDataSet\SDF\batch -format xml
COMMON_OPTIONS
API Version 2013-01-01
152
Amazon CloudSearch 開発者ガイド
設定 API リファレンス
Amazon CloudSearch API リファレ
ンス
Amazon CloudSearch と対話するには、次の 3 つの API を使用します。
• 設定 API (p. 153) - 検索ドメインを設定および管理します。
• ドキュメントサービス API (p. 236) - 検索するデータを送信します。
• 検索 API (p. 245) - ドメインを検索します。
Amazon CloudSearch の設定 API リファレンス
Amazon CloudSearch 設定 API を使用して、検索ドメインの作成、設定、管理を実行できます。検索
ドメインの設定方法の詳細については、「検索ドメインの作成と管理 (p. 27)」を参照してください。
Amazon CloudSearch を操作するために使用するその他の API は次のとおりです。
• ドキュメントサービス API リファレンス (p. 236) - 検索するデータを送信します。
• 検索 API リファレンス (p. 245) - ドメインを検索します。
トピック
• Amazon CloudSearch で設定リクエストを送信 (p. 153)
• アクション (p. 155)
• データ型 (p. 203)
• 共通パラメータ (p. 233)
• 共通エラー (p. 235)
Amazon CloudSearch で設定リクエストを送信
Important
設定リクエストを送信する最も簡単な方法は、Amazon CloudSearch コン
ソール、Amazon CloudSearch コマンドラインツール、または AWS SDK for
Java、JavaScript、.NET、PHP、Ruby、Python (Boto) を使用することです。コマンドライ
ンツールおよび SDK は、ユーザーの代わりに署名プロセスを処理し、Amazon CloudSearch
API Version 2013-01-01
153
Amazon CloudSearch 開発者ガイド
設定リクエストの送信
設定リクエストが適切な形式で作成されるようにします。コマンドラインツールの使用方
法の詳細については、「コマンドラインツールリファレンス (p. 144)」を参照してくださ
い。AWS SDK の詳細については、「AWS Software Development Kits(SDK)」を参照して
ください。
ユーザーは、AWS クエリプロトコルを使用して Amazon CloudSearch 設定リクエストを リージョン
の Amazon CloudSearch エンドポイントに送信します。現在サポートされているリージョンとエンド
ポイントのリストについては、「リージョンとエンドポイント」を参照してください。
AWS クエリリクエストは、HTTP GET または POST 経由で Action というクエリパラメータを使って
送信される HTTP または HTTPS リクエストです。すべての設定リクエストで API バージョンを指定
する必要があり、そのバージョンはドメインを作成したときに指定されたバージョンと一致している
必要があります。
設定 API に送信されたリクエストは、AWS アクセスキー ID とシークレットアクセスキーを使用し
て認証されます。AWS ルートアカウントアクセスキーの代わりに IAM ユーザーアクセスキーを使用
します。IAM では、AWS アカウントでの AWS サービスとリソースへのアクセスを安全に制御でき
ます。認証情報の取得方法の詳細については、「セキュリティ認証情報の取得方法」(AWS General
Reference)を参照してください。
すべてのリクエストに認証パラメータとデジタル署名を含める必要があります。Amazon
CloudSearch は AWS 署名バージョン 4 をサポートします。署名の詳細な手順については、AWS 全般
リファレンスの「署名 V4 の署名処理」を参照してください。
設定リクエストの構造
このリファレンスはブラウザで直接使用できる URL として Amazon CloudSearch 設定リクエストを
示しています(GET リクエストは URL として示されますが、パラメータ値は読みやすくするために
エンコードされていない状態で示しています。リクエストを送信するときは、パラメータ値を URL エ
ンコードする必要があることに注意してください)。URL は 3 つの部分を含みます。
• エンドポイント - 処理対象のウェブサービスエントリポイント(cloudsearch.useast-1.amazonaws.com)。
• アクション - 実行する Amazon CloudSearch 設定アクションです。アクションの完全な一覧につい
ては、アクション (p. 155) を参照してください。
• パラメータ - 指定したアクションに必要なリクエストパラメータ。また、各クエリリクエストに、
アクションの認証と選択を処理するための一般的なパラメータがいくつか含まれている必要もあり
ます。詳細については、「リクエストの署名認証について (p. 155)」を参照してください。
どの Amazon CloudSearch リクエストでも Version パラメータを指定する必要があります。現在の
Amazon CloudSearch API バージョンは 2013-01-01 です。
たとえば、次の GET リクエストは movies という新しい検索ドメインを作成します。
https://cloudsearch.us-east-1.amazonaws.com
?Action=CreateDomain
&DomainName=movies
&Version=2013-01-01
&X-Amz-Algorithm=AWS4-HMAC-SHA256
&X-Amz-Credential=AKIAIOSFODNN7EXAMPLE/20120712/us-east-1/cloudsearch/aws4
_request
&X-Amz-Date=2012-07-12T21:41:29.094Z
&X-Amz-SignedHeaders=host
&X-AmzSignature=c7600a00fea082dac002b247f9d6812f25195fbaf7f0a6fc4ce08a39666c6a10
3c8dcb
API Version 2013-01-01
154
Amazon CloudSearch 開発者ガイド
アクション
リクエストの署名認証について
設定 API に送信されたリクエストは、AWS アクセスキーを使用して認証されます。すべてのリクエ
ストに認証パラメータとデジタル署名を含める必要があります。Amazon CloudSearch は AWS 署名
バージョン 4 をサポートします。署名の詳細な手順については、AWS 全般リファレンスの「署名 V4
の署名処理」を参照してください。
リクエストの署名を作成するには、クエリ文字列の正規化バージョンを作成し、AWS シークレットア
クセスキーに由来する署名キーを使用して、RFC 2104 準拠の HMAC 署名を計算します。
Note
独自の AWS リクエストに対する署名を始めたばかりの場合は、SDK がどのように署名
機能を実装しているか確認してみてください。AWS SDK のほとんどのソースは https://
github.com/aws で入手できます。
たとえば、CreateDomain リクエストを作成する場合、次の情報が必要になります。
Region name: us-east-1
Service name: cloudsearch
API version: 2013-01-01
Date: 2014-03-12T21:41:29.094Z
Access key: AKIAIOSFODNN7EXAMPLE
Secret key: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
Action: CreateDomain
Action Parameters: DomainName=movies
CreateDomain リクエストの正規化されたクエリ文字列は次のようになります。
Action=CreateDomain
&DomainName=movies
&Version=2013-01-01
&X-Amz-Algorithm=AWS4-HMAC-SHA256
&X-Amz-Credential=AKIAIOSFODNN7EXAMPLE/20120712/us-east-1/cloudsearch/aws4
_request
&X-Amz-Date=2012-07-12T21:41:29.094Z
&X-Amz-SignedHeaders=host
署名された最終リクエストは次のようになります。
https://cloudsearch.us-east-1.amazonaws.com
?Action=CreateDomain
&DomainName=movies
&Version=2013-01-01
&X-Amz-Algorithm=AWS4-HMAC-SHA256
&X-Amz-Credential=AKIAIOSFODNN7EXAMPLE/20120712/us-east-1/cloudsearch/aws4
_request
&X-Amz-Date=2014-03-12T21:41:29.094Z
&X-Amz-SignedHeaders=host
&X-AmzSignature=c7600a00fea082dac002b247f9d6812f25195fbaf7f0a6fc4ce08a39666c6a10
アクション
以下の &; アクションがサポートされています。
API Version 2013-01-01
155
Amazon CloudSearch 開発者ガイド
アクション
• AddTags (p. 157)
•
•
•
•
•
BuildSuggesters (p. 159)
CreateDomain (p. 160)
DefineAnalysisScheme (p. 161)
DefineExpression (p. 163)
DefineIndexField (p. 165)
• DefineSuggester (p. 167)
• DeleteAnalysisScheme (p. 169)
• DeleteDomain (p. 171)
• DeleteExpression (p. 172)
• DeleteIndexField (p. 174)
• DeleteSuggester (p. 176)
• DescribeAnalysisSchemes (p. 178)
• DescribeAvailabilityOptions (p. 180)
• DescribeDomains (p. 182)
• DescribeExpressions (p. 183)
• DescribeIndexFields (p. 185)
• DescribeScalingParameters (p. 187)
• DescribeServiceAccessPolicies (p. 188)
• DescribeSuggesters (p. 190)
• IndexDocuments (p. 192)
• ListDomainNames (p. 193)
• ListTags (p. 196)
• RemoveTags (p. 198)
• UpdateAvailabilityOptions (p. 194)
• UpdateScalingParameters (p. 200)
• UpdateServiceAccessPolicies (p. 202)
API Version 2013-01-01
156
Amazon CloudSearch 開発者ガイド
アクション
AddTags
説明
Amazon CloudSearch ドメインにリソースタグを添付します。詳細については、『Amazon
CloudSearch 開発者ガイド』の「Amazon CloudSearch ドメインのタグ付け (p. 56)」を参照してくだ
さい。このアクションには GET HTTP メソッドを使用します。
リクエストパラメータ
ARN
リソースタグを添付する Amazon CloudSearch ドメインの Amazon Resource Name (ARN)。詳細に
ついては、『AWS Identity and Access Management』の「IAM ARN」を参照してください。
型: 文字列
必須: はい
TagList
指定された Amazon CloudSearch ドメインのリソースタグのリスト。
タイプ: TagList、ドメイン用にリソースタグを指定する文字列のリスト。
必須: はい
レスポンス要素
該当しません. AddTags アクションはデータ構造を返しません。
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
LimitExceededException
リクエストに、Amazon CloudSearch ドメインのリソースで許可されている以上の数とタイプが
含まれています。HTTP ステータスコード 409 が返されます。
ValidationException
リクエストに無効な入力が含まれているか、必要な入力が欠落しています。HTTP ステータス
コード 400 が返されます。
InternalException
内部サービスエラーにより、リクエスト処理が失敗しました。HTTP ステータスコード 500 が返
されます。
例
次の例は us-west-2 リージョンの logs Amazon CloudSearch ドメインに project のタグキーを伴う
単一のリソースタグを添付します。
リクエスト
GET https://cloudsearch.us-west-2.amazonaws.com?
Action=AddTags&ARN=arn:aws:cloudsearch:us-west-2:408853051459:domain/
logs&TagList.Tag.1.Key='environment'
API Version 2013-01-01
157
Amazon CloudSearch 開発者ガイド
アクション
&TagList.Tag.1.Value='production'&Version=2013-01-01
レスポンス
<AddTagsResponse xmlns="http://cloudsearch.amazonaws.com/doc/2013-01-01/">
<ResponseMetadata>
<RequestId>5646a576-d1ee-11e5-bc4d-27ea242580ce</RequestId>
</ResponseMetadata>
</AddTagsResponse>
API Version 2013-01-01
158
Amazon CloudSearch 開発者ガイド
アクション
BuildSuggesters
説明
検索候補インデックスを作成します。詳細については、『Amazon CloudSearch 開発者ガイド』の
「サジェスタの設定」を参照してください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
DomainName
ドメイン名を表す文字列。ドメイン名は、AWS リージョン内のアカウントによって所有される
ドメイン間で一意です。ドメイン名は英数字で始まり、次の文字を含めることができます。a~
z(小文字)、0~9、-(ハイフン)。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
レスポンス要素
以下の要素が BuildSuggestersResult という名前の構造体で返されます。
FieldNames
フィールド名のリストです。
型: 文字列のリスト
長さの制限: 最小長は 1 です。最大長は 64 です。
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
159
Amazon CloudSearch 開発者ガイド
アクション
CreateDomain
説明
新しい検索ドメインを作成します。詳細については、Amazon CloudSearch 開発者ガイドの「検索ド
メインの作成」を参照してください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
DomainName
作成しているドメインの名前。使用できる文字は、a ~ z(小文字)、0 ~ 9、ハイフン(-)で
す。ドメイン名は、3 文字以上、28 文字以内で、先頭は英字または数字にする必要があります。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
レスポンス要素
以下の要素が CreateDomainResult という名前の構造体で返されます。
DomainStatus
検索ドメインの現在のステータス。
タイプ: DomainStatus (p. 215)
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
LimitExceeded
リクエストは、既にリソースの制限に到達したため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
160
Amazon CloudSearch 開発者ガイド
アクション
DefineAnalysisScheme
説明
text または text-array のフィールドに適用可能な分析スキームを設定し、言語固有のテキスト処
理オプションを定義します。詳細については、『Amazon CloudSearch 開発者ガイド』の「Amazon
CloudSearch のテキスト分析スキームの設定」を参照してください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
AnalysisScheme
分析スキームの設定情報。各分析スキームに一意の名前があ
り、処理するテキストの言語を指定します。分析スキームに
は、Synonyms、Stopwords、StemmingDictionary、JapaneseTokenizationDictionary
および AlgorithmicStemming の各オプションを設定できます。
タイプ: AnalysisScheme (p. 206)
必須: はい
DomainName
ドメイン名を表す文字列。ドメイン名は、AWS リージョン内のアカウントによって所有される
ドメイン間で一意です。ドメイン名は英数字で始まり、次の文字を含めることができます。a~
z(小文字)、0~9、-(ハイフン)。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
レスポンス要素
以下の要素が DefineAnalysisSchemeResult という名前の構造体で返されます。
AnalysisScheme
AnalysisScheme のステータスと設定。
タイプ: AnalysisSchemeStatus (p. 206)
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
InvalidType
リクエストは、無効な型定義を指定したため却下されました。
API Version 2013-01-01
161
Amazon CloudSearch 開発者ガイド
アクション
HTTP ステータスコード: 409
LimitExceeded
リクエストは、既にリソースの制限に到達したため却下されました。
HTTP ステータスコード: 409
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
162
Amazon CloudSearch 開発者ガイド
アクション
DefineExpression
説明
検索ドメインの Expression を設定します。新しい式を作成したり、既存の式を変更するために使
用されます。式が存在する場合は、新しい設定によって古い設定が置き換えられます。詳細について
は、『Amazon CloudSearch 開発者ガイド』の「式の設定」を参照してください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
DomainName
ドメイン名を表す文字列。ドメイン名は、AWS リージョン内のアカウントによって所有される
ドメイン間で一意です。ドメイン名は英数字で始まり、次の文字を含めることができます。a~
z(小文字)、0~9、-(ハイフン)。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
式
検索時に評価できる名前付きの式。検索結果をソートしたり、他の式を定義したり、検索結果内
に計算後の情報を返したりするために使用できます。
タイプ: 式 (p. 218)
必須: はい
レスポンス要素
以下の要素が DefineExpressionResult という名前の構造体で返されます。
式
Expression の値および現在のステータス。
タイプ: ExpressionStatus (p. 219)
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
InvalidType
リクエストは、無効な型定義を指定したため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
163
Amazon CloudSearch 開発者ガイド
アクション
LimitExceeded
リクエストは、既にリソースの制限に到達したため却下されました。
HTTP ステータスコード: 409
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
164
Amazon CloudSearch 開発者ガイド
アクション
DefineIndexField
説明
検索ドメインの IndexField を設定します。新しいフィールドを作成したり、既存の式を変更す
るために使用されます。設定するドメインの名前とインデックスフィールド設定を指定する必要が
あります。インデックスフィールド設定は、フィールドに対して設定する一意の名前、インデックス
フィールドタイプ、およびオプションを指定します。指定できるオプションは IndexFieldType
によって異なります。フィールドが存在する場合は、新しい設定によって古い設定が置き換えられま
す。詳細については、『Amazon CloudSearch 開発者ガイド』の「Amazon CloudSearch ドメインの
インデックスフィールドの設定」を参照してください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
DomainName
ドメイン名を表す文字列。ドメイン名は、AWS リージョン内のアカウントによって所有される
ドメイン間で一意です。ドメイン名は英数字で始まり、次の文字を含めることができます。a~
z(小文字)、0~9、-(ハイフン)。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
IndexField
設定するインデックスフィールドとフィールドオプション。
タイプ: IndexField (p. 219)
必須: はい
レスポンス要素
以下の要素が DefineIndexFieldResult という名前の構造体で返されます。
IndexField
IndexField の値および現在のステータス。
タイプ: IndexFieldStatus (p. 221)
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
API Version 2013-01-01
165
Amazon CloudSearch 開発者ガイド
アクション
InvalidType
リクエストは、無効な型定義を指定したため却下されました。
HTTP ステータスコード: 409
LimitExceeded
リクエストは、既にリソースの制限に到達したため却下されました。
HTTP ステータスコード: 409
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
166
Amazon CloudSearch 開発者ガイド
アクション
DefineSuggester
説明
ドメインのサジェスタを設定します。サジェスタによって、ユーザーがクエリの入力を完了する前
に、一致する可能性のある候補を表示できます。サジェスタを設定するには、一致候補を検索するテ
キストフィールドの名前と、サジェスタの一意の名前を指定する必要があります。詳細については、
『Amazon CloudSearch 開発者ガイド』の「Amazon CloudSearch での自動入力候補の取得」をご覧
ください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
DomainName
ドメイン名を表す文字列。ドメイン名は、AWS リージョン内のアカウントによって所有される
ドメイン間で一意です。ドメイン名は英数字で始まり、次の文字を含めることができます。a~
z(小文字)、0~9、-(ハイフン)。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
Suggester
検索サジェスタの設定情報。各サジェスタは一意の名前を持ち、候補として使用するテキスト
フィールドを指定します。サジェスタには、FuzzyMatching オプションと SortExpression オ
プションを設定できます。
タイプ: Suggester (p. 229)
必須: はい
レスポンス要素
以下の要素が DefineSuggesterResult という名前の構造体で返されます。
Suggester
Suggester の値および現在のステータス。
タイプ: SuggesterStatus (p. 230)
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
API Version 2013-01-01
167
Amazon CloudSearch 開発者ガイド
アクション
InvalidType
リクエストは、無効な型定義を指定したため却下されました。
HTTP ステータスコード: 409
LimitExceeded
リクエストは、既にリソースの制限に到達したため却下されました。
HTTP ステータスコード: 409
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
168
Amazon CloudSearch 開発者ガイド
アクション
DeleteAnalysisScheme
説明
分析スキームを削除します。詳細については、『Amazon CloudSearch 開発者ガイド』の「Amazon
CloudSearch のテキスト分析スキームの設定」を参照してください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
AnalysisSchemeName
削除する分析スキームの名前。
型: 文字列
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: はい
DomainName
ドメイン名を表す文字列。ドメイン名は、AWS リージョン内のアカウントによって所有される
ドメイン間で一意です。ドメイン名は英数字で始まり、次の文字を含めることができます。a~
z(小文字)、0~9、-(ハイフン)。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
レスポンス要素
以下の要素が DeleteAnalysisSchemeResult という名前の構造体で返されます。
AnalysisScheme
削除中の分析スキームのステータス。
タイプ: AnalysisSchemeStatus (p. 206)
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
InvalidType
リクエストは、無効な型定義を指定したため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
169
Amazon CloudSearch 開発者ガイド
アクション
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
170
Amazon CloudSearch 開発者ガイド
アクション
DeleteDomain
説明
検索ドメインとそのすべてのデータを完全に削除します。ドメインを完全に削除すると、復元できな
くなります。詳細については、Amazon CloudSearch 開発者ガイドの「Deleting a Search Domain」
をご覧ください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
DomainName
完全に削除するドメインの名前。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
レスポンス要素
以下の要素が DeleteDomainResult という名前の構造体で返されます。
DomainStatus
検索ドメインの現在のステータス。
タイプ: DomainStatus (p. 215)
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
API Version 2013-01-01
171
Amazon CloudSearch 開発者ガイド
アクション
DeleteExpression
説明
検索ドメインから Expression を削除します。詳細については、『Amazon CloudSearch 開発者ガ
イド』の「式の設定」を参照してください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
DomainName
ドメイン名を表す文字列。ドメイン名は、AWS リージョン内のアカウントによって所有される
ドメイン間で一意です。ドメイン名は英数字で始まり、次の文字を含めることができます。a~
z(小文字)、0~9、-(ハイフン)。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
ExpressionName
削除する Expression の名前。
型: 文字列
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: はい
レスポンス要素
以下の要素が DeleteExpressionResult という名前の構造体で返されます。
式
削除中の式のステータス。
タイプ: ExpressionStatus (p. 219)
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
InvalidType
リクエストは、無効な型定義を指定したため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
172
Amazon CloudSearch 開発者ガイド
アクション
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
173
Amazon CloudSearch 開発者ガイド
アクション
DeleteIndexField
説明
検索ドメインから IndexField を削除します。詳細については、『Amazon CloudSearch 開発者ガ
イド』の「Amazon CloudSearch ドメインのインデックスフィールドの設定」を参照してください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
DomainName
ドメイン名を表す文字列。ドメイン名は、AWS リージョン内のアカウントによって所有される
ドメイン間で一意です。ドメイン名は英数字で始まり、次の文字を含めることができます。a~
z(小文字)、0~9、-(ハイフン)。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
IndexFieldName
ドメインのインデックス作成オプションから削除するインデックスフィールドの名前。
型: 文字列
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: はい
レスポンス要素
以下の要素が DeleteIndexFieldResult という名前の構造体で返されます。
IndexField
削除されるインデックスフィールドのステータス。
タイプ: IndexFieldStatus (p. 221)
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
InvalidType
リクエストは、無効な型定義を指定したため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
174
Amazon CloudSearch 開発者ガイド
アクション
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
175
Amazon CloudSearch 開発者ガイド
アクション
DeleteSuggester
説明
サジェスタを削除します。詳細については、『Amazon CloudSearch 開発者ガイド』の「Amazon
CloudSearch での自動入力候補の取得」をご覧ください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
DomainName
ドメイン名を表す文字列。ドメイン名は、AWS リージョン内のアカウントによって所有される
ドメイン間で一意です。ドメイン名は英数字で始まり、次の文字を含めることができます。a~
z(小文字)、0~9、-(ハイフン)。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
SuggesterName
削除するサジェスタの名前を指定します。
型: 文字列
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: はい
レスポンス要素
以下の要素が DeleteSuggesterResult という名前の構造体で返されます。
Suggester
削除中のサジェスタのステータス。
タイプ: SuggesterStatus (p. 230)
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
InvalidType
リクエストは、無効な型定義を指定したため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
176
Amazon CloudSearch 開発者ガイド
アクション
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
177
Amazon CloudSearch 開発者ガイド
アクション
DescribeAnalysisSchemes
説明
ドメインに対して設定された分析スキームを取得します。分析スキームは、text フィールドの言語
固有のテキスト処理オプションを定義します。名前によって特定の分析スキームに制限できます。
デフォルトでは、すべての分析スキームが表示され、設定の保留中の変更がすべて含まれます。ア
クティブな設定を表示し、保留中の変更を除外するには、Deployed オプションを true に設定しま
す。詳細については、『Amazon CloudSearch 開発者ガイド』の「Amazon CloudSearch のテキスト
分析スキームの設定」を参照してください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
AnalysisSchemeNames.member.N
説明する分析スキーム。
型: 文字列のリスト
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: いいえ
Deployed
デプロイされた設定を表示するか(true)、または任意の保留中の変更を含めるか(false)。
デフォルトは false です。
タイプ: ブール値
必須: いいえ
DomainName
説明するドメインの名前。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
レスポンス要素
以下の要素が DescribeAnalysisSchemesResult という名前の構造体で返されます。
AnalysisSchemes
分析スキームの説明。
型: AnalysisSchemeStatus (p. 206) リスト
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
API Version 2013-01-01
178
Amazon CloudSearch 開発者ガイド
アクション
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
179
Amazon CloudSearch 開発者ガイド
アクション
DescribeAvailabilityOptions
説明
ドメインに設定された可用性オプションを取得します。デフォルトでは、保留中の変更を含む設
定を表示します。アクティブな設定を表示し、保留中の変更を除外するには、Deployed オプショ
ンを true に設定します。詳細については、Amazon CloudSearch 開発者ガイドの「Configuring
Availability Options」を参照してください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
Deployed
デプロイされた設定を表示するか(true)、または任意の保留中の変更を含めるか(false)。
デフォルトは false です。
タイプ: ブール値
必須: いいえ
DomainName
説明するドメインの名前。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
レスポンス要素
以下の要素が DescribeAvailabilityOptionsResult という名前の構造体で返されます。
AvailabilityOptions
ドメインに設定された可用性オプション。ドメインでマルチ AZ が有効であるかどうかを示しま
す。
タイプ: AvailabilityOptionsStatus (p. 207)
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
DisabledOperation
リクエストは、有効になっていない操作を試行したため却下されました。
HTTP ステータスコード: 409
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
API Version 2013-01-01
180
Amazon CloudSearch 開発者ガイド
アクション
InvalidType
リクエストは、無効な型定義を指定したため却下されました。
HTTP ステータスコード: 409
LimitExceeded
リクエストは、既にリソースの制限に到達したため却下されました。
HTTP ステータスコード: 409
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
181
Amazon CloudSearch 開発者ガイド
アクション
DescribeDomains
説明
このアカウントによって所有される検索ドメインに関する情報を取得します。特定のドメインに制限
できます。デフォルトではすべてのドメインを表示します。ドメイン内の検索可能なドキュメント
数を取得するには、コンソールを使用するか、ドメインの検索エンドポイントに対して次のような
matchall リクエストを送信します。q=matchall&q.parser=structured&size=0詳細について
は、『>Amazon CloudSearch 開発者ガイド』の「検索ドメインに関する情報の取得」を参照してくだ
さい。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
DomainNames.member.N
応答に含めるドメインの名前。
型: 文字列のリスト
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: いいえ
レスポンス要素
以下の要素が DescribeDomainsResult という名前の構造体で返されます。
DomainStatusList
リクエストされた各ドメインのステータスを格納するリスト。
型: DomainStatus (p. 215) リスト
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
API Version 2013-01-01
182
Amazon CloudSearch 開発者ガイド
アクション
DescribeExpressions
説明
検索ドメインに設定された式を取得します。名前により特定の式に制限できます。デフォルトでは、
すべての式が表示され、設定の保留中の変更がすべて含まれます。アクティブな設定を表示し、保留
中の変更を除外するには、Deployed オプションを true に設定します。詳細については、『Amazon
CloudSearch 開発者ガイド』の「式の設定」を参照してください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
Deployed
デプロイされた設定を表示するか(true)、または任意の保留中の変更を含めるか(false)。
デフォルトは false です。
タイプ: ブール値
必須: いいえ
DomainName
説明するドメインの名前。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
ExpressionNames.member.N
DescribeExpressions の応答を指定された式に制限します。指定しない場合、すべての式が
表示されます。
型: 文字列のリスト
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: いいえ
レスポンス要素
以下の要素が DescribeExpressionsResult という名前の構造体で返されます。
式
ドメインに設定された式。
型: ExpressionStatus (p. 219) リスト
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
API Version 2013-01-01
183
Amazon CloudSearch 開発者ガイド
アクション
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
184
Amazon CloudSearch 開発者ガイド
アクション
DescribeIndexFields
説明
検索ドメイン用に設定されたインデックスフィールドに関する情報を取得します。名前により特定の
フィールドに制限できます。デフォルトでは、すべてのフィールドが表示され、設定の保留中の変
更がすべて含まれます。アクティブな設定を表示し、保留中の変更を除外するには、Deployed オプ
ションを true に設定します。詳細については、『Amazon CloudSearch 開発者ガイド』の「ドメイ
ン情報の取得」を参照してください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
Deployed
デプロイされた設定を表示するか(true)、または任意の保留中の変更を含めるか(false)。
デフォルトは false です。
タイプ: ブール値
必須: いいえ
DomainName
説明するドメインの名前。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
FieldNames.member.N
説明するインデックスフィールドのリスト。指定しない場合、設定されたすべてのインデックス
フィールドの情報が返されます。
型: 文字列のリスト
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: いいえ
レスポンス要素
以下の要素が DescribeIndexFieldsResult という名前の構造体で返されます。
IndexFields
ドメインに設定されたインデックスフィールド。
型: IndexFieldStatus (p. 221) リスト
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
API Version 2013-01-01
185
Amazon CloudSearch 開発者ガイド
アクション
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
186
Amazon CloudSearch 開発者ガイド
アクション
DescribeScalingParameters
説明
ドメインに設定されているスケーリングパラメータを取得します。ドメインのスケーリングパラ
メータは、目的の検索インスタンスタイプとレプリケーションの数を指定します。詳細について
は、Amazon CloudSearch 開発者ガイドの「Configuring Scaling Options」を参照してください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
DomainName
ドメイン名を表す文字列。ドメイン名は、AWS リージョン内のアカウントによって所有される
ドメイン間で一意です。ドメイン名は英数字で始まり、次の文字を含めることができます。a~
z(小文字)、0~9、-(ハイフン)。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
レスポンス要素
以下の要素が DescribeScalingParametersResult という名前の構造体で返されます。
ScalingParameters
検索ドメインのスケーリングパラメータのステータスと設定。
タイプ: ScalingParametersStatus (p. 228)
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
187
Amazon CloudSearch 開発者ガイド
アクション
DescribeServiceAccessPolicies
説明
ドメインのドキュメントと検索エンドポイントへのアクセスを制御するアクセスポリシーに関する情
報を取得します。デフォルトでは、保留中の変更を含む設定を表示します。アクティブな設定を表示
し、保留中の変更を除外するには、Deployed オプションを true に設定します。詳細については、
『Amazon CloudSearch 開発者ガイド』の「検索ドメインのアクセスの設定」を参照してください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
Deployed
デプロイされた設定を表示するか(true)、または任意の保留中の変更を含めるか(false)。
デフォルトは false です。
タイプ: ブール値
必須: いいえ
DomainName
説明するドメインの名前。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
レスポンス要素
以下の要素が DescribeServiceAccessPoliciesResult という名前の構造体で返されます。
AccessPolicies
リクエストで指定されたドメインに設定されているアクセスルール。
タイプ: AccessPoliciesStatus (p. 204)
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
188
Amazon CloudSearch 開発者ガイド
アクション
API Version 2013-01-01
189
Amazon CloudSearch 開発者ガイド
アクション
DescribeSuggesters
説明
ドメインに設定されたサジェスタを取得します。サジェスタによって、ユーザーがクエリの入力を完
了する前に、一致する可能性のある候補を表示できます。名前により特定のサジェストに制限できま
す。デフォルトでは、すべてのサジェスタが表示され、設定の保留中の変更がすべて含まれます。ア
クティブな設定を表示し、保留中の変更を除外するには、Deployed オプションを true に設定しま
す。詳細については、『Amazon CloudSearch 開発者ガイド』の「Amazon CloudSearch での自動入
力候補の取得」をご覧ください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
Deployed
デプロイされた設定を表示するか(true)、または任意の保留中の変更を含めるか(false)。
デフォルトは false です。
タイプ: ブール値
必須: いいえ
DomainName
説明するドメインの名前。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
SuggesterNames.member.N
説明する必要があるサジェスタ。
型: 文字列のリスト
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: いいえ
レスポンス要素
以下の要素が DescribeSuggestersResult という名前の構造体で返されます。
サジェスタ
リクエストで指定されたドメインに設定されているサジェスタ。
型: SuggesterStatus (p. 230) リスト
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
API Version 2013-01-01
190
Amazon CloudSearch 開発者ガイド
アクション
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
191
Amazon CloudSearch 開発者ガイド
アクション
IndexDocuments
説明
検索ドメインに、最新のインデックス作成オプションを使用してドキュメントのインデックス作成を
開始するように指示します。OptionStatus (p. 227) が RequiresIndexDocuments のオプションを
アクティブ化するには、このオペレーションを呼び出す必要があります。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
DomainName
ドメイン名を表す文字列。ドメイン名は、AWS リージョン内のアカウントによって所有される
ドメイン間で一意です。ドメイン名は英数字で始まり、次の文字を含めることができます。a~
z(小文字)、0~9、-(ハイフン)。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
レスポンス要素
以下の要素が IndexDocumentsResult という名前の構造体で返されます。
FieldNames
現在インデックスが作成されているフィールドの名前。
型: 文字列のリスト
長さの制限: 最小長は 1 です。最大長は 64 です。
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
192
Amazon CloudSearch 開発者ガイド
アクション
ListDomainNames
説明
アカウントが所有するすべての検索ドメインをリストします。
レスポンス要素
以下の要素が ListDomainNamesResult という名前の構造体で返されます。
DomainNames
アカウントが所有する検索ドメインの名前。
型: String から String へのマッピング
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
API Version 2013-01-01
193
Amazon CloudSearch 開発者ガイド
アクション
UpdateAvailabilityOptions
説明
ドメインの可用性オプションを設定します。マルチ AZ オプションを有効にすると、Amazon
CloudSearch ドメインが同じリージョンの追加のアベイラビリティーゾーンに展開され、サービス障
害時の耐障害性が強化されます。マルチ AZ オプションの変更が反映されるまで、約 30 分かかりま
す。詳細については、Amazon CloudSearch 開発者ガイドの「Configuring Availability Options」を参
照してください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
DomainName
ドメイン名を表す文字列。ドメイン名は、AWS リージョン内のアカウントによって所有される
ドメイン間で一意です。ドメイン名は英数字で始まり、次の文字を含めることができます。a~
z(小文字)、0~9、-(ハイフン)。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
マルチ AZ
既存の検索ドメインを 2 番目のアベイラビリティゾーンに展開するには、マルチ AZ オプション
を true に設定します。同様に、マルチ AZ オプションを false に設定することにより、マルチ
AZ 機能をオフにして、単一のアベイラビリティーゾーンにドメインをダウングレードすることが
できます。
タイプ: ブール値
必須: はい
レスポンス要素
以下の要素が UpdateAvailabilityOptionsResult という名前の構造体で返されます。
AvailabilityOptions
新しく設定した可用性オプション。ドメインでマルチ AZ が有効であるかどうかを示します。
タイプ: AvailabilityOptionsStatus (p. 207)
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
DisabledOperation
リクエストは、有効になっていない操作を試行したため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
194
Amazon CloudSearch 開発者ガイド
アクション
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
InvalidType
リクエストは、無効な型定義を指定したため却下されました。
HTTP ステータスコード: 409
LimitExceeded
リクエストは、既にリソースの制限に到達したため却下されました。
HTTP ステータスコード: 409
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
195
Amazon CloudSearch 開発者ガイド
アクション
ListTags
説明
Amazon CloudSearch ドメイン用のすべてのリソースタグが表示されます。このアクションには GET
HTTP メソッドを使用します。詳細については、『Amazon CloudSearch 開発者ガイド』の「Amazon
CloudSearch ドメインのタグ付け (p. 56)」を参照してください。
リクエストパラメータ
ARN
リソースタグを添付する Amazon CloudSearch ドメインの Amazon Resource Name (ARN)。詳細に
ついては、『AWS Identity and Access Management』の「IAM ARN」を参照してください。
型: 文字列
必須: はい
レスポンス要素
TagList
指定された Amazon CloudSearch ドメインのリソースタグのリスト。
タイプ: TagList、ドメイン用にリソースタグを指定する文字列のリスト。
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
LimitExceededException
リクエストに、Amazon CloudSearch ドメインのリソースで許可されている以上の数とタイプが
含まれています。HTTP ステータスコード 409 が返されます。
ValidationException
リクエストに無効な入力が含まれているか、必要な入力が欠落しています。HTTP ステータス
コード 400 が返されます。
InternalException
内部サービスエラーにより、リクエスト処理が失敗しました。HTTP ステータスコード 500 が返
されます。
例
次は us-west-2 リージョンの logs Amazon CloudSearch ドメインに添付されるタグのリストを表示
する例です。
GET https://cloudsearch.us-west-2.amazonaws.com?
Action=ListTags&ARN=arn:aws:cloudsearch:us-west-2:408853051459:domain/
logs&Version=2013-01-01
オペレーションは、次のレスポンスを返します。
<ListTagsResponse xmlns="http://cloudsearch.amazonaws.com/doc/2013-01-01/">
<ListTagsResult>
API Version 2013-01-01
196
Amazon CloudSearch 開発者ガイド
アクション
<TagList>
<member>
<Value>environment</Value>
<Key>production</Key>
</member>
</TagList>
</ListTagsResult>
<ResponseMetadata>
<RequestId>29948ea4-d1dc-11e5-8914-51ab8964f46d</RequestId>
</ResponseMetadata>
</ListTagsResponse>
API Version 2013-01-01
197
Amazon CloudSearch 開発者ガイド
アクション
RemoveTags
説明
Amazon ES ドメインから指定したリソースタグを削除します。詳細については、『Amazon
CloudSearch 開発者ガイド』の「Amazon CloudSearch ドメインのタグ付け (p. 56)」を参照してくだ
さい。このアクションには GET HTTP メソッドを使用します。
リクエストパラメータ
ARN
リソースタグを添付する Amazon CloudSearch ドメインの Amazon Resource Name (ARN)。詳細に
ついては、『AWS Identity and Access Management』の「IAM ARN」を参照してください。
型: 文字列
必須: はい
TagKeys
Amazon CloudSearch ドメインから削除するリソースタグの TagKey 要素のリスト。TagKey 要素
は、リソースタグの名前を含む最大 128 文字の文字列です。
レスポンス要素
このオペレーションでは、レスポンス要素は返しません。
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
ValidationException
リクエストに無効な入力が含まれているか、必要な入力が欠落しています。HTTP ステータス
コード 400 が返されます。
InternalException
内部サービスエラーにより、リクエスト処理が失敗しました。HTTP ステータスコード 500 が返
されます。
例
次の例は us-west-2 リージョンの logs Amazon CloudSearch ドメインから project のタグキーを伴
うリソースタグを削除します。
GET https://cloudsearch.us-west-2.amazonaws.com?
Action=RemoveTags&ARN=arn:aws:cloudsearch:us-west-2:408853051459:domain/
logs&TagKeys.member.1='environment'&Version=2013-01-01
レスポンス
<RemoveTagsResponse xmlns="http://cloudsearch.amazonaws.com/doc/2013-01-01/">
<ResponseMetadata>
<RequestId>2bf75153-d1f1-11e5-8f64-f17d14275591</RequestId>
</ResponseMetadata>
API Version 2013-01-01
198
Amazon CloudSearch 開発者ガイド
アクション
</RemoveTagsResponse>
API Version 2013-01-01
199
Amazon CloudSearch 開発者ガイド
アクション
UpdateScalingParameters
説明
ドメインのスケーリングパラメーターを設定します。ドメインのスケーリングパラメータは、目的
の検索インスタンスタイプとレプリケーションの数を指定します。Amazon CloudSearch ではただ
し、必要なインスタンスの種類とレプリケーションの数ではなく、データとトラフィックの量に基
づいて、ドメインが自動的にスケーリングされます。マルチ AZ オプションを有効にした場合、こ
れらの値によりアベイラビリティーゾーンごとに使用されるリソースが決まります。詳細について
は、Amazon CloudSearch 開発者ガイドの「Configuring Scaling Options」を参照してください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
DomainName
ドメイン名を表す文字列。ドメイン名は、AWS リージョン内のアカウントによって所有される
ドメイン間で一意です。ドメイン名は英数字で始まり、次の文字を含めることができます。a~
z(小文字)、0~9、-(ハイフン)。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
ScalingParameters
各インデックスパーティションの必要なインスタンスタイプと必要なレプリカ数。
タイプ: ScalingParameters (p. 228)
必須: はい
レスポンス要素
以下の要素が UpdateScalingParametersResult という名前の構造体で返されます。
ScalingParameters
検索ドメインのスケーリングパラメータのステータスと設定。
タイプ: ScalingParametersStatus (p. 228)
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
InvalidType
リクエストは、無効な型定義を指定したため却下されました。
API Version 2013-01-01
200
Amazon CloudSearch 開発者ガイド
アクション
HTTP ステータスコード: 409
LimitExceeded
リクエストは、既にリソースの制限に到達したため却下されました。
HTTP ステータスコード: 409
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
201
Amazon CloudSearch 開発者ガイド
アクション
UpdateServiceAccessPolicies
説明
ドメインのドキュメントおよび検索エンドポイントに対するアクセスを制御するアクセスルールを設
定します。詳細については、「Amazon CloudSearch ドメインの設定」を参照してください。
リクエストパラメータ
すべてのアクションで使用される一般的なパラメータの詳細については、「共通パラメー
タ (p. 233)」を参照してください。
AccessPolicies
設定するアクセスルール。このルールは、既存のルールを置き換えます。
型: 文字列
必須: はい
DomainName
ドメイン名を表す文字列。ドメイン名は、AWS リージョン内のアカウントによって所有される
ドメイン間で一意です。ドメイン名は英数字で始まり、次の文字を含めることができます。a~
z(小文字)、0~9、-(ハイフン)。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
レスポンス要素
以下の要素が UpdateServiceAccessPoliciesResult という名前の構造体で返されます。
AccessPolicies
ドメイン用に設定されたアクセスルール。
タイプ: AccessPoliciesStatus (p. 204)
エラー
すべてのアクションに共通のエラーについては、「共通エラー (p. 235)」を参照してください。
基本
リクエストの処理中にエラーが発生しました。
HTTP ステータスコード: 400
社内
リクエストの処理中に内部エラーが発生しました。この問題が解決しない場合は、サービス正常
性ダッシュボードから問題を報告します。
HTTP ステータスコード: 500
InvalidType
リクエストは、無効な型定義を指定したため却下されました。
HTTP ステータスコード: 409
API Version 2013-01-01
202
Amazon CloudSearch 開発者ガイド
データ型
LimitExceeded
リクエストは、既にリソースの制限に到達したため却下されました。
HTTP ステータスコード: 409
ResourceNotFound
リクエストは、存在しないリソースを参照しようとしたため却下されました。
HTTP ステータスコード: 409
データ型
Amazon CloudSearch の設定サービス API には、さまざまなアクションが使用するデータ型がいくつ
か含まれています。このセクションでは、各データ型について詳しく説明します。
Note
レスポンス内での各要素の順序は保証されていません。アプリケーションは特定の順序を想
定するべきではありません。
以下のデータ型がサポートされています。
• AccessPoliciesStatus (p. 204)
• AnalysisOptions (p. 205)
• AnalysisScheme (p. 206)
• AnalysisSchemeStatus (p. 206)
• AvailabilityOptionsStatus (p. 207)
• BuildSuggestersResult (p. 207)
• CreateDomainResult (p. 207)
• DateArrayOptions (p. 208)
• DateOptions (p. 208)
• DefineAnalysisSchemeResult (p. 209)
• DefineExpressionResult (p. 210)
• DefineIndexFieldResult (p. 210)
• DefineSuggesterResult (p. 210)
• DeleteAnalysisSchemeResult (p. 210)
• DeleteDomainResult (p. 211)
• DeleteExpressionResult (p. 211)
• DeleteIndexFieldResult (p. 211)
• DeleteSuggesterResult (p. 212)
• DescribeAnalysisSchemesResult (p. 212)
• DescribeAvailabilityOptionsResult (p. 212)
• DescribeDomainsResult (p. 212)
• DescribeExpressionsResult (p. 213)
• DescribeIndexFieldsResult (p. 213)
• DescribeScalingParametersResult (p. 213)
• DescribeServiceAccessPoliciesResult (p. 214)
• DescribeSuggestersResult (p. 214)
• DocumentSuggesterOptions (p. 214)
• DomainStatus (p. 215)
API Version 2013-01-01
203
Amazon CloudSearch 開発者ガイド
データ型
• DoubleArrayOptions (p. 217)
• DoubleOptions (p. 217)
• 式 (p. 218)
• ExpressionStatus (p. 219)
• IndexDocumentsResult (p. 219)
• IndexField (p. 219)
• IndexFieldStatus (p. 221)
• IntArrayOptions (p. 222)
• IntOptions (p. 223)
• LatLonOptions (p. 223)
• 制限 (p. 224)
• ListDomainNamesResult (p. 225)
• LiteralArrayOptions (p. 225)
• LiteralOptions (p. 226)
• BuildSuggestersResult (p. 207)
• OptionStatus (p. 227)
• ScalingParameters (p. 228)
• ScalingParametersStatus (p. 228)
• ServiceEndpoint (p. 229)
• Suggester (p. 229)
• SuggesterStatus (p. 230)
• TextArrayOptions (p. 230)
• TextOptions (p. 231)
• UpdateAvailabilityOptionsResult (p. 232)
• UpdateScalingParametersResult (p. 232)
• UpdateServiceAccessPoliciesResult (p. 233)
AccessPoliciesStatus
説明
ドメインのドキュメントエンドポイントおよび検索エンドポイントについて設定されているアクセス
ルール、およびそれらのルールの現在のステータス。
目次
オプション
ドメインのドキュメントエンドポイントまたは検索サービスエンドポイントのアクセスルール。
詳細については、『Amazon CloudSearch 開発者ガイド』の「検索ドメインのアクセスの設定」
を参照してください。ポリシードキュメントの最大サイズは 100 KB です。
型: 文字列
必須: はい
Status
ドメイン設定オプションのステータス。
タイプ: OptionStatus (p. 227)
必須: はい
API Version 2013-01-01
204
Amazon CloudSearch 開発者ガイド
データ型
AnalysisOptions
説明
分析スキームのシノニム、ストップワード、語幹解釈のオプション。日本語のトークン分割ディク
ショナリを含みます。
目次
AlgorithmicStemming
実行するアルゴリズムによるステミングのレベル。none、minimal、light、または full。使
用可能なレベルは言語によって異なります。詳細については、『Amazon CloudSearch 開発者ガ
イド』の「言語固有のテキスト処理設定」を参照してください。
型: 文字列
有効な値: none | minimal | light | full
必須: いいえ
JapaneseTokenizationDictionary
日本語トークン分割の用語、トークン、読みおよび品詞のコレクションを含む JSON 配列。日本
語トークン分割ディクショナリは、指定された用語のデフォルトのトークン分割を上書きできま
す。これは日本語の言語フィールドにのみ有効です。
型: 文字列
必須: いいえ
StemmingDictionary
文字列:値のペアのコレクションを含む JSON のオブジェクトで、それぞれが用語をその語幹に
マッピングします。("{"term1": "stem1", "term2": "stem2", "term3": "stem3"}"
など)。アルゴリズム語幹解釈に加えて、語幹解釈ディクショナリが適用されます。これによっ
て、アルゴリズム語幹解釈の結果をオーバーライドし、特定の語幹解釈の過剰または不足のケー
スを修正できます。語幹解釈ディクショナリの最大サイズは 500 KB です。
型: 文字列
必須: いいえ
Stopwords
インデックス作成時および検索時に無視する用語の JSON 配列。("["a", "an", "the",
"of"]" など)。ストップワードディクショナリでは、無視する各単語を明示的にリストする必要
があります。ワイルドカードや正規表現はサポートされていません。
型: 文字列
必須: いいえ
Synonyms
シノニムグループおよびエイリアスを定義する JSON オブジェクト。シノニムグループは配列の
配列で、各サブ配列は、グループ内の各用語がグループ内の他のすべての用語のシノニムである
と見なされる用語のグループです。エイリアス値は、文字列:値のペアのコレクションを含むオブ
ジェクトで、文字列が用語を指定し、値の配列がその用語のエイリアスをそれぞれ指定します。
エイリアスは指定した用語のシノニムと見なされますが、用語はエイリアスのシノニムとは見な
されません。シノニムの指定について詳しくは、『Amazon CloudSearch 開発者ガイド』の「シ
ノニム」を参照してください。
型: 文字列
必須: いいえ
API Version 2013-01-01
205
Amazon CloudSearch 開発者ガイド
データ型
AnalysisScheme
説明
分析スキームの設定情報。各分析スキームに一意の名前があ
り、処理するテキストの言語を指定します。分析スキームに
は、Synonyms、Stopwords、StemmingDictionary、JapaneseTokenizationDictionary およ
び AlgorithmicStemming の各オプションを設定できます。
目次
AnalysisOptions
分析スキームのシノニム、ストップワード、語幹解釈のオプション。日本語のトークン分割ディ
クショナリを含みます。
タイプ: AnalysisOptions (p. 205)
必須: いいえ
AnalysisSchemeLanguage
IETF RFC 4646 言語コード。または、複数の言語の場合は mul。
型: 文字列
有効な値: ar | bg | ca | cs | da | de | el | en | es | eu | fa | fi | fr |
ga | gl | he | hi | hu | hy | id | it | ja | ko | lv | mul | nl | no | pt
| ro | ru | sv | th | tr | zh-Hans | zh-Hant
必須: はい
AnalysisSchemeName
名前は英数字で始まっている必要があり、次の文字を含めることができます。a~z (小文字)、0~
9、_ (下線)。
型: 文字列
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: はい
AnalysisSchemeStatus
説明
AnalysisScheme のステータスと設定。
目次
オプション
分析スキームの設定情報。各分析スキームに一意の名前があ
り、処理するテキストの言語を指定します。分析スキームに
は、Synonyms、Stopwords、StemmingDictionary、JapaneseTokenizationDictionary
および AlgorithmicStemming の各オプションを設定できます。
タイプ: AnalysisScheme (p. 206)
必須: はい
Status
ドメイン設定オプションのステータス。
API Version 2013-01-01
206
Amazon CloudSearch 開発者ガイド
データ型
タイプ: OptionStatus (p. 227)
必須: はい
AvailabilityOptionsStatus
説明
ドメインの可用性オプションのステータスと設定。
目次
オプション
ドメインに設定された可用性オプション。
タイプ: ブール値
必須: はい
Status
ドメイン設定オプションのステータス。
タイプ: OptionStatus (p. 227)
必須: はい
BuildSuggestersResult
説明
BuildSuggester リクエストの結果。候補に使用されるフィールドのリストが含まれます。
目次
FieldNames
フィールド名のリストです。
型: 文字列のリスト
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: いいえ
CreateDomainResult
説明
CreateDomainRequest の結果。新しく作成されたドメインのステータスが含まれます。
目次
DomainStatus
検索ドメインの現在のステータス。
タイプ: DomainStatus (p. 215)
必須: いいえ
API Version 2013-01-01
207
Amazon CloudSearch 開発者ガイド
データ型
DateArrayOptions
説明
日付の配列を格納するフィールドのオプション。IndexFieldType が date-array 型のフィールド
を指定している場合に使用されます。すべてのオプションはデフォルトで有効になっています。
目次
DefaultValue
ドキュメントでこのフィールドが指定されていない場合に、フィールドに使用される値。
型: 文字列
長さの制限: 最小長は 0 です。最大長は 1024 です。
必須: いいえ
FacetEnabled
フィールドのファセット情報を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
ReturnEnabled
検索結果でフィールドの内容を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
SearchEnabled
フィールドの内容が検索可能かどうか。
タイプ: ブール値
必須: いいえ
SourceFields
フィールドにマッピングするソースフィールドのリスト。
型: 文字列
必須: いいえ
DateOptions
説明
日付フィールドのオプション。日付と時刻は、IETF RFC3339: yyyy-mm-ddT00:00:00Z に従っ
て、UTC(協定世界時)で指定されます。IndexFieldType が date 型のフィールドを指定している
場合に使用されます。すべてのオプションはデフォルトで有効になっています。
目次
DefaultValue
ドキュメントでこのフィールドが指定されていない場合に、フィールドに使用される値。
型: 文字列
長さの制限: 最小長は 0 です。最大長は 1024 です。
API Version 2013-01-01
208
Amazon CloudSearch 開発者ガイド
データ型
必須: いいえ
FacetEnabled
フィールドのファセット情報を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
ReturnEnabled
検索結果でフィールドの内容を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
SearchEnabled
フィールドの内容が検索可能かどうか。
タイプ: ブール値
必須: いいえ
SortEnabled
フィールドを使用して検索結果をソートできるかどうか。
タイプ: ブール値
必須: いいえ
SourceField
インデックスフィールドの名前を表す文字列。CloudSearch は、動的フィールドと同様に通常の
インデックスフィールドをサポートします。動的フィールドの名前は、ワイルドカードで始まる
か終了するパターンを定義します。通常のインデックスフィールドにもマッピングされないが動
的フィールドのパターンに一致するドキュメントフィールドは、動的フィールドのインデックス
オプションで設定されます。
通常のフィールド名は英数字で始まり、次の文字を含めることができます。a~z (小文字)、0~
9、_ (下線)。動的フィールド名はワイルドカード (*) で始まるか終わる必要があります。ワイルド
カードはまた、動的フィールド名の唯一の文字になることがあります。複数のワイルドカードお
よび文字列内に組み込まれたワイルドカードはサポートされていません。
score という名前は予約済みのため、フィールド名として使用できません。ドキュメントの ID
を参照するには、_id という名前を使用できます。
型: 文字列
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: いいえ
DefineAnalysisSchemeResult
説明
DefineAnalysisScheme リクエストの結果。新しく設定された分析スキームのステータスが含まれ
ます。
目次
AnalysisScheme
AnalysisScheme のステータスと設定。
API Version 2013-01-01
209
Amazon CloudSearch 開発者ガイド
データ型
タイプ: AnalysisSchemeStatus (p. 206)
必須: はい
DefineExpressionResult
説明
DefineExpression リクエストの結果。新しく設定された式のステータスが含まれます。
目次
式
Expression の値および現在のステータス。
タイプ: ExpressionStatus (p. 219)
必須: はい
DefineIndexFieldResult
説明
DefineIndexField リクエストの結果。新しく設定されたインデックスフィールドのステータスが
含まれます。
目次
IndexField
IndexField の値および現在のステータス。
タイプ: IndexFieldStatus (p. 221)
必須: はい
DefineSuggesterResult
説明
DefineSuggester リクエストの結果。新しく設定されたサジェスタのステータスが含まれます。
目次
Suggester
Suggester の値および現在のステータス。
タイプ: SuggesterStatus (p. 230)
必須: はい
DeleteAnalysisSchemeResult
説明
DeleteAnalysisScheme リクエストの結果。削除された分析スキームのステータスが含まれます。
API Version 2013-01-01
210
Amazon CloudSearch 開発者ガイド
データ型
目次
AnalysisScheme
削除中の分析スキームのステータス。
タイプ: AnalysisSchemeStatus (p. 206)
必須: はい
DeleteDomainResult
説明
DeleteDomain リクエストの結果。新たに削除されたドメインのステータスが含まれます。ドメイン
がすでに完全に削除されている場合はステータスはありません。
目次
DomainStatus
検索ドメインの現在のステータス。
タイプ: DomainStatus (p. 215)
必須: いいえ
DeleteExpressionResult
説明
DeleteExpression リクエストの結果。削除される式を指定します。
目次
式
削除中の式のステータス。
タイプ: ExpressionStatus (p. 219)
必須: はい
DeleteIndexFieldResult
説明
DeleteIndexField リクエストの結果。
目次
IndexField
削除されるインデックスフィールドのステータス。
タイプ: IndexFieldStatus (p. 221)
必須: はい
API Version 2013-01-01
211
Amazon CloudSearch 開発者ガイド
データ型
DeleteSuggesterResult
説明
DeleteSuggester リクエストの結果。削除されたサジェスタのステータスが含まれます。
目次
Suggester
削除中のサジェスタのステータス。
タイプ: SuggesterStatus (p. 230)
必須: はい
DescribeAnalysisSchemesResult
説明
DescribeAnalysisSchemes リクエストの結果。リクエストで指定されたドメインに対して設定さ
れた分析スキームが含まれます。
目次
AnalysisSchemes
分析スキームの説明。
型: AnalysisSchemeStatus (p. 206) リスト
必須: はい
DescribeAvailabilityOptionsResult
説明
DescribeAvailabilityOptions リクエストの結果。リクエストで指定されたドメインに対してマ
ルチ AZ オプションが有効になっているかどうかを示します。
目次
AvailabilityOptions
ドメインに設定された可用性オプション。ドメインでマルチ AZ が有効であるかどうかを示しま
す。
タイプ: AvailabilityOptionsStatus (p. 207)
必須: いいえ
DescribeDomainsResult
説明
DescribeDomains リクエストの結果。リクエストで指定されたドメインまたはアカウントが所有す
るすべてのドメインのステータスが含まれます。
API Version 2013-01-01
212
Amazon CloudSearch 開発者ガイド
データ型
目次
DomainStatusList
リクエストされた各ドメインのステータスを格納するリスト。
型: DomainStatus (p. 215) リスト
必須: はい
DescribeExpressionsResult
説明
DescribeExpressions リクエストの結果。リクエストで指定されたドメインに対して設定された式
が含まれます。
目次
式
ドメインに設定された式。
型: ExpressionStatus (p. 219) リスト
必須: はい
DescribeIndexFieldsResult
説明
DescribeIndexFields リクエストの結果。リクエストで指定されたドメインに対して設定されたイ
ンデックスフィールドを含みます。
目次
IndexFields
ドメインに設定されたインデックスフィールド。
型: IndexFieldStatus (p. 221) リスト
必須: はい
DescribeScalingParametersResult
説明
DescribeScalingParameters リクエストの結果。リクエストで指定されたドメインに設定されて
いるスケーリングパラメータが含まれます。
目次
ScalingParameters
検索ドメインのスケーリングパラメータのステータスと設定。
タイプ: ScalingParametersStatus (p. 228)
API Version 2013-01-01
213
Amazon CloudSearch 開発者ガイド
データ型
必須: はい
DescribeServiceAccessPoliciesResult
説明
DescribeServiceAccessPolicies リクエストの結果。
目次
AccessPolicies
リクエストで指定されたドメインに設定されているアクセスルール。
タイプ: AccessPoliciesStatus (p. 204)
必須: はい
DescribeSuggestersResult
説明
DescribeSuggesters リクエストの結果。
目次
サジェスタ
リクエストで指定されたドメインに設定されているサジェスタ。
型: SuggesterStatus (p. 230) リスト
必須: はい
DocumentSuggesterOptions
説明
検索サジェスタのオプション。
目次
FuzzyMatching
文字列の一致候補を示すときに使用する曖昧さのレベル。none、low、または high。none の場
合、指定された文字列は正確なプレフィックスとして処理されます。low の場合、候補は指定さ
れた文字列との異なる箇所が 1 文字以内である必要があります。high の場合、候補は 2 文字まで
異なることができます。デフォルトは none です。
型: 文字列
有効な値: none | low | high
必須: いいえ
SortExpression
ソート方法を制御するために各候補のスコアを計算する式。スコアは最も近い整数に丸められ、
下限が 0 で上限が 2^31-1 です。ドキュメントの関連性スコアは提案には計算されていないため、
API Version 2013-01-01
214
Amazon CloudSearch 開発者ガイド
データ型
ソート式は _score 値を参照することはできません。数値フィールドまたは既存の式を使用して
候補をソートするには、フィールドまたは式の名前を指定します。サジェスタ用の式が設定され
ていない場合、最も一致している候補から順に並べられます。
型: 文字列
必須: いいえ
SourceField
候補として使用するインデックスフィールドの名前。
型: 文字列
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: はい
DomainStatus
説明
検索ドメインの現在のステータス。
目次
ARN
検索ドメインの Amazon リソースネーム(ARN)を返します。詳細については、『AWS Identity
and Access Management の使用』の「IAM エンティティのための ID」を参照してください。
型: 文字列
必須: いいえ
作成
検索ドメインが作成された場合は true。CreateDomain (p. 160) が呼び出されたときに、
ドメインを初期化するには数分かかる場合があります。新しく作成された検索ドメインが
DescribeDomains (p. 182) から返されますが、ドメインの作成が完了するまで Created の値は
false です。
タイプ: ブール値
必須: いいえ
削除済み
検索ドメインが削除された場合は true。DeleteDomain (p. 171) が呼び出されたときに、システム
は検索ドメイン専用のリソースをクリーンアップする必要があります。新しく削除された検索ド
メインが DescribeDomains (p. 182) から返されますが、リソースのクリーンアップが完了するま
で数分間 IsDeleted の値は true です。
タイプ: ブール値
必須: いいえ
DocService
検索ドメイン内のドキュメントを更新するためのサービスエンドポイント。
タイプ: ServiceEndpoint (p. 229)
必須: いいえ
DomainId
内部で生成されたドメインの一意の識別子。
API Version 2013-01-01
215
Amazon CloudSearch 開発者ガイド
データ型
型: 文字列
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: はい
DomainName
ドメイン名を表す文字列。ドメイン名は、AWS リージョン内のアカウントによって所有される
ドメイン間で一意です。ドメイン名は英数字で始まり、次の文字を含めることができます。a~
z(小文字)、0~9、-(ハイフン)。
型: 文字列
長さの制限: 最小長は 3 です。最大長は 28 です。
必須: はい
制限
タイプ: 制限 (p. 224)
必須: いいえ
Processing
現在のドメインの設定をアクティブ化する処理を実行中である場合は true。
タイプ: ブール値
必須: いいえ
RequiresIndexDocuments
現在のドメインの設定をアクティブ化するために IndexDocuments (p. 192) を呼び出す必要があ
る場合は true。
タイプ: ブール値
必須: はい
SearchInstanceCount
検索リクエストを処理するために使用できる検索インスタンスの数。
タイプ: 整数
必須: いいえ
SearchInstanceType
検索リクエストを処理するために使用されるインスタンスタイプ。
型: 文字列
必須: いいえ
SearchPartitionCount
検索インデックスが分散されるパーティションの数。
タイプ: 整数
必須: いいえ
SearchService
検索ドメインからの検索結果をリクエストするためのサービス エンドポイント。
タイプ: ServiceEndpoint (p. 229)
必須: いいえ
API Version 2013-01-01
216
Amazon CloudSearch 開発者ガイド
データ型
DoubleArrayOptions
説明
倍精度 64 ビット浮動小数点値の配列を格納するフィールドのオプション。IndexFieldType が
double-array 型のフィールドを指定している場合に使用されます。すべてのオプションはデフォル
トで有効になっています。
目次
DefaultValue
ドキュメントでこのフィールドが指定されていない場合に、フィールドに使用される値。
タイプ: 倍精度浮動小数点数
必須: いいえ
FacetEnabled
フィールドのファセット情報を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
ReturnEnabled
検索結果でフィールドの内容を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
SearchEnabled
フィールドの内容が検索可能かどうか。
タイプ: ブール値
必須: いいえ
SourceFields
フィールドにマッピングするソースフィールドのリスト。
型: 文字列
必須: いいえ
DoubleOptions
説明
倍精度 64 ビット浮動小数点フィールドのオプション。IndexFieldType が double 型のフィールド
を指定している場合に使用されます。すべてのオプションはデフォルトで有効になっています。
目次
DefaultValue
ドキュメントでこのフィールドが指定されていない場合に、フィールドに使用される値。この
フィールドを式に使用していて、しかもそのフィールドがすべてのドキュメントに存在するとは
限らない場合には重要です。
タイプ: 倍精度浮動小数点数
必須: いいえ
API Version 2013-01-01
217
Amazon CloudSearch 開発者ガイド
データ型
FacetEnabled
フィールドのファセット情報を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
ReturnEnabled
検索結果でフィールドの内容を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
SearchEnabled
フィールドの内容が検索可能かどうか。
タイプ: ブール値
必須: いいえ
SortEnabled
フィールドを使用して検索結果をソートできるかどうか。
タイプ: ブール値
必須: いいえ
SourceField
そのフィールドにマッピングするソースフィールドの名前。
型: 文字列
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: いいえ
式
説明
検索時に評価できる名前付きの式。検索結果をソートしたり、他の式を定義したり、検索結果内に計
算後の情報を返したりするために使用できます。
目次
ExpressionName
名前は英数字で始まっている必要があり、次の文字を含めることができます。a~z (小文字)、0~
9、_ (下線)。
型: 文字列
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: はい
ExpressionValue
検索リクエストの処理中にソートするために評価される式。Expression 構文は JavaScript の式
に基づいています。詳細については、『Amazon CloudSearch 開発者ガイド』の「式の設定」を
参照してください。
型: 文字列
長さの制限: 最小長は 1 です。最大長は 10240 です。
API Version 2013-01-01
218
Amazon CloudSearch 開発者ガイド
データ型
必須: はい
ExpressionStatus
説明
Expression の値および現在のステータス。
目次
オプション
検索リクエストの処理中にソートするために評価される式。
タイプ: 式 (p. 218)
必須: はい
Status
ドメイン設定オプションのステータス。
タイプ: OptionStatus (p. 227)
必須: はい
IndexDocumentsResult
説明
IndexDocuments リクエストの結果。インデックスを作成するフィールドなど、インデックス作成オ
ペレーションのステータスが含まれます。
目次
FieldNames
現在インデックスが作成されているフィールドの名前。
型: 文字列のリスト
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: いいえ
IndexField
説明
名前、タイプ、オプションなど、インデックスのフィールドの設定情報。サポートされるオプション
は、 IndexFieldType によって異なります。
目次
DateArrayOptions
日付の配列を格納するフィールドのオプション。IndexFieldType が date-array 型のフィー
ルドを指定している場合に使用されます。すべてのオプションはデフォルトで有効になっていま
す。
タイプ: DateArrayOptions (p. 208)
API Version 2013-01-01
219
Amazon CloudSearch 開発者ガイド
データ型
必須: いいえ
DateOptions
日付フィールドのオプション。日付と時刻は、IETF RFC3339: yyyy-mm-ddT00:00:00Z に従っ
て、UTC(協定世界時)で指定されます。IndexFieldType が date 型のフィールドを指定して
いる場合に使用されます。すべてのオプションはデフォルトで有効になっています。
タイプ: DateOptions (p. 208)
必須: いいえ
DoubleArrayOptions
倍精度 64 ビット浮動小数点値の配列を格納するフィールドのオプション。IndexFieldType が
double-array 型のフィールドを指定している場合に使用されます。すべてのオプションはデ
フォルトで有効になっています。
タイプ: DoubleArrayOptions (p. 217)
必須: いいえ
DoubleOptions
倍精度 64 ビット浮動小数点フィールドのオプション。IndexFieldType が double 型のフィー
ルドを指定している場合に使用されます。すべてのオプションはデフォルトで有効になっていま
す。
タイプ: DoubleOptions (p. 217)
必須: いいえ
IndexFieldName
インデックスフィールドの名前を表す文字列。CloudSearch は、動的フィールドと同様に通常の
インデックスフィールドをサポートします。動的フィールドの名前は、ワイルドカードで始まる
か終了するパターンを定義します。通常のインデックスフィールドにもマッピングされないが動
的フィールドのパターンに一致するドキュメントフィールドは、動的フィールドのインデックス
オプションで設定されます。
通常のフィールド名は英数字で始まり、次の文字を含めることができます。a~z (小文字)、0~
9、_ (下線)。動的フィールド名はワイルドカード (*) で始まるか終わる必要があります。ワイルド
カードはまた、動的フィールド名の唯一の文字になることがあります。複数のワイルドカードお
よび文字列内に組み込まれたワイルドカードはサポートされていません。
score という名前は予約済みのため、フィールド名として使用できません。ドキュメントの ID
を参照するには、_id という名前を使用できます。
型: 文字列
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: はい
IndexFieldType
フィールドの型。フィールドの有効なオプションは、フィールドの型に応じて異なります。サ
ポートされているフィールドの型の詳細については、『Amazon CloudSearch 開発者ガイド』の
「Configuring Index Fields」を参照してください。
型: 文字列
有効な値: int | double | literal | text | date | latlon | int-array |
double-array | literal-array | text-array | date-array
必須: はい
IntArrayOptions
64 ビット符号付き整数の配列を格納するフィールドのオプション。IndexFieldType が intarray 型のフィールドを指定している場合に使用されます。すべてのオプションはデフォルトで
有効になっています。
API Version 2013-01-01
220
Amazon CloudSearch 開発者ガイド
データ型
タイプ: IntArrayOptions (p. 222)
必須: いいえ
IntOptions
64 ビット符号付き整数フィールドのオプション。IndexFieldType が int 型のフィールドを指
定している場合に使用されます。すべてのオプションはデフォルトで有効になっています。
タイプ: IntOptions (p. 223)
必須: いいえ
LatLonOptions
latlon 型フィールドのオプション。latlon 型フィールドには緯度と経度の値のペアで位置が格納さ
れます。IndexFieldType が latlon 型のフィールドを指定している場合に使用されます。すべ
てのオプションはデフォルトで有効になっています。
タイプ: LatLonOptions (p. 223)
必須: いいえ
LiteralArrayOptions
リテラル文字列の配列を格納するフィールドのオプション。IndexFieldType が literalarray 型のフィールドを指定している場合に使用されます。すべてのオプションはデフォルトで
有効になっています。
タイプ: LiteralArrayOptions (p. 225)
必須: いいえ
LiteralOptions
リテラルフィールドのオプション。IndexFieldType が literal 型のフィールドを指定してい
る場合に使用されます。すべてのオプションはデフォルトで有効になっています。
タイプ: LiteralOptions (p. 226)
必須: いいえ
TextArrayOptions
テキスト文字列の配列を格納するフィールドのオプション。IndexFieldType が text-array
型のフィールドを指定している場合に使用されます。text-array フィールドは常に検索可能で
す。すべてのオプションはデフォルトで有効になっています。
タイプ: TextArrayOptions (p. 230)
必須: いいえ
TextOptions
テキストフィールドのオプション。IndexFieldType が text 型のフィールドを指定している場
合に使用されます。text フィールドは常に検索可能です。すべてのオプションはデフォルトで有
効になっています。
タイプ: TextOptions (p. 231)
必須: いいえ
IndexFieldStatus
説明
IndexField の値および現在のステータス。
API Version 2013-01-01
221
Amazon CloudSearch 開発者ガイド
データ型
目次
オプション
名前、タイプ、オプションなど、インデックスのフィールドの設定情報。サポートされるオプ
ションは、 IndexFieldType によって異なります。
タイプ: IndexField (p. 219)
必須: はい
Status
ドメイン設定オプションのステータス。
タイプ: OptionStatus (p. 227)
必須: はい
IntArrayOptions
説明
64 ビット符号付き整数の配列を格納するフィールドのオプション。IndexFieldType が int-array
型のフィールドを指定している場合に使用されます。すべてのオプションはデフォルトで有効になっ
ています。
目次
DefaultValue
ドキュメントでこのフィールドが指定されていない場合に、フィールドに使用される値。
タイプ: Long
必須: いいえ
FacetEnabled
フィールドのファセット情報を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
ReturnEnabled
検索結果でフィールドの内容を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
SearchEnabled
フィールドの内容が検索可能かどうか。
タイプ: ブール値
必須: いいえ
SourceFields
フィールドにマッピングするソースフィールドのリスト。
型: 文字列
必須: いいえ
API Version 2013-01-01
222
Amazon CloudSearch 開発者ガイド
データ型
IntOptions
説明
64 ビット符号付き整数フィールドのオプション。IndexFieldType が int 型のフィールドを指定し
ている場合に使用されます。すべてのオプションはデフォルトで有効になっています。
目次
DefaultValue
ドキュメントでこのフィールドが指定されていない場合に、フィールドに使用される値。この
フィールドを式に使用していて、しかもそのフィールドがすべてのドキュメントに存在するとは
限らない場合には重要です。
タイプ: Long
必須: いいえ
FacetEnabled
フィールドのファセット情報を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
ReturnEnabled
検索結果でフィールドの内容を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
SearchEnabled
フィールドの内容が検索可能かどうか。
タイプ: ブール値
必須: いいえ
SortEnabled
フィールドを使用して検索結果をソートできるかどうか。
タイプ: ブール値
必須: いいえ
SourceField
そのフィールドにマッピングするソースフィールドの名前。
型: 文字列
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: いいえ
LatLonOptions
説明
latlon 型フィールドのオプション。latlon 型フィールドには緯度と経度の値のペアで位置が格納されま
す。IndexFieldType が latlon 型のフィールドを指定している場合に使用されます。すべてのオプ
ションはデフォルトで有効になっています。
API Version 2013-01-01
223
Amazon CloudSearch 開発者ガイド
データ型
目次
DefaultValue
ドキュメントでこのフィールドが指定されていない場合に、フィールドに使用される値。
型: 文字列
長さの制限: 最小長は 0 です。最大長は 1024 です。
必須: いいえ
FacetEnabled
フィールドのファセット情報を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
ReturnEnabled
検索結果でフィールドの内容を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
SearchEnabled
フィールドの内容が検索可能かどうか。
タイプ: ブール値
必須: いいえ
SortEnabled
フィールドを使用して検索結果をソートできるかどうか。
タイプ: ブール値
必須: いいえ
SourceField
インデックスフィールドの名前を表す文字列。CloudSearch は、動的フィールドと同様に通常の
インデックスフィールドをサポートします。動的フィールドの名前は、ワイルドカードで始まる
か終了するパターンを定義します。通常のインデックスフィールドにもマッピングされないが動
的フィールドのパターンに一致するドキュメントフィールドは、動的フィールドのインデックス
オプションで設定されます。
通常のフィールド名は英数字で始まり、次の文字を含めることができます。a~z (小文字)、0~
9、_ (下線)。動的フィールド名はワイルドカード (*) で始まるか終わる必要があります。ワイルド
カードはまた、動的フィールド名の唯一の文字になることがあります。複数のワイルドカードお
よび文字列内に組み込まれたワイルドカードはサポートされていません。
score という名前は予約済みのため、フィールド名として使用できません。ドキュメントの ID
を参照するには、_id という名前を使用できます。
型: 文字列
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: いいえ
制限
説明
使用できるアクションドキュメントがありません。
API Version 2013-01-01
224
Amazon CloudSearch 開発者ガイド
データ型
目次
MaximumPartitionCount
タイプ: 整数
必須: はい
MaximumReplicationCount
タイプ: 整数
必須: はい
ListDomainNamesResult
説明
ListDomainNames リクエストの結果。アカウントが所有するドメインのリストを含みます。
目次
DomainNames
アカウントが所有する検索ドメインの名前。
型: String から String へのマッピング
必須: いいえ
LiteralArrayOptions
説明
リテラル文字列の配列を格納するフィールドのオプション。IndexFieldType が literal-array
型のフィールドを指定している場合に使用されます。すべてのオプションはデフォルトで有効になっ
ています。
目次
DefaultValue
ドキュメントでこのフィールドが指定されていない場合に、フィールドに使用される値。
型: 文字列
長さの制限: 最小長は 0 です。最大長は 1024 です。
必須: いいえ
FacetEnabled
フィールドのファセット情報を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
ReturnEnabled
検索結果でフィールドの内容を返すことができるかどうか。
タイプ: ブール値
API Version 2013-01-01
225
Amazon CloudSearch 開発者ガイド
データ型
必須: いいえ
SearchEnabled
フィールドの内容が検索可能かどうか。
タイプ: ブール値
必須: いいえ
SourceFields
フィールドにマッピングするソースフィールドのリスト。
型: 文字列
必須: いいえ
LiteralOptions
説明
リテラルフィールドのオプション。IndexFieldType が literal 型のフィールドを指定している場
合に使用されます。すべてのオプションはデフォルトで有効になっています。
目次
DefaultValue
ドキュメントでこのフィールドが指定されていない場合に、フィールドに使用される値。
型: 文字列
長さの制限: 最小長は 0 です。最大長は 1024 です。
必須: いいえ
FacetEnabled
フィールドのファセット情報を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
ReturnEnabled
検索結果でフィールドの内容を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
SearchEnabled
フィールドの内容が検索可能かどうか。
タイプ: ブール値
必須: いいえ
SortEnabled
フィールドを使用して検索結果をソートできるかどうか。
タイプ: ブール値
必須: いいえ
API Version 2013-01-01
226
Amazon CloudSearch 開発者ガイド
データ型
SourceField
インデックスフィールドの名前を表す文字列。CloudSearch は、動的フィールドと同様に通常の
インデックスフィールドをサポートします。動的フィールドの名前は、ワイルドカードで始まる
か終了するパターンを定義します。通常のインデックスフィールドにもマッピングされないが動
的フィールドのパターンに一致するドキュメントフィールドは、動的フィールドのインデックス
オプションで設定されます。
通常のフィールド名は英数字で始まり、次の文字を含めることができます。a~z (小文字)、0~
9、_ (下線)。動的フィールド名はワイルドカード (*) で始まるか終わる必要があります。ワイルド
カードはまた、動的フィールド名の唯一の文字になることがあります。複数のワイルドカードお
よび文字列内に組み込まれたワイルドカードはサポートされていません。
score という名前は予約済みのため、フィールド名として使用できません。ドキュメントの ID
を参照するには、_id という名前を使用できます。
型: 文字列
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: いいえ
OptionStatus
説明
ドメイン設定オプションのステータス。
目次
CreationDate
このオプションが作成された時刻のタイムスタンプ。
型: DateTime
必須: はい
PendingDeletion
処理が完了したらオプションが削除されることを示します。
タイプ: ブール値
必須: いいえ
State
オプションに対する変更処理の状態。使用できる値:
• RequiresIndexDocuments: オプションの最新の値は、IndexDocuments (p. 192) が呼び出さ
れ、インデックス作成が完了するまでデプロイされません。
• Processing: オプションの最新の値はアクティブ化の処理中です。
• Active: オプションの最新の値が完全にデプロイされています。
• FailedToValidate: オプション値は、ドメインのデータと互換性がないため、データのイン
デックスを作成するために使用できません。オプション値を変更するか、互換性がないドキュ
メントを更新または削除する必要があります。
型: 文字列
有効な値: RequiresIndexDocuments | Processing | Active | FailedToValidate
必須: はい
API Version 2013-01-01
227
Amazon CloudSearch 開発者ガイド
データ型
UpdateDate
このオプションが最後に更新されたときのタイムスタンプ。
型: DateTime
必須: はい
UpdateVersion
このオプションが最後に更新されたときを示す一意の整数。
タイプ: 整数
必須: いいえ
ScalingParameters
説明
各インデックスパーティションの必要なインスタンスタイプと必要なレプリカ数。
目次
DesiredInstanceType
ドメインに事前構成するインスタンスタイプ。たとえば、search.m1.small と指定します。
型: 文字列
有効な値: search.m1.small | search.m3.medium | search.m3.large |
search.m3.xlarge | search.m3.2xlarge
Note
2015 年 2 月以前に作成されたドメインの場合、有効な値に
search.m1.large、search.m2.xlarge、および search.m2.2xlarge が含まれま
す。
必須: いいえ
DesiredPartitionCount
ドメインに事前構成するパーティションの数。インスタンスタイプとして m3.2xlarge を選択し
た場合のみ有効です。
タイプ: 整数
必須: いいえ
DesiredReplicationCount
各インデックスパーティションに事前構成するレプリカの数。
タイプ: 整数
必須: いいえ
ScalingParametersStatus
説明
検索ドメインのスケーリングパラメータのステータスと設定。
API Version 2013-01-01
228
Amazon CloudSearch 開発者ガイド
データ型
目次
オプション
各インデックスパーティションの必要なインスタンスタイプと必要なレプリカ数。
タイプ: ScalingParameters (p. 228)
必須: はい
Status
ドメイン設定オプションのステータス。
タイプ: OptionStatus (p. 227)
必須: はい
ServiceEndpoint
説明
サービスリクエストの送信先となるエンドポイント。
目次
エンドポイント
サービスリクエストの送信先となるエンドポイント。例えば、search-imdb-moviesoopcnjfn6ugofer3zx5iadxxca.eu-west-1.cloudsearch.amazonaws.com、doc-imdbmovies-oopcnjfn6ugofer3zx5iadxxca.eu-west-1.cloudsearch.amazonaws.com など
です。
型: 文字列
必須: いいえ
Suggester
説明
検索サジェスタの設定情報。各サジェスタは一意の名前を持ち、候補として使用するテキストフィー
ルドを指定します。サジェスタには、FuzzyMatching オプションと SortExpression オプション
を設定できます。
目次
DocumentSuggesterOptions
検索サジェスタのオプション。
タイプ: DocumentSuggesterOptions (p. 214)
必須: はい
SuggesterName
名前は英数字で始まっている必要があり、次の文字を含めることができます。a~z (小文字)、0~
9、_ (下線)。
型: 文字列
長さの制限: 最小長は 1 です。最大長は 64 です。
API Version 2013-01-01
229
Amazon CloudSearch 開発者ガイド
データ型
必須: はい
SuggesterStatus
説明
Suggester の値および現在のステータス。
目次
オプション
検索サジェスタの設定情報。各サジェスタは一意の名前を持ち、候補として使用するテキスト
フィールドを指定します。サジェスタには、FuzzyMatching オプションと SortExpression オ
プションを設定できます。
タイプ: Suggester (p. 229)
必須: はい
Status
ドメイン設定オプションのステータス。
タイプ: OptionStatus (p. 227)
必須: はい
TagList
説明
指定された Amazon CloudSearch ドメインのリソースタグのリスト。このリストは、ListTags リク
エストの結果です。
目次
TagList
指定された Amazon CloudSearch ドメインのリソースタグのリスト。
タイプ: ドメイン用にリソースタグを指定する文字列のリスト。
TextArrayOptions
説明
テキスト文字列の配列を格納するフィールドのオプション。IndexFieldType が text-array 型の
フィールドを指定している場合に使用されます。text-array フィールドは常に検索可能です。すべ
てのオプションはデフォルトで有効になっています。
目次
AnalysisScheme
text-array フィールドの分析スキームの名前。
型: 文字列
必須: いいえ
API Version 2013-01-01
230
Amazon CloudSearch 開発者ガイド
データ型
DefaultValue
ドキュメントでこのフィールドが指定されていない場合に、フィールドに使用される値。
型: 文字列
長さの制限: 最小長は 0 です。最大長は 1024 です。
必須: いいえ
HighlightEnabled
そのフィールドにハイライトが返されるかどうか。
タイプ: ブール値
必須: いいえ
ReturnEnabled
検索結果でフィールドの内容を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
SourceFields
フィールドにマッピングするソースフィールドのリスト。
型: 文字列
必須: いいえ
TextOptions
説明
テキストフィールドのオプション。IndexFieldType が text 型のフィールドを指定している場合に
使用されます。text フィールドは常に検索可能です。すべてのオプションはデフォルトで有効になっ
ています。
目次
AnalysisScheme
text フィールドの分析スキームの名前。
型: 文字列
必須: いいえ
DefaultValue
ドキュメントでこのフィールドが指定されていない場合に、フィールドに使用される値。
型: 文字列
長さの制限: 最小長は 0 です。最大長は 1024 です。
必須: いいえ
HighlightEnabled
そのフィールドにハイライトが返されるかどうか。
タイプ: ブール値
必須: いいえ
API Version 2013-01-01
231
Amazon CloudSearch 開発者ガイド
データ型
ReturnEnabled
検索結果でフィールドの内容を返すことができるかどうか。
タイプ: ブール値
必須: いいえ
SortEnabled
フィールドを使用して検索結果をソートできるかどうか。
タイプ: ブール値
必須: いいえ
SourceField
インデックスフィールドの名前を表す文字列。CloudSearch は、動的フィールドと同様に通常の
インデックスフィールドをサポートします。動的フィールドの名前は、ワイルドカードで始まる
か終了するパターンを定義します。通常のインデックスフィールドにもマッピングされないが動
的フィールドのパターンに一致するドキュメントフィールドは、動的フィールドのインデックス
オプションで設定されます。
通常のフィールド名は英数字で始まり、次の文字を含めることができます。a~z (小文字)、0~
9、_ (下線)。動的フィールド名はワイルドカード (*) で始まるか終わる必要があります。ワイルド
カードはまた、動的フィールド名の唯一の文字になることがあります。複数のワイルドカードお
よび文字列内に組み込まれたワイルドカードはサポートされていません。
score という名前は予約済みのため、フィールド名として使用できません。ドキュメントの ID
を参照するには、_id という名前を使用できます。
型: 文字列
長さの制限: 最小長は 1 です。最大長は 64 です。
必須: いいえ
UpdateAvailabilityOptionsResult
説明
UpdateAvailabilityOptions リクエストの結果。ドメインの可用性オプションのステータスを含
みます。
目次
AvailabilityOptions
新しく設定した可用性オプション。ドメインでマルチ AZ が有効であるかどうかを示します。
タイプ: AvailabilityOptionsStatus (p. 207)
必須: いいえ
UpdateScalingParametersResult
説明
UpdateScalingParameters リクエストの結果。新しく設定されたスケーリングパラメータのス
テータスが含まれます。
API Version 2013-01-01
232
Amazon CloudSearch 開発者ガイド
共通パラメータ
目次
ScalingParameters
検索ドメインのスケーリングパラメータのステータスと設定。
タイプ: ScalingParametersStatus (p. 228)
必須: はい
UpdateServiceAccessPoliciesResult
説明
UpdateServiceAccessPolicies リクエストの結果。新しいアクセスポリシーが含まれます。
目次
AccessPolicies
ドメイン用に設定されたアクセスルール。
タイプ: AccessPoliciesStatus (p. 204)
必須: はい
共通パラメータ
このセクションでは、すべてのアクションが使用するリクエストパラメータを列挙します。アクショ
ン固有のパラメータは、そのアクションのトピックで示されています。
アクション
実行するアクション。
デフォルト: なし
タイプ: 文字列
必須: はい
AuthParams
条件付きリクエストを認証するために必要なパラメータ。次を含みます。
• AWSAccessKeyID
• SignatureVersion
• タイムスタンプ
• 署名
デフォルト: なし
必須: 条件による。
AWSAccessKeyId
リクエストの署名に使用したシークレットアクセスキーに相当するアクセスキー ID。
デフォルト: なし
タイプ: 文字列
必須: はい
API Version 2013-01-01
233
Amazon CloudSearch 開発者ガイド
共通パラメータ
有効期限
リクエストの署名が失効する日付と時刻。ISO 8601 標準で規定された YYYY-MMDDThh:mm:ssZ 形式で表現します。
条件: リクエストは Timestamp または Expires のどちらかを含む必要がありますが、両方を含む
ことはできません。
デフォルト: なし
タイプ: 文字列
必須: 条件による。
SecurityToken
AWS Security Token Service を呼び出して取得された一時的セキュリティトークン。AWS
Security Token Service をサポートしているサービスの一覧は、「一時的なセキュリティ認証情報
の使用」の「一時的セキュリティ認証情報を使用して AWS にアクセスする」の参照してくださ
い。
デフォルト: なし
タイプ: 文字列
必須: いいえ
署名
リクエストのために作成したデジタル署名。署名の生成については、サービスの開発者用ドキュ
メントを参照してください。
デフォルト: なし
タイプ: 文字列
必須: はい
SignatureMethod
リクエストの署名を作成するのに使用したハッシュアルゴリズム。
デフォルト: なし
タイプ: 文字列
有効な値: HmacSHA256 | HmacSHA1
必須: はい
SignatureVersion
リクエストに署名するときに使用する署名バージョン。サービスで推奨されている値に設定しま
す。
デフォルト: なし
タイプ: 文字列
必須: はい
タイムスタンプ
リクエストが署名された日付と時刻。ISO 8601 標準で規定された YYYY-MM-DDThh:mm:ssZ 形
式で表現します。
条件: リクエストは Timestamp または Expires のどちらかを含む必要がありますが、両方を含む
ことはできません。
デフォルト: なし
API Version 2013-01-01
234
Amazon CloudSearch 開発者ガイド
共通エラー
タイプ: 文字列
必須: 条件による。
バージョン
リクエストが想定している API バージョン。YYYY-MM-DD 形式で表現されます。
デフォルト: なし
タイプ: 文字列
必須: はい
共通エラー
このセクションでは、すべてのアクションが返す共通エラーを列挙します。アクション固有のエラー
は、そのアクションのトピックで示されています。
IncompleteSignature
リクエストの署名が AWS 基準に適合しません。
HTTP ステータスコード: 400
InternalFailure
リクエストの処理が、不明なエラー、例外、または障害により実行できませんでした。
HTTP ステータスコード: 500
InvalidAction
要求されたアクション、またはオペレーションは無効です。アクションが正しく入力されている
ことを確認します。
HTTP ステータスコード: 400
InvalidClientTokenId
指定された x.509 証明書、または AWS アクセスキー ID が見つかりません。
HTTP ステータスコード: 403
InvalidParameterCombination
同時に使用できないパラメータが、同時使用されています。
HTTP ステータスコード: 400
InvalidParameterValue
無効な値または範囲外の値が入力パラメータとして指定されました。
HTTP ステータスコード: 400
InvalidQueryParameter
AWS クエリ文字列が正しい形式でないか、AWS 標準を順守していません。
HTTP ステータスコード: 400
MalformedQueryString
クエリ文字列に構文エラーがあります。
HTTP ステータスコード: 404
MissingAction
リクエストに、アクションまたは必須パラメータが含まれていません。
HTTP ステータスコード: 400
API Version 2013-01-01
235
Amazon CloudSearch 開発者ガイド
ドキュメントサービス API リファレンス
MissingAuthenticationToken
リクエストには、有効な(登録された)AWS アクセスキー ID、または X.509 証明書のどちらか
一方が含まれている必要があります。
HTTP ステータスコード: 403
MissingParameter
指定したアクションの必須パラメータが指定されていません。
HTTP ステータスコード: 400
OptInRequired
サービスを利用するためには、AWS アクセスキー ID を取得する必要があります。
HTTP ステータスコード: 403
RequestExpired
リクエストの日付スタンプの 15 分以上後またはリクエストの有効期限(署名付き URL の場合な
ど)の 15 分以上後に、リクエストが到着しました。または、リクエストの日付スタンプが現在よ
り 15 分以上先です。
HTTP ステータスコード: 400
ServiceUnavailable
リクエストは、サーバーの一時的障害のために実行に失敗しました。
HTTP ステータスコード: 503
Throttling
リクエストは、制限が必要なために実行が拒否されました。
HTTP ステータスコード: 400
ValidationError
入力が、AWS サービスで指定された制約を満たしていません。
HTTP ステータスコード: 400
Amazon CloudSearch 向けドキュメントサービス
API リファレンス
Amazon CloudSearch ドメインのドキュメントを追加、置換、削除するには、ドキュメントサービス
API を使用します。検索ドメインのドキュメント管理の詳細については、「Amazon CloudSearch ド
メインにデータをアップロード (p. 90)」を参照してください。
Amazon CloudSearch を操作するために使用するその他の API は次のとおりです。
• Amazon CloudSearch の設定 API リファレンス (p. 153) - 検索ドメインをセットアップおよび管理
します。
• 検索 API リファレンス (p. 245) - ドメインを検索します。
Amazon CloudSearch でのドキュメントサービスリ
クエストの送信
AWS SDK または AWS CLI のいずれか 1 つを使用して、ドキュメントのアップロードリクエストを
送信することをお勧めします。SDK と AWS CLI は、リクエスト署名を自動的に処理し、すべての
API Version 2013-01-01
236
Amazon CloudSearch 開発者ガイド
documents/batch
Amazon CloudSearch アクションを簡単に実行できる方法を提供します。1 ステップでソースドキュ
メントを処理して、生成された JSON または XML バッチをドメインにアップロードするには、スタ
ンドアロンの Amazon CloudSearch コマンドラインツールで cs-import-documents コマンドを使
用できます。詳細については、「ソースデータの処理 (p. 64)」を参照してください。また、個々の
バッチをアップロードして、DynamoDB または S3 からデータをインポートするときにも、Amazon
CloudSearch コンソールを使用できます。
Important
ドメインのドキュメントエンドポイントと検索エンドポイントは、ドメインが存在している
間変わりません。すべてのアップロードリクエストや検索リクエストの前にエンドポイント
を取得するのではなく、エンドポイントをキャッシュに保存してください。各リクエストの
前に aws cloudsearch describe-domains または DescribeDomains を呼び出すことに
よって Amazon CloudSearch 設定サービスにクエリを実行すると、リクエストが調整される
可能性があります。
たとえば、次のリクエストは、AWS CLI を使用してバッチをアップロードします。
aws cloudsearchdomain --endpoint-url http://doc-moviesy6gelr4lv3jeu4rvoelunxsl2e.us-east-1.cloudsearch.amazonaws.com uploaddocuments --content-type
application/json --documents movie-data-2013.json
開発とテストの目的で、ドメインのドキュメントサービスへの匿名アクセスを許可し、未署名の
HTTP POST リクエストを直接ドメインのドキュメント サービスに送信することができます。本番
環境では、ドメインへのアクセスを特定の IAM ユーザー、グループ、ロールに制限し、署名付き
リクエストを送信します。Amazon CloudSearch へのアクセスの制御方法については、「Amazon
CloudSearch のアクセス設定 (p. 30)」を参照してください。リクエスト署名の詳細については、
「AWS API リクエストのサインアップ」を参照してください。
たとえば、次の POST リクエストは、JSON 形式のドメインのバッチをドメインエンドポイント docmovies-123456789012.us-east-1.cloudsearch.amazonaws.com にアップロードします。
curl -X POST --upload-file data1.json doc-movies-123456789012.useast-1.cloudsearch.amazonaws.com/2013-01-01/documents/batch --header
"Content-Type: application/json"
documents/batch
このセクションでは、documents/batch リソースの HTTP リクエストおよび応答メッセージについ
て説明します。
Amazon CloudSearch ドメインにアップロードするデータを記述するためのドキュメントバッチを作
成します。ドキュメントバッチは追加および削除操作のコレクションであり、ドメインで追加、更
新、削除するドキュメントを表します。バッチは JSON または XML で記述できます。バッチは、イ
ンデックス作成のために Amazon CloudSearch で必要になるすべての情報を提供します。検索結果と
して返すことができるようにする各項目(製品など)はドキュメントとして表されます。バッチは単
に個々のドキュメントの追加および削除リクエストのコレクションです。各ドキュメントには固有の
ID、および検索し、結果を返すデータを含むフィールドが 1 つ以上あります。
ドキュメントを更新するには、更新するドキュメントのドキュメント ID を使用して追加リクエストを
指定します。詳細については、「Amazon CloudSearch でのドキュメントの追加および更新 (p. 63)」
を参照してください。同様に、ドキュメントを削除するには、削除するドキュメントのドキュメン
ト ID を使用して削除リクエストを送信します。ドキュメントの削除の詳細については、「Amazon
CloudSearch でのドキュメントの削除 (p. 64)」を参照してください。
API Version 2013-01-01
237
Amazon CloudSearch 開発者ガイド
documents/batch
インデックス作成用のデータ送信の詳細については、「Amazon CloudSearch ドメインにデータを
アップロード (p. 90)」を参照してください。
documents/batch JSON API
JSON documents/batch リクエスト
documents/batch リクエストの本文では、JSON または XML を使用して、実行するドキュメントの
オペレーションを指定します。バッチの JSON 表現は、個々の追加および削除オペレーションを定義
するオブジェクトのコレクションです。type プロパティは、オブジェクトが追加オペレーションと削
除オペレーションのどちらを表すかを示します。たとえば、次の JSON バッチは、1 個のドキュメン
トを追加し、1 個のドキュメントを削除します。
[
{ "type": "add",
"id":
"tt0484562",
"fields": {
"title": "The Seeker: The Dark Is Rising",
"directors": ["Cunningham, David L."],
"genres": ["Adventure","Drama","Fantasy","Thriller"],
"actors": ["McShane, Ian","Eccleston, Christopher","Conroy, Frances",
"Crewson, Wendy","Ludwig, Alexander","Cosmo, James",
"Warner, Amelia","Hickey, John Benjamin","Piddock, Jim",
"Lockhart, Emma"]
}
},
{ "type": "delete",
"id":
"tt0484575"
}]
Note
ドキュメントバッチを JSON で指定する場合、フィールドの値を null にすることはできま
せん。
バッチの JSON スキーマ表現を次に示します。
{
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": ["add", "delete"],
"required": true
},
"id": {
"type": "string",
"pattern": "[a-z0-9][a-z0-9_]{0,127}",
"minLength": 1,
"maxLength": 128,
"required": true
},
"fields": {
API Version 2013-01-01
238
Amazon CloudSearch 開発者ガイド
documents/batch
"type": "object",
"patternProperties": {
"[a-zA-Z0-9][a-zA-Z0-9_]{0,63}": {
"type": "string",
}
}
}
}
}
}
documents/batch リクエストのプロパティ (JSON)
プロパティ
説明
必須
type
オペレーションのタイプ。add または delete。 はい
id
英数字の文字列。使用できる文字は、A ~
Z(大文字)、a ~ z(小文字)、0 ~ 9、_(下
線)、-(ハイフン)、/(スラッシュ)、#(ハッ
シュ記号)、:(コロン)です。最大長は 128 文
字です。
はい
fields
ドキュメントに含まれるフィールドを定義す
る、1 つ以上の field_name プロパティのコレク
ション。
条件付き
条件: 追加オペレーションの場合に必要です。少
なくとも 1 個の field_name プロパティを含める
必要があります。
field_name
追加されるドキュメント内のフィールドを指定
します。フィールド名は英数字で始まってい
る必要があり、次の文字を含めることができま
す。a~z(小文字)、0~9、_(下線)。フィー
ルド名は、3 ~ 64 文字以内にする必要がありま
す。score という名前は予約済みのため、フィー
ルド名として使用できません。
条件付き
フィールドに複数の値を指定するには、1 つの値
の代わりに値の配列を指定します。以下に例を
示します。
"genre":
["Adventure","Drama","Fantasy","Thriller"]
条件: fields オブジェクトで少なくとも 1 個の
フィールドを指定する必要があります。
documents/batch 応答(JSON)
応答の本文には、実行された追加や削除の数、および生成されたすべてのエラーや警告がリストされ
ます。
ドキュメントサービス API 応答の JSON スキーマの表現を次に示します。
{
"type": "object",
API Version 2013-01-01
239
Amazon CloudSearch 開発者ガイド
documents/batch
"properties": {
"status": {
"type": "text",
"enum": ["success", "error"],
"required": true
},
"adds": {
"type": "integer",
"minimum": 0,
"required": true
},
"deletes": {
"type": "integer",
"minimum": 0,
"required": true
},
"errors": {
"type": "array",
"required": false,
"items": {
"type": "object",
"properties": {
"message": {
"type": "string",
"required": true
}
}
}
},
"warnings": {
"type": "array",
"required": false,
"items": {
"type": "object",
"properties": {
"message": {
"type": "string",
"required": true
}
}
}
}
}
}
documents/batch 応答のプロパティ(JSON)
プロパティ
説明
status
success または error である結果のステータス。
adds
実行されたドキュメントの追加オペレーションの数。ステータスが error
であるときは常に 0。
deletes
実行されたドキュメントの削除オペレーションの数。ステータスが error
であるときは常に 0。
エラー
解析エラーまたは検証エラーに関する情報を提供します。ステータスが
error である場合にのみ指定されます。
API Version 2013-01-01
240
Amazon CloudSearch 開発者ガイド
documents/batch
プロパティ
説明
warning
解析時または検証時に生成された警告に関する情報を提供します。
documents/batch XML API
XML documents/batch リクエスト
documents/batch リクエストの本文では、XML で、実行するドキュメントのオペレーションを指定
します。以下に例を示します。
<batch>
<add id="tt0484562">
<field name="title">The Seeker: The Dark Is Rising</field>
<field name="director">Cunningham, David L.</field>
<field name="genre">Adventure</field>
<field name="genre">Drama</field>
<field name="genre">Fantasy</field>
<field name="genre">Thriller</field>
<field name="actor">McShane, Ian</field>
<field name="actor">Eccleston, Christopher</field>
<field name="actor">Conroy, Frances</field>
<field name="actor">Ludwig, Alexander</field>
<field name="actor">Crewson, Wendy</field>
<field name="actor">Warner, Amelia</field>
<field name="actor">Cosmo, James</field>
<field name="actor">Hickey, John Benjamin</field>
<field name="actor">Piddock, Jim</field>
<field name="actor">Lockhart, Emma</field>
</add>
<delete id="tt0301199" />
</batch>
documents/batch リクエストの要素(XML)
要素
説明
必須
バッチ
検索ドメインに送信する追加または削除オペ
レーションのコレクション。バッチには、少な
くとも 1 つの add または delete 要素を含める必
要があります。
はい
add
検索ドメインに追加するドキュメントを指定し
ます。id 属性は必須であり、add 要素には少な
くとも 1 つのフィールドが含まれている必要が
あります。
いいえ
属性:
• id - 英数字の文字列。A~Z(大文字または小
文字)および 0~9 以外の文字は無効です。最
大長は 128 文字です。
field
追加されるドキュメント内のフィールドを指定
します。名前属性およびフィールド値は必須で
す。フィールド名は英数字で始まっている必要
があり、次の文字を含めることができます。a
API Version 2013-01-01
241
条件付き
Amazon CloudSearch 開発者ガイド
documents/batch
要素
説明
必須
~z(小文字)、0~9、_(下線)。score とい
う名前は予約済みのため、フィールド名として
使用できません。フィールド値にはテキストや
CDATA を指定できます。
フィールドに複数の値を指定するには、同じ名
前の複数のフィールド要素を含めます。以下に
例を示します。
<field
<field
<field
<field
name="genre">Adventure</field>
name="genre">Drama</field>
name="genre">Fantasy</field>
name="genre">Thriller</field>
制約:
• name - 文字で始まる英数字の文字列。含め
ることができる文字は、a ~ z(小文字)、0
~ 9、_(下線)、-(ハイフン)、および . で
す。"." (ピリオド) です。
条件: add 要素で少なくとも 1 個のフィールドを
指定する必要があります。
delete
検索ドメインから削除するドキュメントを指定
します。id 属性は必須です。delete 要素は空に
する必要があります。
いいえ
制約:
• id - 英数字の文字列。A~Z(大文字または小
文字)および 0~9 以外の文字は無効です。
documents/batch 応答(XML)
応答の本文には、実行された追加や削除の数、および生成されたすべてのエラーや警告がリストされ
ます。
ドキュメントサービス API 応答の RelaxNG スキーマは次のとおりです。
start = response
response = element response {
attribute status { "success" | "error" },
attribute adds { xsd:integer },
attribute deletes { xsd:integer },
element errors {
element error {
text
}+
}? &
element warnings {
element warning {
text
}+
API Version 2013-01-01
242
Amazon CloudSearch 開発者ガイド
documents/batch
}?
}
documents/batch 応答の要素(XML)
要素
説明
result
リクエストを解析および検証するときに生成されたエラーおよび警告をリ
ストする要素が含まれます。
属性:
• status - 結果のステータス。success または error。
• adds - 追加されたドキュメントの数。ステータスが error である場
合、これは常に 0 です。
• deletes - 削除されたドキュメントの数。ステータスが error である
場合、これは常に 0 です。
制約: ステータスが error の場合、results 要素にはエラーのリストが含ま
れます。ステータスが success の場合、results 要素に警告のリストを含
めることができますが、エラーは含まれません。
エラー
リクエストの解析時および検証時に発生したエラーを示す error 要素のコ
レクションが含まれます。
error
解析エラーまたは検証エラーに関する情報を提供します。値はエラーの説
明を提供します。
warnings
リクエストの解析時および検証時に生成された警告を示す warning 要素の
コレクションが含まれます。
warning
解析または検証の警告に関する情報を提供します。値はエラーの説明を提
供します。
documents/batch ステータスコード
ドキュメントサービスリクエストは、3 種類のステータスコードを返すことができます。
• 5xx ステータスコードは、内部サーバーエラーが発生したことを示します。通常一時的なエラー状
態を表しているため、すべての 5xx エラーコードを捕捉して再試行することをお勧めします。
• 4xx ステータスコードは、リクエストの形式が正しくないことを示します。
• 2xx ステータスコードは、リクエストが正常に処理されたことを示します。
エラー
説明
HTTP ステータスコード
No Content-Type
Content-Type ヘッダーがありません。
400
No Content-Length
Content-Length ヘッダーがありません。
411
Incorrect Path
URL パスが ''/YYYY-MM-DD/documents/
batch'' と一致しません。
404
Invalid HTTP Method
HTTP メソッドが POST ではありませ
ん。リクエストは、documents/batch に
投稿する必要があります。
405
API Version 2013-01-01
243
Amazon CloudSearch 開発者ガイド
documents/batch
エラー
説明
HTTP ステータスコード
Invalid Accept Type
Accept ヘッダーは、''application/xml'' ま
たは ''application/json'' 以外のコンテンツ
タイプを指定します。応答は XML または
JSON 形式でのみ送信できます。
406
Request Too Large
リクエスト本文の長さが最大許容値を超
えています。
413
Invalid Content Type
コンテンツタイプが "application/json" ま
たは "application/xml" 以外です。
415
Invalid Character Set
文字セットが ''ASCII''、''ISO-8859-1''、ま
たは ''UTF-8'' 以外です。
415
一般的なリクエストヘッダー
名前
説明
必須
Content-Type
オブジェクトデータの形式を記述する標準 MIME 必須
タイプ。詳細については、「W3C RFC 2616
Section 14」を参照してください。
デフォルト: application/json
制約: application/json または application/xml のみ
Content-Length
リクエストの本文のバイト長。
はい
Accept
応答データの形式を記述する標準 MIME タイ
プ。詳細については、「W3C RFC 2616 Section
14」を参照してください。
いいえ
デフォルト: リクエストのコンテンツタイプ
制約: application/json または application/xml のみ
共通の応答ヘッダー
名前
説明
Content-Type
オブジェクトデータの形式を記述する標準 MIME タイプ。詳細に
ついては、「W3C RFC 2616 Section 14」を参照してください。
デフォルト: リクエスト内の Accept ヘッダーの値。または Accept
ヘッダーがない場合や、application/xml または application/json を
指定していない場合は、リクエストの Content-Type。
制約: application/xml または application/json のみ
Content-Length
応答の本文のバイト長。
API Version 2013-01-01
244
Amazon CloudSearch 開発者ガイド
検索 API リファレンス
Amazon CloudSearch の検索 API リファレンス
トピック
• Amazon CloudSearch での検索リクエストの送信 (p. 245)
• 検索 (p. 246)
• Amazon CloudSearch での候補リクエストの送信 (p. 262)
• 候補 (p. 262)
• 検索サービスのエラー (p. 264)
検索 API を使用して、Amazon CloudSearch ドメインに検索リクエストまたは候補リクエストを送信
します。検索の詳細については、「Amazon CloudSearch でのデータの検索 (p. 98)」を参照してくだ
さい。候補の詳細については、「Amazon CloudSearch での自動入力候補の取得 (p. 128)」を参照し
てください。
Amazon CloudSearch を操作するために使用するその他の API は次のとおりです。
• 設定 API (p. 153) - 検索ドメインを設定および管理します。
• ドキュメントサービス API (p. 236) - 検索するデータを送信します。
Amazon CloudSearch での検索リクエストの送信
AWS SDK または AWS CLI のいずれかを使用して、検索リクエストを送信することをお勧めしま
す。SDK と AWS CLI は、リクエスト署名を自動的に処理し、すべての Amazon CloudSearch アク
ションを簡単に実行できる方法を提供します。また、Amazon CloudSearch コンソールで検索テス
ターを使用して、データの検索、結果の参照、生成されたリクエストの URL および JSON と XML レ
スポンスの表示を行うこともできます。詳細については、「検索テスターによる検索 (p. 12)」を参照
してください。
Important
ドメインのドキュメントエンドポイントと検索エンドポイントは、ドメインが存在している
間変わりません。すべてのアップロードリクエストや検索リクエストの前にエンドポイント
を取得するのではなく、エンドポイントをキャッシュに保存してください。各リクエストの
前に aws cloudsearch describe-domains または DescribeDomains を呼び出すことに
よって Amazon CloudSearch 設定サービスにクエリを実行すると、リクエストが調整される
可能性があります。ドメインの IP アドレスは時間が経つと変更される場合があります。IP ア
ドレスよりも、コンソールに表示され aws cloudsearch describe-domains コマンドで
返されるエンドポイントをキャッシュすることが重要です。詳細については、「DNS 名参照
用の JVM TTL の設定」を参照してください。
たとえば、次のリクエストは AWS CLI を使用して wolverine の単純なテキスト検索を送信し、一致
ドキュメントの ID だけを返します。
aws cloudsearchdomain --endpoint-url http://search-moviesy6gelr4lv3jeu4rvoelunxsl2e.us-east-1.cloudsearch.amazonaws.com search -search-query wolverine --return _no_fields
{
"status": {
"rid": "/rnE+e4oCAqfEEs=",
"time-ms": 6
},
"hits": {
"found": 3,
API Version 2013-01-01
245
Amazon CloudSearch 開発者ガイド
検索
"hit": [
{
"id": "tt1430132"
},
{
"id": "tt0458525"
},
{
"id": "tt1877832"
}
],
"start": 0
}
}
デフォルトでは、Amazon CloudSearch は JSON 形式で応答を返します。format パラメータを指定
することで、結果を XML 形式で取得することができますレスポンス形式の設定は、成功したリクエ
ストのレスポンスのみに影響します。エラーレスポンスの形式は、エラーの発生元によって異なりま
す。検索サービスによって返されるエラーは、常に JSON 形式で返されます。サーバーのタイムアウ
トなど、リクエストのルーティング関連の問題による 5xx エラーは XML 形式で返されます。
開発とテストの目的で、ドメインの検索サービスへの匿名アクセスを許可し、未署名の HTTP GET ま
たは POST リクエストを直接ドメインの検索エンドポイントに送信することができます。本番環境
では、ドメインへのアクセスを特定の IAM ユーザー、グループ、ロールに制限し、AWS SDK または
AWS CLI を使用して署名付きリクエストを送信します。Amazon CloudSearch へのアクセスの制御方
法については、「Amazon CloudSearch のアクセス設定 (p. 30)」を参照してください。リクエスト署
名の詳細については、「AWS API リクエストのサインアップ」を参照してください。
任意の方法を使用して、HTTP リクエストを直接ドメインの検索エンドポイントに送信することがで
きます。ウェブブラウザにリクエスト URL を直接入力することも、cURL を使用してリクエストを送
信することも、好みの HTTP ライブラリを使用して HTTP 呼び出しを生成することもできます。検索
条件を指定するには、検索の制約とレスポンスに含める情報を指定するクエリ文字列を指定します。
クエリ文字列は URL エンコードする必要があります。GET で送信される検索リクエストの最大サイ
ズは、HTTP メソッド、URI、プロトコルのバージョンを含め 8,190 バイトです。HTTP POST を使用
すると大きなリクエストを送信できますが、大きくて複雑なリクエストは処理に時間がかかり、タイ
ムアウトになる可能性が高いことに注意が必要です。詳細については、「Amazon CloudSearch での
検索リクエストのパフォーマンスのチューニング (p. 116)」を参照してください。
たとえば、次のリクエストは search-movies-rr2f34ofg56xneuemujamut52i.useast-1.cloudsearch.amazonaws.com ドメインに構造化クエリを送信し、title フィールドのコ
ンテンツを取得します。
http://search-movies-rr2f34ofg56xneuemujamut52i.us-east-1.cloudsearch.
amazonaws.com/2013-01-01/search?q=(and+(term+field%3Dtitle+'star')
(term+field%3Dyear+1977))&q.parser=structured&return=title
Important
クエリ文字列の特殊文字は、URL エンコードする必要があります。たとえば、構成化
クエリでは、= 演算子を %3D(term+field%3Dtitle+'star') のようにエンコード
する必要があります。検索リクエストを送信するときに特殊文字をエンコードしない
と、InvalidQueryString エラーが発生します。
検索
このセクションでは、検索リソースの HTTP リクエストおよびレスポンスメッセージについて説明し
ます。
API Version 2013-01-01
246
Amazon CloudSearch 開発者ガイド
検索
検索構文
GET /2013-01-01/search
検索リクエストヘッダー
HOST
クエリ対象のドメインの検索リクエストエンドポイント。DescribeDomains (p. 182) を使用し
て、ドメインの検索リクエストエンドポイントを取得できます。
必須: はい
検索リクエストのパラメータ
cursor
大きな結果セットのページ分割に使用できるカーソル値を取得します。size パラメータを使用
して、各レスポンスに含めるヒット数を制御します。リクエストで cursor または start パラ
メータのどちらかを指定できます。両者は相互に排他的です。詳細については、「結果のページ
分割 (p. 139)」を参照してください。
最初のカーソルを取得するには、最初のリクエストで cursor=initial を指定します。それ以
降のリクエストでは、レスポンスの hits セクションで返されたカーソル値を指定します。
たとえば、次のリクエストはカーソル値を initial に設定し、size パラメータを 100 に設定し
て、最初のヒットのセットを取得します。次のヒットセット用のカーソルは、レスポンスに含ま
れています。
search?q=john&cursor=initial&size=100&return=_no_fields
{
"status": {
"rid": "+/Xu5s0oHwojC6o=",
"time-ms": 15
},
"hits": {
"found": 503,
"start": 0,
cursor": "VegKzpYYQW9JSVFFRU1UeWwwZERBd09EUTNPRGM9ZA",
"hit": [
{"id": "tt0120601"},
{"id": "tt1801552"},
...
]
}
}
次のヒットのセットを取得するには、カーソル値と取得するヒットの数を指定します。
search?q=john&cursor=VegKzpYYQW9JSVFFRU1UeWwwZERBd09EUTNPRGM9ZA&size=100
型: 文字列
必須: いいえ
expr.NAME
結果の並べ替えに使用する式を定義します。戻りフィールドとして式を指定することもできま
す。式の定義と使用の詳細については、「式の設定 (p. 134)」を参照してください。
API Version 2013-01-01
247
Amazon CloudSearch 開発者ガイド
検索
検索リクエストで複数の式を定義して使用することができます。たとえば、次のリクエストは、
結果のソートに使用する式を 2 つ作成し、式の値を検索結果に含めます。
search?q=(and (term field=genres 'Sci-Fi')(term field=genres
'Comedy'))&q.parser=structured
&expr.expression1=_score*rating
&expr.expression2=(1/rank)*year
&sort=expression1 desc,expression2 desc
&return=title,rating,rank,year,_score,expression1,expression2
型: 文字列
必須: いいえ
facet.FIELD
ファセット情報を取得するフィールドを指定します。FIELD はフィールドの名前です。指定
したフィールドは、ドメイン設定でファセットを有効にしておく必要があります。ファセッ
トオプションは、JSON オブジェクトとして指定されます。JSON オブジェクトが空の場合
(facet.FIELD={})、ファセット数はすべてのフィールド値について計算され、ファセットは
ファセット数によってソートされ、上位 10 個のファセットが結果で返されます。
JSON オブジェクトでは 3 つのオプションを指定できます。
• sort は結果でファセットをソートする方法を bucket または count で指定します。ファセッ
ト値のアルファベット順または数値順でソート(昇順)するには、bucket を指定します。各
ファセット値に対して計算されたファセット数によってソート(降順)するには、count を指
定します。特定の値または値範囲のファセット数を取得するには、sort の代わりに buckets
オプションを使用します。
• buckets はカウントするファセット値または範囲の配列を指定します。バケットは、リクエス
トで指定された順番で返されます。値の範囲を指定するには、上限と下限をカンマ(,)で区切
り、ブラケットか中括弧で範囲を囲みます。角括弧 [ または ] は、その境界も範囲に含まれるこ
とを示し、波括弧 { または } は、境界は除外することを示します。上限または下限を省略する
と、制限のない範囲を指定することができます。境界を省略するときは、波括弧を使用する必
要があります。buckets を指定した場合、sort および size オプションは無効です。
• size はファセットの最大数を結果に含めることを指定します。デフォルトで、Amazon
CloudSearch は上位 10 個のファセット数を返します。size パラメータは、sort オプション
を指定した場合にのみ有効です。buckets と共に使用することはできません。
たとえば、次のリクエストは year フィールドのファセット数を取得し、ファセット数の値に
よってソートし、上位 3 個のファセット数を返します。
facet.year={sort:"bucket", size:3}
ファセット数を計算する値または値範囲を指定するには、buckets オプションを使用します。た
とえば、次のリクエストは 10 年単位でファセット数を計算して返します。
facet.year={buckets:["[1970,1979]","[1980,1989]",
"[1990,1999]","[2000,2009]",
"[2010,}"]}
個々の値をバケットとして指定することもできます。
facet.genres={buckets:["Action","Adventure","Sci-Fi"]}
ファセット値は大文字小文字を区別することに注意してください。サンプルの IMDB 映画データ
の場合、["Action","Adventure","Sci-Fi"] の代わりに ["action","adventure","scifi"] と指定すると、ファセット数がすべてゼロになります。
API Version 2013-01-01
248
Amazon CloudSearch 開発者ガイド
検索
型: 文字列
必須: いいえ
形式
レスポンスのコンテンツタイプを指定します。
型: 文字列
有効な値: json|xml
デフォルト: json
必須: いいえ
fq
結果のスコアやソート順に影響を与えることなく検索結果をフィルタする構造化クエリを指定し
ます。fq は q パラメータと共に使用して、q パラメータで指定した制約に一致するドキュメント
をフィルタします。フィルタを指定して、一致したドキュメントのうちどれを結果に含めるかを
制御できますが、ドキュメントのスコアやソート順には影響しません。fq パラメータは、構造化
クエリ構文を全面的にサポートします。フィルタを使用する方法については、「一致するドキュ
メントのフィルタリング (p. 116)」を参照してください。構造化クエリの詳細については、「構
造化検索構文 (p. 253)」を参照してください。
型: 文字列
必須: いいえ
highlight.FIELD
指定した text または text-array フィールドで一致したハイライトを取得します。ハイライト
オプションは、JSON オブジェクトとして指定されます。JSON オブジェクトが空の場合、返さ
れるフィールドテキストは HTML として扱われ、最初の一致が強調タグ <em>search-term</
em> を使ってハイライト表示されます。
JSON オブジェクトで 4 つのオプションを指定できます。
• format - テキストフィールドのデータ形式を指定します。text または html です。データが
HTML として返されると、アルファベット以外の文字はすべてエンコードされます。デフォル
ト: html。
• max_phrases - 検索用語をハイライトする最大数を指定します。デフォルトでは、最初に出現
した検索用語がハイライトされます。
• pre_tag - 出現した検索用語の前に追加する文字列を指定します。HTML ハイライトのデフォ
ルトは <em> です。テキストハイライトのデフォルトは * です。
• post_tag - 出現した検索用語の後に追加する文字列を指定します。HTML ハイライトのデフォ
ルトは </em> です。テキストハイライトのデフォルトは * です。
例: highlight.plot={},
highlight.plot={format:'text',max_phrases:2,pre_tag:'<b>',post_tag:'</b>'}
型: 文字列
必須: いいえ
partial
使用できないインデックスパーティションがある場合に、部分的な結果を返すかどうかを制御し
ます。検索インデックスが複数の検索インスタンスにまたがって分割されていると、デフォルト
では Amazon CloudSearch はすべてのパーティションがクエリできる場合にのみ結果を返しま
す。つまり、1 つの検索インスタンスに障害が発生するだけで、エラー 5xx(内部サーバー)が
発生します。partial=true を指定すると、Amazon CloudSearch は、利用できる結果をすべて
返し、検索されたドキュメントの割合を検索結果に含めます(percent-searched)。これによ
り、検索結果の品質低下を緩和することができます。たとえば、結果を何も表示しないよりは、
部分的な結果を表示し、一時的なシステム障害により結果が完全でないことを示すメッセージを
表示する方が親切です。
API Version 2013-01-01
249
Amazon CloudSearch 開発者ガイド
検索
タイプ: ブール値
デフォルト: False
必須: いいえ
pretty
JSON 出力を読みやすいように整形します。
タイプ: ブール値
デフォルト: False
必須: いいえ
q
リクエストの検索条件。検索条件の指定方法は、リクエストで使用するクエリパー
サー、および、q.options パラメータで指定するパーサーオプションによって異な
ります。デフォルトでは、simple クエリパーサーがリクエストの処理に使用されま
す。structured、lucene、dismax の各クエリパーサーを使用するには、q.parser パラメー
タも指定する必要があります。検索条件の指定方法の詳細については、「Amazon CloudSearch
でのデータの検索 (p. 98)」を参照してください。
型: 文字列
必須: はい
q.options
q.parser パラメータで指定したクエリパーサーのオプションを設定します。オプションは
JSON オブジェクトとして、たとえば q.options={defaultOperator: 'or', fields:
['title^5','description']} のように指定します。
設定できるオプションは、使用するパーサーに応じて変わります。
• defaultOperator - 検索文字列の個々の用語を結合する際に使用するデフォルト演算
子。例: defaultOperator: 'or'。dismax パーサーの場合、デフォルトの演算子では
なく、一致する必要がある(切り捨られた)検索文字列内の用語の割合を表す割合を指
定します。0% という値は OR と同等で、100% という値は AND と同等です。割合は、0
~ 100 の範囲の値として指定し、その後にパーセント記号(%)を付ける必要がありま
す。("defaultOperator: 50%" など)。有効な値: and、or、0 ~ 100% の範囲の割合
(dismax)。デフォルト: and(simple、structured、lucene)または 100(dismax)。
有効なパーサー: simple、structured、lucene、dismax。
• fields - 検索でフィールドが指定されていない場合に検索するフィールドの配列。検索で
フィールドが指定されておらず、このオプションを指定しない場合、静的に設定されたす
べての text と text-array が検索されます。各フィールドの重みを指定して、Amazon
CloudSearch が関連性スコアを計算する際に各フィールドの相対重要度を制御できます。
フィールドの重みを指定するには、フィールド名の後にキャレット記号(^)を付けて重みを指
定します。たとえば、description フィールドに対する title フィールドの重要性を高める
には、fields: ['title^5','description'] と指定します。有効な値: 設定されたフィー
ルド名と、オプションの正の数値。デフォルト: 静的に設定されたすべての text フィールドと
text-array フィールド。デフォルトでは、動的フィールドと literal フィールドは検索さ
れません。有効なパーサー: simple、structured、lucene、dismax。
• operators - simple クエリパーサーで無効にする演算子または特殊文字の配
列。and、or、not 演算子を無効にすると、対応する演算子(+、|、-)は特別な意味を持た
なくなり、検索文字列から削除されます。同様に、prefix を無効にするとワイルドカード演
算子(*)が無効になり、phrase を無効にすると二重引用符でフレーズを囲んたフレーズ検索
が無効になります。優先順位を無効にすると、括弧を使って優先順位を制御する機能が無効に
なります。near を無効にすると、~ 演算子を使ってあいまいフレーズ検索を実行する機能が
無効になります。fuzzy 演算子を無効にすると、~ 演算子を使ってあいまい検索を実行する機
能が無効になります。escape は、バックスラッシュ(\)を使って検索文字列内の特殊文字を
エスケープする機能を無効にします。whitespace は、パーサーが空白文字を区切りとしてトー
API Version 2013-01-01
250
Amazon CloudSearch 開発者ガイド
検索
クン化しないようにする高度なオプションで、ベトナム語で役立つ場合があります。(ベトナ
ム語の単語が間違って分割されなくなります)。たとえば、operators:['and', 'not',
'or', 'prefix'] と指定して、フレーズ演算子以外のすべての演算子を無効にし、単純な単
語とフレーズのクエリだけをサポートすることもできます。有効な値: and, escape, fuzzy,
near, not, or, phrase, precedence, prefix, whitespace. デフォルト: すべての演算子と特
殊文字が有効です。有効なパーサー: simple。
• phraseFields - フレーズ検索で使用する text または text-array フィールドの配列。検
索文字列の用語がフィールド内の近接した場所に出現すると、フィールドのスコアが高くなり
ます。各フィールドの重みを指定して、スコアを高くすることができます。phraseSlop オ
プションは、検索文字列から一致が逸脱していても、スコアを高くできる範囲を制御します。
フィールドの重みを指定するには、フィールド名の後にキャレット記号(^)を付けて重みを指
定します。たとえば、title フィールドのフレーズ一致のスコアを abstract フィールドより
も高くするには、phraseFields:['title^3', 'abstract'] と指定できます。有効な値:
text または text-array フィールドの名前とオプションの正の数値。デフォルト: フィールド
なし。phraseFields でフィールドを 1 つも指定しない場合、phraseSlop を指定しても近接
スコアは無効になります。有効なパーサー: dismax。
• phraseSlop - 検索フレーズからどの程度逸脱していても、phraseFields オプションで指定
した重みに従ってスコアを高めることができるかを指定する整数値。("phraseSlop: 2" な
ど)。近接スコアを有効にするには、phraseFields も指定する必要があります。有効な値:
正の整数。デフォルト: ゼロ(0)。有効なパーサー: dismax。
• explicitPhraseSlop - 検索文字列でフレーズが二重引用符で囲まれているときに、検索フ
レーズからどの程度逸脱できるかを指定する整数値(この近接距離を超えるフレーズは一致と
見なされません)。explicitPhraseSlop: 5. 有効な値: 正の整数。デフォルト: ゼロ(0)。
有効なパーサー: dismax。
• tieBreaker - 検索文字列の用語がドキュメントのフィールドに見つかると、他のドキュメン
トと比較してその単語がフィールド内どの程度一般的であるかに基づいてスコアが計算されま
す。その用語がドキュメントの複数のフィールドに出現する場合、デフォルトでは、スコアが
最も高いフィールドのみがドキュメント全体のスコアに反映されます。tieBreaker 値を指
定すると、スコアが低いフィールドの一致もドキュメントのスコアに反映されるようにできま
す。こうすると、2 つのドキュメントで特定の用語についてフィールドの最大スコアが同じ場
合、一致するフィールドの数が多いドキュメントの方がスコアが高くなります。tieBreaker を
使ってスコアを計算する計算式は次のようになります。
(max field score) + (tieBreaker) * (sum of the scores for the rest of
the matching fields)
たとえば、次のクエリは、dog という用語を title、description、review フィールドで探
し、tieBreaker を 0.1 に設定します。
q=dog&q.parser=dismax&q.options={fields:['title', 'description',
'review'], tieBreaker: 0.1}
dog がドキュメントの 3 つのフィールドすべてに出現し、各フィールドのスコアが
title=1、description=3、review=1 である場合、dog という用語の総合スコアは次のように計算
されます。
3 +
0.1 * (1+1) = 3.2
スコアが最高のフィールド以外は無視するには(純粋な最大値)、tieBreaker を 0 に設定し
ます。すべてのフィールドのスコアを合計するには(純粋な合計)、1 に設定します。有効な
値: 0.0 ~ 1.0。デフォルト: 0.0。有効なパーサー: dismax。
タイプ: JSON オブジェクト
デフォルト: 個々のオプションの説明を参照してください。
API Version 2013-01-01
251
Amazon CloudSearch 開発者ガイド
検索
必須: いいえ
q.parser
リクエストの処理に使用するクエリパーサーを指定します。値は
simple、structured、lucene、dismax です。q.parser を指定しない場合、Amazon
CloudSearch は simple クエリパーサーを使用します。
• simple - text および text-array フィールドの単純な検索を実行します。デフォルトで
は、simple クエリパーサーは静的に設定されたすべての text および text-array フィール
ドを検索します。q.options パラメータを使って、検索するフィールドを指定できます。検
索用語の前にプラス記号(+)を付ける場合、一致したと見なされるには、ドキュメントにそ
の検索用語が含まれている必要があります(q.options パラメータを使ってデフォルト演算
子を設定しない限り、これがデフォルトです)。-(NOT)、|(OR)、*(ワイルドカード)
演算子を使用して、特定の用語を除外したり、指定した用語のいずれかに一致する結果を得た
り、プレフィックスを検索したりできます。個々の単語ではなくフレーズを検索するには、
二重引用符でフレーズを囲みます。詳細については、「Amazon CloudSearch でのデータの検
索 (p. 98)」を参照してください。
• structured - 複数の式を組み合わせて検索条件を定義して高度な検索を実行します。特定の
フィールド内を検索したり、値および値範囲を検索したり、用語ブーストや matchall、near
のような高度なオプションを使用することもできます。詳細については、「複合クエリの作
成 (p. 101)」を参照してください。
• lucene - Apache Lucene のクエリパーサー構文を使用して検索します。詳細について
は、Apache Lucene のクエリパーサー構文を参照してください。
• dismax - DisMax のクエリパーサーで定義された Apache Lucene のクエリパーサー構文の簡略
化されたサブセットを使用して検索します。詳細については、「DisMax のクエリパーサー構
文」を参照してください。
型: 文字列
デフォルト: simple
必須: いいえ
return
レスポンスに含めるフィールドおよび式の値。カンマ区切りリストとして指定します。
デフォルトでは、検索レスポンスは戻り値として使用できるすべてのフィールドを含みま
す(return=_all_fields)。一致するドキュメントのドキュメント ID のみを返すに
は、return=_no_fields を指定します。各ドキュメントに対して計算された関連性スコアを取
得するには、return=_score を指定します。複数の戻り値フィールドはカンマ区切りリストと
して指定します。たとえば、return=title,_score は、一致する各ドキュメントのタイトルと
関連性スコアのみを返します。
型: 文字列
必須: いいえ
size
返される検索ヒットの最大数。
タイプ: 正の整数
デフォルト: 10
必須: いいえ
sort
検索結果をソートするときに使用するフィールドまたはカスタム式のカンマ区切りリスト。各
フィールドに対してソート方向(desc または asc)を指定する必要があります。("sort=year
desc,title asc" など)。最大 10 個のフィールドおよび式を指定できます。結果のソート時
にフィールドを使用するには、ドメイン設定でそのフィールドによるソートを有効にしている
必要があります。配列型のフィールドはソートに使用することができません。sort パラメー
タが指定されていない場合、結果はデフォルトの関連性スコアによって降順にソートされます
API Version 2013-01-01
252
Amazon CloudSearch 開発者ガイド
検索
(sort=_score desc)。ドキュメント ID(sort=_id)とバージョン(sort=_version)に
よってソートすることもできます。
型: 文字列
必須: いいえ
start
戻り値として返す最初の検索ヒットのオフセット。リクエストで start または cursor パラメー
タのどちらかを指定できます。両者は相互に排他的です。詳細については、「結果のページ分
割 (p. 139)」を参照してください。
タイプ: 正の整数
デフォルト: 0(最初のヒット)
必須: いいえ
構造化検索構文
Amazon CloudSearch の構造化検索構文を使用して、structured クエリパーサーを使用するときの
検索条件を定義し、fq パラメータを使ってフィルタ条件を指定します。
構造化クエリ演算子を使用するときは、演算子の名前、演算子のオプション、および操作対象の語句
を (OPERATOR OPTIONS STRING|EXPRESSION) のように指定します。オプションは文字列または
式の前に指定する必要があります。たとえば、(and (not field=genres 'Sci-Fi')(or (term
field=title boost=2 'star')(term field=plot 'star'))) と指定します。
Important
クエリ文字列の特殊文字は、URL エンコードする必要があります。たとえば、構造化ク
エリでは、= 演算子を %3D(term+field%3Dtitle+'star') のようにエンコードする必
要があります。特殊文字が URL エンコードされていない場合、Amazon CloudSearch は
InvalidQueryString エラーを返します。URL エンコードの詳細については、W3C の
「HTML URL エンコードリファレンス」を参照してください。
構造化クエリパーサーを使用する際に検索対象フィールドを指定しない場合、静的に設定されたす
べての text および text-array フィールドが検索されます。デフォルトでは、動的フィールドと
literal フィールドは検索されません。q.options パラメーターを使用して、デフォルトで検索す
るフィールドを指定できます。
括弧は、複合クエリで式の評価順序を制御します。式を括弧で囲んだ場合、その式が最初に評価さ
れ、その結果の値がクエリの残り部分の評価に使用されます。式には、構造化クエリ演算子を含める
ことができます。
また、構造化クエリパーサーを使用して、検索する文字列を一重引用符で囲むだけでシンプルテキス
ト文字列を検索できます。q='black swan'&q.parser="structured"
構造化クエリ演算子を使った複合クエリの作成方法の詳細については、「複合クエリの作
成 (p. 101)」を参照してください。
FIELD
構文: FIELD: 'STRING'|value
指定されたフィールドで、文字列、数値、日付、数値または日付の範囲を検索します。
文字列は一重引用符で囲む必要があります。文字列内の一重引用符やバックスラッシュはバック
スラッシュを使ってエスケープする必要があります。値の範囲を指定するには、上限と下限をカ
ンマ(,)で区切り、ブラケットか中括弧で範囲を囲みます。角括弧 [ または ] は、その境界も範
API Version 2013-01-01
253
Amazon CloudSearch 開発者ガイド
検索
囲に含まれることを示し、波括弧 { または } は、境界は除外することを示します。上限または下
限を省略すると、制限のない範囲を指定することができます。境界を省略するときは、波括弧を
使用する必要があります。
日付と時刻は、IETF RFC3339: yyyy-mm-ddTHH:mm:ss.SSSZ に従って、UTC(協定
世界時間)で指定されます。たとえば、1970 年 8 月 23 日午後 5 時は、UTC 形式では
1970-08-23T17:00:00Z となります。UTC で時間を指定するときは、小数点以下の秒数も指定
できます。例: 1967-01-31T23:20:50.650Z.
例:
title:'star'
year:2000
year:[1998,2000]
year:{,2011]
release_date:['2013-01-01T00:00:00Z',}
および
構文: (and boost=N EXPRESSION EXPRESSION ... EXPRESSIONn)
指定した式がすべて一致する場合にのみドキュメントを含めます。(ブール AND 演算子)。式に
は、構造化クエリ演算子または単純な検索文字列を含めることができます。検索文字列は一重引
用符で囲む必要があります。検索するフィールドのいずれかで指定された用語を含むドキュメン
トに一致するためには、(and 'star' 'wars') のようにそれぞれの用語を別の式として指定す
る必要があります。(and 'star wars') と指定した場合、star と wars が同じフィールド内に
ある場合のみ一致とみなされます。
boost 値は、検索クエリのこのパートの重要性を他のパートに対して相対的に高くする正の数値
です。
例:
(and title:'star' actors:'Harrison Ford' year:{,2000])
matchall
構文: matchall
ドメイン内のすべてのドキュメントが一致します。デフォルトでは、最初の 10 件を返しま
す。size および start パラメータを使用して、結果をページ分割します。
near
構文: (near field=FIELD distance=N boost=N 'STRING')
指定された複数用語の文字列を text または text-array で検索し、指定された距離内にそれら
の用語を含んでいるドキュメントが一致します。(これは、あいまいフレーズ検索と呼ばれるこ
とがあります)。field オプションを省略すると、Amazon CloudSearch はデフォルトで静的に
設定されたすべての text および text-array フィールドを検索します。デフォルトでは、動的
フィールドと literal フィールドは検索されません。q.options fields オプションを指定す
ることで、デフォルトで検索するフィールドを指定できます。
距離値は正の整数である必要があります。たとえば、plot フィールドに teenage と vampire
が 10 単語以内の距離で出現するドキュメントをすべて見つけるには、距離値を 10 に設定しま
す(near field=plot distance=10 'teenage vampire')。
boost 値は、検索クエリのこのパートの重要性を他のパートに対して相対的に高くする正の数値
です。
例:
API Version 2013-01-01
254
Amazon CloudSearch 開発者ガイド
検索
(near field=plot distance=10 'teenage vampire')
先頭の文字に
構文: (not boost=N EXPRESSION)
指定された式に一致するドキュメントを除外します。(ブール NOT 演算子)。式には、構造化ク
エリ演算子または単純な検索文字列を含めることができます。検索文字列は一重引用符で囲む必
要があります。
boost 値は、検索クエリのこのパートの重要性を他のパートに対して相対的に高くする正の数値
です。
例:
(not (or actors:'Harrison Ford' year:{,2010]))
または
構文: (or boost=N EXPRESSION1 EXPRESSION2 ... EXPRESSIONn)
指定した式のいずれかが一致する場合にドキュメントを含めます。(ブール OR 演算子)。式に
は、構造化クエリ演算子または単純な検索文字列を含めることができます。検索文字列は一重引
用符で囲む必要があります。
boost 値は、検索クエリのこのパートの重要性を他のパートに対して相対的に高くする正の数値
です。
例:
(or actors:'Alec Guinness' actors:'Harrison Ford' actors:'James Earl
Jones')
phrase
構文: (phrase field=FIELD boost=N 'STRING')
指定されたフレーズを text または text-array フィールドで検索します。field オプション
を省略すると、Amazon CloudSearch はデフォルトで静的に設定されたすべての text および
text-array フィールドを検索します。デフォルトでは、動的フィールドと literal フィール
ドは検索されません。q.options fields オプションを指定することで、デフォルトで検索する
フィールドを指定できます。
phrase 演算子を使用して、フレーズ検索を構造化クエリの他の検索条件と組み合わせます。た
とえば、q=(and (term field=title 'star') (range field=year {,2000])) は、title
フィールドに star を含み、year フィールドの値が 2000 以下のすべてのドキュメントに一致しま
す。
boost 値は、検索クエリのこのパートの重要性を他のパートに対して相対的に高くする正の数値
です。
例:
(phrase field=plot 'teenage girl')
プレフィックス
構文: (prefix field=FIELD boost=N 'STRING')
指定された用語にゼロ個以上の文字が続く文字列を text、text-array、literal、literalarray フィールドで検索します。field オプションを省略すると、Amazon CloudSearch はデ
API Version 2013-01-01
255
Amazon CloudSearch 開発者ガイド
検索
フォルトで静的に設定されたすべての text および text-array フィールドを検索します。デ
フォルトでは、動的フィールドと literal フィールドは検索されません。q.options fields
オプションを指定することで、デフォルトで検索するフィールドを指定できます。
prefix 演算子を使用して、前方一致検索を構造化クエリの他の検索条件と組み合わせます。た
とえば、q=(and (prefix field=title 'sta') (range field=year {,2000])) は、title
フィールドに sta というプレフィックスを含み、year フィールドの値が 2000 以下のすべてのド
キュメントに一致します。
boost 値は、検索クエリのこのパートの重要性を他のパートに対して相対的に高くする正の数値
です。
Note
検索候補を実装するには、前方一致検索を実行するのではなく、サジェスタを設定してク
エリします。詳細については、「候補リクエスト (p. 262)」を参照してください。
例:
(prefix field=title 'star')
range
構文: (range field=FIELD boost=N RANGE)
数値フィールド(double、double-array、int、int-array)または日付フィールド(date、datearray)で、指定された範囲内の値を検索します。指定された範囲内の値がフィールドに少なくと
も 1 つあるドキュメントに一致します。field オプションは必須です。
range 演算子を使用して、範囲検索を構造化クエリの他の検索条件と組み合わせます。たと
えば、q=(and (term field=title 'star') (range field=year {,2000])) は、title
フィールドに star を含み、year フィールドの値が 2000 以下のすべてのドキュメントに一致しま
す。
値の範囲を指定するには、上限と下限をカンマ(,)で区切り、ブラケットか中括弧で範囲を囲み
ます。角括弧 [ または ] は、その境界も範囲に含まれることを示し、波括弧 { または } は、境界は
除外することを示します。上限または下限を省略すると、制限のない範囲を指定することができ
ます。境界を省略するときは、波括弧を使用する必要があります。
日付と時刻は、IETF RFC3339: yyyy-mm-ddTHH:mm:ss.SSSZ に従って、UTC(協定
世界時間)で指定されます。たとえば、1970 年 8 月 23 日午後 5 時は、UTC 形式では
1970-08-23T17:00:00Z となります。UTC で時間を指定するときは、小数点以下の秒数も指定
できます。例: 1967-01-31T23:20:50.650Z.
boost 値は、検索クエリのこのパートの重要性を他のパートに対して相対的に高くする正の数値
です。
例:
(range field=year [1990,2000])
(range field=year {,2000])
(range field=year [1990,})
term
構文: (term field=FIELD boost=N 'STRING'|VALUE)
指定されたフィールドで文字列、数値、日付を検索します。数値を検索するときは field オプ
ションが必須です。field オプションを省略すると、Amazon CloudSearch はデフォルトで静的
API Version 2013-01-01
256
Amazon CloudSearch 開発者ガイド
検索
に設定されたすべての text および text-array フィールドを検索します。デフォルトでは、動
的フィールドと literal フィールドは検索されません。q.options fields オプションを指定
することで、デフォルトで検索するフィールドを指定できます。
term 演算子を使用して、用語検索を構造化クエリの他の検索条件と組み合わせます。たとえ
ば、q=(and (term field=title 'star') (range field=year {,2000])) は、title
フィールドに star を含み、year フィールドの値が 2000 以下であるすべてのドキュメントに一致
します。
文字列と日付は一重引用符で囲む必要があります。文字列内の一重引用符やバックスラッシュは
バックスラッシュを使ってエスケープする必要があります。
日付と時刻は、IETF RFC3339: yyyy-mm-ddTHH:mm:ss.SSSZ に従って、UTC(協定
世界時間)で指定されます。たとえば、1970 年 8 月 23 日午後 5 時は、UTC 形式では
1970-08-23T17:00:00Z となります。UTC で時間を指定するときは、小数点以下の秒数も指定
できます。例: 1967-01-31T23:20:50.650Z.
boost 値は、検索クエリのこのパートの重要性を他のパートに対して相対的に高くする正の数値
です。
例:
(term field=title 'star')
(term field=year 2000)
単純検索の構文
Amazon CloudSearch の単純検索の構文は、simple クエリパーサーで検索条件を定義するときに使
用します。simple クエリパーサーは、q.parser パラメータを指定しない場合にデフォルトで使用さ
れます。
simple クエリパーサーは、個々の用語またはフレーズを検索するときに使用します。デフォル
トでは、静的に設定されたすべての text および text-array フィールドが検索されます。
デフォルトでは、動的フィールドと literal フィールドは検索されません。q.options パラ
メータを使用して、検索するフィールドの指定、検索文字列で個々の用語を組み合わせるとき
に使用するデフォルト演算子の変更、または simple パーサー演算子の無効化を実行できます
(and、escape、fuzzy、near、not、or’phrase、precedence、prefix、whitespace)。
simple クエリパーサーの使用法の詳細については、「Amazon CloudSearch でのテキストの検
索 (p. 103)」を参照してください。
+(および)
構文: +TERM
指定の用語が必須です。一致するには、ドキュメントが指定の用語を含んでいる必要がありま
す。
例: +star
\(エスケープ)
構文: \CHAR
検索する特殊文字をエスケープします。次の文字をクエリの一部とするにはエスケープする必要
があります: + - & | ! ( ) { } [ ] ^ " ~ * ? : \ /
例: M\*A\*S\*H
~(あいまい)
構文: TERM~N
API Version 2013-01-01
257
Amazon CloudSearch 開発者ガイド
検索
あいまい検索を実行します。異なっていても用語が一致すると見なされる範囲を指定するには、
用語の後に ~ 演算子と値を指定します。
例: stor~1
~(近接)
構文: "PHRASE"~N
あいまいフレーズ検索を実行します。用語が離れていてもフレーズに一致すると見なされる距離
を指定するには、フレーズの後に ~ 演算子と値を指定します。
例: "star wars"~4
-(使用しない)
構文: -TERM
指定の用語を禁止します。一致するには、ドキュメントがその用語を含んでいてはなりません。
例: star -wars
| (または)
構文: |TERM
指定の用語を任意にします。
例: star |wars
"..."(フレーズ)
構文: "PHRASE"
フレーズ全体を検索します。~ 演算子と組み合わせて、あいまいフレーズ検索を実行できます。
例: "star wars"
(...)(優先順位)
構文: (...)
クエリの制約を評価する順番を制御します。最も内側にある括弧内のコンテンツが最初に評価さ
れます。
例: +(war|trek)+star
* (プレフィックス)
構文: CHARS*
指定された文字列と前方一致する用語を含むドキュメントに一致します。
例: sta*
検索レスポンス
リクエストが正常に完了すると、レスポンス本体に検索結果が含まれます。デフォルトで、検索結果
は JSON 形式で返されます。format パラメータを xml に設定すると、検索結果は XML 形式で返さ
れます。
return パラメータを明示的に指定しない限り、一致する各ドキュメント(ヒット)のドキュメン
ト ID、および戻り値として使用できるすべてのフィールドが含まれます。レスポンスには、見つ
かったヒット項目の合計数(found)およびリストされている最初のドキュメントのインデックス
(start)も示されます。デフォルトで、レスポンスは最初の 10 件のヒット項目を含みます。各レス
ポンスに含まれるヒット数を制御するには、リクエストに size パラメータを指定します。ヒット項
目をページ分割するには、start または cursor パラメータを使用できます。詳細については、「結
果のページ分割 (p. 139)」を参照してください。
API Version 2013-01-01
258
Amazon CloudSearch 開発者ガイド
検索
次の例は一般的な JSON レスポンスを示しています。
{
"status": {
"rid": "rtKz7rkoeAojlvk=",
"time-ms": 10
},
"hits": {
"found": 3,
"start": 0,
"hit": [
{
"id": "tt1142977",
"fields": {
"rating": "6.9",
"genres": [
"Animation",
"Comedy",
"Family",
"Horror",
"Sci-Fi"
],
"plot": "Young Victor conducts a science experiment to
bring his beloved dog Sparky back to life, only
to face unintended, sometimes monstrous,
consequences.",
"release_date": "2012-09-20T00:00:00Z",
"title": "Frankenweenie",
"rank": "1462",
"running_time_secs": "5220",
"directors": [
"Tim Burton"
],
"image_url": "http://ia.media-imdb.com/images/M/MV5BMjIx
ODY3MjEwNV5BMl5BanBnXkFtZTcwOTMzNjc4Nw@@._
V1_SX400_.jpg",
"year": "2012",
"actors": [
"Winona Ryder",
"Catherine O'Hara",
"Martin Short"
]
}
},
.
.
.
]
}
}
次の例は同等の XML レスポンスを示しています。
<results>
<status rid="itzL7rkoeQojlvk=" time-ms="34"/>
<hits found="3" start="0">
<hit id="tt1142977">
<field name="rating">6.9</field>
API Version 2013-01-01
259
Amazon CloudSearch 開発者ガイド
検索
<field
<field
<field
<field
<field
<field
name="genres">Animation</field>
name="genres">Comedy</field>
name="genres">Family</field>
name="genres">Horror</field>
name="genres">Sci-Fi</field>
name="plot">Young Victor conducts a science experiment to
bring his beloved dog Sparky back to life,
only
to face unintended, sometimes monstrous,
consequences.
</field>
<field name="release_date">2012-09-20T00:00:00Z</field>
<field name="title">Frankenweenie</field>
<field name="rank">1462</field>
<field name="running_time_secs">5220</field>
<field name="directors">Tim Burton</field>
<field name="image_url">http://ia.media-imdb.com/images/M/MV5BMjI
xODY3MjEwNV5BMl5BanBnXkFtZTcwOTMzNjc4Nw@@.
_V1_SX400_.jpg
</field>
<field name="year">2012</field>
<field name="actors">Winona Ryder</field>
<field name="actors">Catherine O'Hara</field>
<field name="actors">Martin Short</field>
</hit>
.
.
.
</hits>
</results>
レスポンス形式の設定は、成功したリクエストのレスポンスのみに影響します。エラーレスポンスの
形式は、エラーの発生元によって異なります。検索サービスによって返されるエラーは、常に JSON
形式で返されます。サーバーのタイムアウトなど、リクエストのルーティング関連の問題による 5xx
エラーは XML 形式で返されます。リクエストがエラーコードを返す場合、レスポンス本文に発生した
エラーに関する情報が含まれています。リクエスト本文が解析および検証中にエラー場発生した場合
は、エラーコードは 400 に設定され、レスポンス本文にはエラーのリストとエラーが発生した場所が
含まれています。
検索レスポンスのヘッダー
Content-Type
オブジェクトデータの形式を記述する標準 MIME タイプ。詳細については、「W3C RFC 2616
Section 14」を参照してください。
有効な値: application/json または application/xml
デフォルト: application/json
Content-Length
応答の本文のバイト長。
検索レスポンスのプロパティ(JSON)
status
リソース ID(rid)およびリクエストの処理にかかった時間(time-ms)を含みます。
rid
暗号化されたリソース ID。
API Version 2013-01-01
260
Amazon CloudSearch 開発者ガイド
検索
time-ms
検索リクエストを処理するのにかかった時間(ミリ秒単位)。
hits
一致するドキュメントの数(found)、レスポンスに含まれる最初のドキュメントのインデック
ス(start)、各ヒット項目のドキュメント ID とデータをリストした配列(hit)を含みます。
found
Amazon CloudSearch が検索リクエストの処理を終了した後、検索リクエストに一致する
ヒット項目の合計数。
start
このレスポンスで返された最初のヒット項目のインデックス。
ヒット
各ヒット項目のドキュメント ID とデータをリストする配列。
id
ドキュメントの一意の識別子。
fields
返されたフィールドのリスト。
facets
ファセット情報とファセット数を含みます。
FACETFIELD
ファセットが算出されたフィールド。
バケット
算出されたファセットの値と数の配列。
value
カウントされるファセット値。
count
FACETFIELD にファセット値を含むヒット数。
検索レスポンスの要素(XML)
results
検索結果を含みます。リクエストの処理中に発生したエラーは、info 要素のメッセージとして返
されます。
status
リソース ID(rid)、およびリクエストの処理にかかった時間(time-ms)を含みます。
hits
ヒットの統計と hit 要素のコレクションを含みます。found 属性は、Amazon CloudSearch が
結果の処理を終了した後、検索リクエストに一致するヒット項目の合計数です。含まれる hit
要素は、関連性スコアまたは検索リクエストで指定された sort オプションに応じてソート
されます。
ヒット
検索リクエストに一致するドキュメント。id 属性は、ドキュメントの一意の ID です。返
される各フィールドの d(データ)要素を含みます。
field
ヒット項目から返されるフィールド。hit 要素は、返される各フィールドの d(デー
タ)要素を含みます。
facets
検索リクエストでリクエストされた各ファセットの facet 要素を含みます。
ファセット
ファセット数が算出されたフィールドの各値の bucket 要素を含みま
す。facet.FIELD の size オプションを使用して、返される制約の数を指
定できます。デフォルトで、上位 10 個の制約のファセット数が返されま
API Version 2013-01-01
261
Amazon CloudSearch 開発者ガイド
候補リクエストの送信
す。facet.FIELD の buckets オプションを使用して、カウントする値を明示的
に指定することができます。
bucket
ファセットフィールド値と、検索ヒット内でその値が出現する回数(カウ
ント)。
Amazon CloudSearch での候補リクエストの送信
候補リクエストは、HTTP GET 経由でドメインの検索エンドポイント(2013-01-01/suggest)に
送信します。提案サービスへのアクセスを制御する方法については、「Amazon CloudSearch のアク
セス設定 (p. 30)」を参照してください。
すべての候補リクエストで API バージョンを指定する必要があり、そのバージョンはドメインを作成
したときに指定されたバージョンと一致している必要があります。
たとえば、次のリクエストは、title というサジェスタを使用して search-moviesrr2f34ofg56xneuemujamut52i.us-east-1.cloudsearch.amazonaws.com ドメインからクエ
リ文字列 oce の候補を取得します。
http://search-imdb-hd6ebyouhw2lczkueyuqksnuzu.uswest-2.cloudsearch.amazonaws.com/2013-01-01/suggest d"q=oce&suggester=suggest_title"
任意の方法を使用して、ドメインの検索エンドポイントに GET リクエストを送信することができま
す。ウェブブラウザにリクエスト URL を直接入力する、cURL を使用してリクエストを送信する、
またはお気に入りの HTTP ライブラリを使用して HTTP 呼び出しを生成することができます。ま
た、Amazon CloudSearch コンソールで検索テスターを使用して候補を取得することもできます。詳
細については、「検索テスターによる検索 (p. 12)」を参照してください。
Important
ドメインのドキュメントエンドポイントと検索エンドポイントは、ドメインが存在している
間変わりません。すべてのアップロードリクエストや検索リクエストの前にエンドポイント
を取得するのではなく、エンドポイントをキャッシュに保存してください。各リクエストの
前に aws cloudsearch describe-domains または DescribeDomains を呼び出すことに
よって Amazon CloudSearch 設定サービスにクエリを実行すると、リクエストが調整される
可能性があります。
デフォルトでは、Amazon CloudSearch は JSON 形式で応答を返します。format パラメータを
format=xml のように指定して、結果を XML 形式で取得できますレスポンス形式の設定は、成功し
たリクエストのレスポンスのみに影響します。エラーレスポンスの形式は、エラーの発生元によって
異なります。検索サービスによって返されるエラーは、常に JSON 形式で返されます。サーバーの
タイムアウトなど、リクエストのルーティング関連の問題による 5xx エラーは XML 形式で返されま
す。
候補
候補リクエスト
Amazon CloudSearch の候補構文
GET /2013-01-01/suggest
API Version 2013-01-01
262
Amazon CloudSearch 開発者ガイド
候補
Amazon CloudSearch の候補リクエストヘッダー
HOST
クエリ対象のドメインの検索リクエストエンドポイント。DescribeDomains (p. 182) を使用し
て、ドメインの検索リクエストエンドポイントを取得できます。
必須: はい
Amazon CloudSearch の候補リクエストのパラメータ
q
候補を入手する文字列。
型: 文字列
必須: はい
サジェスタ
一致候補を見つけるのに使用するサジェスタの名前。
型: 文字列
必須: はい
size
返される候補の最大数。
タイプ: 正の整数
デフォルト: 10
必須: いいえ
形式
レスポンスのコンテンツタイプを指定します。
型: 文字列
有効な値: json|xml
デフォルト: json
必須: いいえ
候補レスポンス
リクエストが正常に完了すると、レスポンス本体に候補が含まれています。デフォルトでは、候補は
JSON 形式で返されます。XML 形式で結果を得るには、format パラメータを xml に設定します。
レスポンス形式の設定は、成功したリクエストのレスポンスのみに影響します。エラーレスポンスの
形式は、エラーの発生元によって異なります。検索サービスによって返されるエラーは、常に JSON
形式で返されます。サーバーのタイムアウトなど、リクエストのルーティング関連の問題による 5xx
エラーは XML 形式で返されます。リクエストがエラーコードを返す場合、レスポンス本文に発生した
エラーに関する情報が含まれています。リクエスト本文が解析および検証中にエラー場発生した場合
は、エラーコードは 400 に設定され、レスポンス本文にはエラーのリストとエラーが発生した場所が
含まれています。
次の例は候補リクエストに対する JSON レスポンスを示しています。
{
API Version 2013-01-01
263
Amazon CloudSearch 開発者ガイド
検索サービスのエラー
"status": {
"rid": "qOSM5s0oCwr8pVk=",
"time-ms": 2
},
"suggest": {
"query": "oce",
"found": 3,
"suggestions": [
{
"suggestion": "Ocean's Eleven",
"score": 0,
"id": "tt0054135"
},
{
"suggestion": "Ocean's Thirteen",
"score": 0,
"id": "tt0496806"
},
{
"suggestion": "Ocean's Twelve",
"score": 0,
"id": "tt0349903"
}
]
}
}
次の例は同等の XML レスポンスを示しています。
<results>
<status rid="/pSz580oDQr8pVk=" time-ms="2"/>
<suggest query="oce" found="3">
<suggestions>
<item suggestion="Ocean's Eleven" score="0" id="tt0054135"/>
<item suggestion="Ocean's Thirteen" score="0" id="tt0496806"/>
<item suggestion="Ocean's Twelve" score="0" id="tt0349903"/>
</suggestions>
</suggest>
</results>
検索サービスのエラー
検索リクエストまたは候補リクエストは、3 種類のステータスコードを返します。
• 5xx ステータスコードは、内部サーバーエラーが発生したことを示します。5xx エラーコードは、
一般に一時的なエラー条件を表すため、すべてキャッチして再試行する必要があります。詳細につ
いては、「エラー処理 (p. 142)」を参照してください。
• 4xx ステータスコードは、リクエストの形式が正しくないことを示します。エラーを修正してリク
エストを再送信してください。
• 2xx ステータスコードは、リクエストが正常に処理されたことを示します。
エラーレスポンスの形式は、エラーの発生元によって異なります。検索サービスによって返されるエ
ラーは、常に JSON 形式で返されます。サーバーのタイムアウトなど、リクエストのルーティング関
連の問題による 5xx エラーは XML 形式で返されます。
検索サービスが返すエラーは次の情報を含みます。
API Version 2013-01-01
264
Amazon CloudSearch 開発者ガイド
検索サービスのエラー
error
検索サービスが返したエラーメッセージを含みます。各エラーには code および msg プロパティ
が含まれています。
コード
エラーコード。
msg
検索サービスが返したエラーの説明。
API Version 2013-01-01
265
Amazon CloudSearch 開発者ガイド
ドキュメントのアップロード
Amazon CloudSearch のトラブル
シューティング
次のトピックでは、Amazon CloudSearch の使用中に発生する可能性がある問題の解決策について説
明します。
トピック
• ドキュメントのアップロード (p. 266)
• Amazon CloudSearch ドメイン内のすべてのドキュメントの削除 (p. 267)
• ドキュメントの削除後も Amazon CloudSearch ドメインが縮小しない (p. 267)
• ドキュメント更新のレイテンシー (p. 268)
• ドキュメントを Amazon CloudSearch ドメインにアップロードする際に大量の 5xx エラーが発生
する (p. 268)
• Amazon CloudSearch での検索のレイテンシーとタイムアウト (p. 268)
• Amazon CloudSearch のファセットクエリの検索のレイテンシー (p. 269)
• Amazon CloudSearch ドメインの検索時に 5xx エラーが急増する (p. 269)
• Amazon CloudSearch でインデックス作成オプションを更新した後のインデックス作成エ
ラー (p. 269)
• Amazon CloudSearch リクエストの送信時にドメインが見つからない (p. 269)
• ドメイン情報により、検索可能なドキュメントの数が返されない (p. 270)
• 構成サービスアクセスポリシーが Amazon CloudSearch で機能しない (p. 270)
• 検索およびドキュメントサービスアクセスポリシーが Amazon CloudSearch で機能しな
い (p. 270)
• Amazon CloudSearch コンソールのアクセス許可エラー (p. 271)
• ワイルドカードを使用してテキストフィールドを検索すると、予期した結果が生成されな
い (p. 271)
• ディープページ分割でカーソルを使用した場合の結果の不整合 (p. 272)
ドキュメントのアップロード
ドキュメントデータの形式が正しくない場合や無効な値が含まれている場合、アップロードを試み
る、またはそのデータを使用してドメインのフィールドの設定を試みると、エラーが発生します。よ
くある問題と解決策を以下に示します。
API Version 2013-01-01
266
Amazon CloudSearch 開発者ガイド
すべてのドキュメントの削除
• 無効な JSON-JSON を使用している場合、まずドキュメントバッチに JSON 構文エラーがないこと
を確認します。これは、JSON Validator などの検証ツールを使用して実行します。その結果、デー
タに存在する根本的な問題が特定されます。
• 無効な XML - ドキュメントバッチは、正しい形式の XML にする必要があります。フィールドに
XML データが含まれている場合、特に問題が発生する可能性が高くなります。データは、XML で
エンコードされているか、CDATA セクションに囲まれている必要があります。問題を特定するに
は、W3C Markup Validation Service などの検証ツールを使用してドキュメントバッチを実行しま
す。
• ドキュメントバッチとして認識されない - cs-import-documents またはコンソールを使用
してデータをアップロードするときに、Amazon CloudSearch が有効なドキュメントバッチ
としてデータを認識しない場合、Amazon CloudSearch は、単一のコンテンツフィールドと
content_encoding、content_type、resourcename などの汎用メタデータフィールドが含ま
れる有効なバッチを生成します。これらの通常ドメイン用に設定されたフィールドではないため、
フィールドが存在しないことを示すエラーが発生します。同様に、無効なバッチからドメインを設
定しようとした場合、Amazon CloudSearch はバッチ内のフィールドではなくコンテンツフィール
ドとメタデータフィールドで応答します。
まず、バッチが有効な XML または JSON であることを確認します。有効な場合、無効なドキュメ
ント ID がないか確認し、各ドキュメントにオペレーションタイプを指定したことを確認します。追
加オペレーションの場合、各ドキュメントにタイプ、ID、および少なくとも 1 つのフィールドが指
定されていることを確認します。削除オペレーションでは、タイプおよび ID のみ指定する必要があ
ります。データの形式の詳細については、「ドキュメントバッチの作成 (p. 61)」を参照してくださ
い。
• ドキュメント ID の値が不適切-ドキュメント ID には、文字または数字と文字 _ - = # ; : / ? @ & を含
めることができます。 ドキュメント ID は、1~128 文字以内にする必要があります。
• 複数値フィールドに値がない - JSON でドキュメントデータを指定するときは、空の配列をフィー
ルドの値として指定することはできません。複数値フィールドには、1 個以上の値を含める必要が
あります。
• 不適切な文字 - ドキュメントバッチの生成中にデータをフィルタしない場合に検出が困難となる
1 つの問題は、XML で無効な文字が含まれていることです。JSON バッチと XML バッチにはどち
らも、XML で有効となる UTF-8 文字を含めることができます。JSON Validator や W3C Markup
Validation Service などの検証ツールを使用すると、無効な文字を特定できます。
Amazon CloudSearch ドメイン内のすべてのド
キュメントの削除
Amazon CloudSearch には現在、ドメイン内のすべてのドキュメントを削除するメカニズムが用意さ
れていません。
ドキュメントの削除後も Amazon CloudSearch ド
メインが縮小しない
インデックス サイズに対応するためにドメインが拡張されていた場合、大量のドキュメントを削除す
ると、次にインデックス全体を再構築するときに、ドメインが縮小されます。インデックスは定期的
に自動再構築されますが、できる限り早く縮小するには、ドキュメントを削除しているときに、明示
的にインデックス作成を実行 (p. 95)します。
API Version 2013-01-01
267
Amazon CloudSearch 開発者ガイド
ドキュメント更新のレイテンシー
ドキュメント更新のレイテンシー
大量の単一ドキュメントバッチを送信すると、各ドキュメントが検索可能になるまでの時間が長く
なる可能性があります。大量の更新トラフィックがある場合、更新をバッチ処理する必要がありま
す。5 MB の制限に近いバッチサイズを使用することをお勧めします。詳細については、「ドキュメン
トバッチの作成 (p. 61)」を参照してください。
1 日あたり (24 時間ごと) 最大 10,000 のドキュメントバッチをロードでき、各バッチサイズの合計
は最大 5 MB です。1 日あたりのデータよりさらに多くの量をロードすると、ドキュメント更新の
レイテンシーが増えます。このリスクを軽減するには、より大きい必要なインスタンスタイプを選
択することで更新容量を増やすことができます。詳細については、「スケーリングオプションの設
定 (p. 41)」を参照してください。
ドキュメントを Amazon CloudSearch ドメインに
アップロードする際に大量の 5xx エラーが発生す
る
アップロードを並列処理する場合で、ドメインが search.m1.small インスタンスにある場合、許容で
きないほど高い割合で 504 または 507 エラーが発生することがあります。必要なインスタンスタイ
プをより大きいインスタンスタイプに設定すると、更新容量が増大し、エラー率が下がります。5xx
エラー処理の詳細については、「エラー処理 (p. 142)」を参照してください。アップロード容量を
増大するようにドメインのサイズを事前設定する方法については、「スケーリングオプションの設
定 (p. 41)」を参照してください。
Amazon CloudSearch での検索のレイテンシーと
タイムアウト
応答時間が遅い、内部サーバーエラー(通常は 507 または 509 エラー)が頻繁に発生する、また
は検索対象のデータ量が大幅に増加することなく、検索ドメインで消費されるインスタンス時間数
が増える場合は、検索リクエストを微調整して処理オーバーヘッドを減らすと役立つことがありま
す。詳細については、「Amazon CloudSearch での検索リクエストのパフォーマンスのチューニン
グ (p. 116)」を参照してください。必要なレプリケーション数を増やしても、検索リクエストの処理
が速くなることがあります。詳細については、「スケーリングオプションの設定 (p. 41)」を参照して
ください。
507 および 509 のエラーは、通常、検索サービスが過負荷になっていることを示します。これは、送
信した検索リクエストのボリュームや複雑さが原因である可能性があります。Amazon CloudSearch
は、通常、負荷を処理するために自動的にスケーリングします。追加検索インスタンスのデプロイに
は時間がかかるため、エクスポネンシャルパックオフ再試行ポリシーを使用して、一時的にリクエス
トレートを低減し、リクエストの失敗を最小限に抑えることをお勧めします。詳細については、「エ
ラーの再試行とエクスポネンシャルパックオフ」を参照してください。
複雑な検索クエリを 1 つの小さな検索インスタンスに送信するなど、特定の使用パターンは、自動ス
ケーリングをトリガーすることなくタイムアウトする可能性があります。高いエラー率が頻繁に見ら
れる場合、Amazon CloudSearch Service Limit Request フォームを使用して追加容量を明示的にリク
エストできます。
API Version 2013-01-01
268
Amazon CloudSearch 開発者ガイド
検索のレイテンシーとタイムアウト
Amazon CloudSearch のファセットクエリの検索
のレイテンシー
buckets オプションを選択してファセット情報をバケットしているときにクエリのパフォーマンスが
遅くなる場合は、バケット方法を interval に設定してください。詳細については、「ファセット情
報のバケット (p. 121)」を参照してください。
Amazon CloudSearch ドメインの検索時に 5xx エ
ラーが急増する
検索ドメインでトラフィックが急増した場合、Amazon CloudSearch はドメインに検索インスタン
スを追加して増加した負荷を処理することにより対応します。ただし、新しいインスタンスをセッ
トアップするまで数分かかります。新しいインスタンスがリクエストを処理できるようになるま
で、5xx エラーが一時的に増加することがよくあります。5xx エラー処理の詳細については、「エ
ラー処理 (p. 142)」を参照してください。予期される検索リクエストの急増を処理するために、ドメ
インを事前スケーリングする方法については、「スケーリングオプションの設定 (p. 41)」を参照して
ください。
Amazon CloudSearch でインデックス作成オプ
ションを更新した後のインデックス作成エラー
ドメインのインデックス設定を変更した場合、場合によっては、インデックス作成を実行すると検証
失敗エラーが発生することがあります。これは、設定したインデックスフィールドオプションが、
インデックス内にすでに存在するドキュメントと互換性がないことを意味します。具体的には、イ
ンデックスフィールドのタイプを変更しましたが、そのタイプと互換性がないデータを含んでいる
ドキュメントがインデックスにあります。たとえば、literal フィールドを int フィールドに変
更し、一部のドキュメントのそのフィールドに英数字が含まれている場合にこの状況が発生する可
能性があります。この場合、Amazon CloudSearch は処理された ALL フィールドのステータスを
FailedToValidate 状態に設定します。互換性のない設定の変更をロールバックすると、インデッ
クスを再構築できるようになります。変更が必要な場合、互換性のないドキュメントを更新するか、
インデックスから削除し、新しい設定を使用する必要があります。エラーの原因となった変更を特定
できない場合や、互換性のないドキュメントの特定するのに支援が必要な場合は、サポートにお問い
合わせください。
Amazon CloudSearch リクエストの送信時にドメ
インが見つからない
2011-02-01 コマンドラインツールまたは SDK を使用して 2013-01-01 ドメインにアクセスすること
はできません。同様に、2013-01-01 コマンドラインツールまたは SDK を使用して 2011-02-01 ドメ
インにアクセスすることはできません。リクエストで正しい API バージョンを指定しており、適切な
コマンドラインツールまたは SDK を使用していることを確認してください。
API Version 2013-01-01
269
Amazon CloudSearch 開発者ガイド
検索可能なドキュメントの数が返されない
ドメイン情報により、検索可能なドキュメントの
数が返されない
aws cloudsearch describe-domains と DescribeDomains は、ドメイン内の検索可能なド
キュメントの数を返しません。検索可能ドキュメントの数を取得するには、コンソールを使用する
か、matchall リクエストをドメインの検索エンドポイントに送信します。
q=matchall&q.parser=structured&size=0
構成サービスアクセスポリシーが Amazon
CloudSearch で機能しない
2011 ドメインと 2013 ドメインの両方があり、設定サービスにアクセスするための IAM ポリシーを
設定済みの状態で、権限がないことを示すエラーが発生する場合、2011-02-01 API と 2013-01-01 API
では Amazon CloudSearch ARN が異なる点に注意してください。ユーザーが 2011 ドメインと 2013
ドメインの両方にアクセスできるようにするには、IAM ポリシーで両方の ARN へのアクセスを許可
する必要があります。以下に例を示します。
{
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloudsearch:*",
],
"Resource": "arn:aws:cloudsearch:*",
"Resource": "arn:aws:cs:*"
}
]
}
2011 ポリシーにより特定のドメインまたはアクションへのアクセス権が付与されている場合、そ
れらの制限をポリシーに含める必要があります。2011 ドメインでサポートされるアクションは
cloudsearch:* だけであるため、2011-01-01 API で作成されたドメインにリソースレベルのアクセ
ス許可を設定しようとすると他のエラーが発生する可能性がある点に注意してください。
検索およびドキュメントサービスアクセスポリ
シーが Amazon CloudSearch で機能しない
ドメインの検索およびドキュメントサービスエンドポイントのアクセスポリシーを設定していながら
「403 Request forbidden by administrative rules」エラーが発生する場合、次のいずれかの問題が原因
と考えられます。
• リクエストで API バージョンとリソース名が指定されていることを確認します。たとえ
ば、2013-01-01 API を使用してドキュメントをアップロードするには、ドメインのドキュメント
サービスエンドポイントに /2013-01-01/documents/batch を付加する必要があります。
API Version 2013-01-01
270
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch コンソールのアクセス許可エラー
doc-movies-123456789012.us-east-1.cloudsearch.amazonaws.com/2013-01-01/
documents/batch
2013-01-01 API を使用して検索リクエストを送信するには、ドメインの検索エンドポイントに
/2013-01-01/search を付加する必要があります。
search-movies-123456789012.us-east-1.cloudsearch.amazonaws.com/2013-01-01/
search?q=star+wars&return=title
2013-01-01 API を使用して候補を取得するには、ドメインの検索エンドポイントに /2013-01-01/
suggest を付加する必要があります。
search-movies-123456789012.us-east-1.cloudsearch.amazonaws.com/2013-01-01/
suggest?q=kat&suggester=mysuggester
• EC2 インスタンスから接続する場合、アクセスポリシーにより EC2 インスタンスのパブリック IP
アドレスが指定されることを確認します。
• 接続元のマシンがルーターの背後にある場合、アクセスポリシーによりパブリック向けの IP アドレ
スが指定されることを確認します。
詳細については、「Amazon CloudSearch のアクセス設定 (p. 30)」を参照してください。
Amazon CloudSearch コンソールのアクセス許可
エラー
コンソールにアクセスするには、DescribeDomains アクションへのアクセス許可が必要です。特定
のドメインとアクションへのアクセスは、設定済みの IAM アクセスポリシーにより制限される可能
性があります。さらに、Amazon S3 バケットまたは DynamoDB テーブルからデータをアップロード
するには、それらのサービスとリソースにアクセスする必要があります。Amazon CloudSearch アク
セスポリシーの詳細については、「Amazon CloudSearch のアクセス設定 (p. 30)」を参照してくださ
い。
ワイルドカードを使用してテキストフィールドを
検索すると、予期した結果が生成されない
検索リクエストを送信すると、インデックスに存在する用語に対して一致できるように、検索対象の
テキストには同じテキスト処理が行われます。ただし、プレフィックス検索を実行する場合、検索用
語でテキスト分析は実行されません。これは、語幹解釈が有効な場合、末尾が s のプレフィックスを
検索すると、用語の単数形には通常一致しないことを意味します。これは、複数形だけでなく末尾が
s のあらゆる用語に適用される可能性があります。たとえば、サンプル映画データの actor フィール
ドで Anders を検索した場合、一致する映画が 3 つあるとします。Ander* を検索した場合、それら
の映画に加えて他のいくつかの映画が一致します。一方、Anders* を検索した場合、一致はありませ
ん。これは、用語が ander としてインデックスに格納されており、anders はインデックスにないた
めです。
語幹解釈のために、ワイルドカード検索を行っても関連する一致がすべて返されない場
合、AlgorithmicStemming オプションを none に設定することでテキストフィールドの語幹解釈を
API Version 2013-01-01
271
Amazon CloudSearch 開発者ガイド
ディープページ分割でカーソル
を使用した場合の結果の不整合
抑制できます。または、データを text フィールドではなく literal フィールドにマッピングできま
す。
Amazon CloudSearch によるテキストの処理方法の詳細については、「Amazon CloudSearch でのテ
キスト処理 (p. 82)」を参照してください。
ディープページ分割でカーソルを使用した場合の
結果の不整合
ドキュメントスコア (_score) によってソートされた結果セットを、カーソルを使用してページ分割
すると、リクエストの合間にインデックスが更新された場合に結果が不整合になることがあります。
ドメインのレプリケーション数が 1 より大きい場合にも同様の現象が発生することがあります。こ
れは、更新が結果整合性方式でドメイン内のインスタンス間に適用されるためです。問題になる場合
は、スコアによるソートを避けてください。sort オプションを使用して特定のフィールドでソート
するか、または q の代わりに fq を使用して検索条件を指定できます。(ドキュメントスコアはフィル
タークエリでは計算されません)
API Version 2013-01-01
272
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch の制限の概要
この表は、Amazon CloudSearch 内での命名とサイズに関する制限を示しています。検索インスタン
スや検索ドメインのパーティションの最大数を増やす必要がある場合は、リクエストを送信できま
す。検索ドメインの最大数など、他の制限を増やす方法については、Amazon CloudSearch にお問い
合わせください。
現在の Amazon CloudSearch の制限を次の表に要約します。
項目
制限
バッチサイズ
最大バッチサイズは 5 MB です。
データのロードボリューム
1 日あたり (24 時間ごと) 最大 10,000 のドキュメントバッ
チをロードでき、各バッチサイズの合計は最大 5 MB で
す。1 日あたりのデータよりさらに多くの量をロードする
と、ドキュメント更新のレイテンシーが増えます。このリ
スクを軽減するには、より大きい必要なインスタンスタイ
プを選択することで更新容量を増やすことができます。詳
細については、「ドキュメントバッチの作成 (p. 61)」を参
照してください。
ドキュメントサイズ
最大ドキュメントサイズは 1 MB です。
式
• ドメインには最大 50 の式を設定できます。
• 式の最大サイズは 10240 バイトです。
• 式により返すことができる最大値は max(int64_t) です。
強調表示
• 強調表示できる検索用語の最大出現回数は 5 です。
• ハイライトは、テキストフィールドの最初の 10 KB の
データに対してのみ返されます。
インデックスフィールド
• ドメインには最大 200 のインデックスフィールドを設定
できます。
• フィールドでは最大 1000 個の値を指定できます。
• 配列型フィールドでは最大 20 のソースを指定できま
す。
• リテラルフィールドの最大サイズは、4096 の UTF-8
コードポイントです。
• フィールドのデフォルト値の最大サイズは 1 KB です。
API Version 2013-01-01
273
Amazon CloudSearch 開発者ガイド
項目
制限
• int フィールド値には、-9,223,372,036,854,775,808 から
9,223,372,036,854,775,807(これらの値を含みます)を
含めることができます。
• テキストまたはテキスト配列フィールド内の個々の語
は、256 文字を超える場合はストップワードとして扱わ
れます。
命名規則
• ドメイン名: 使用できる文字は、a ~ z(小文字)、0 ~
9、ハイフン(-)です。ドメイン名は、3 文字以上、28
文字以内で、先頭は英字または数字にする必要がありま
す。
• フィールド名: 使用できる文字は、a ~ z(小文字)、0
~ 9、_(下線)です。フィールド名は、1 文字以上、64
文字以内で、先頭は英文字にする必要があります。score
という名前は予約済みのため、フィールド名として使用
できません。
• 式名: 使用できる文字は、a ~ z(小文字)、0~
9、_(下線)です。式名は、3 文字以上、64 文字以内
で、先頭は英字にする必要があります。score という名
前は予約済みのため、式名として使用できません。
• ドキュメント ID: ドキュメント ID(_id)には、任意の文
字または数字と、_ - = # ; : / ? @ & を使用できます。 ド
キュメント ID は、1~128 文字以内にする必要がありま
す。
ポリシードキュメントサイズ
Amazon CloudSearch ポリシードキュメントの最大サイズ
は 100 KB です。
リージョンの制限
ap-northeast-2 リージョンでは m4 インスタンスタイプの
みがサポートされています。
_score
ドキュメントのテキスト関連性スコアは正の浮動小数点値
です。
検索ドメイン
AWS アカウントごとに最大 100 個の検索ドメインを作成
できます。
検索インスタンス
• ドメインにデプロイできる検索インスタンスの最大数は
50 です。
• 使用できるインスタンスタイプは
search.m1.small、search.m3.medium、search.m3.large、search.m3.xlarge、
です。
検索パーティション
検索インデックスは、最大 10 のパーティションに分割で
きます。
API Version 2013-01-01
274
Amazon CloudSearch 開発者ガイド
項目
制限
検索リクエスト
• 複合クエリ: 最大 1024 の句を含めることができます。
• GET リクエスト: HTTP GET リクエストとして送信され
る検索リクエストの最大サイズは 8190 バイトです。
• ファセットパラメータ: 返すことができるファセット値
の最大数は 10,000 です。
• サイズパラメータ: 0 ~ 10000 の範囲の値を含めること
ができます。サイズパラメータと起動パラメータの合
計が 10,000 個を超えることはできません。10,000 ヒッ
トを超えるページが必要な場合は、カーソルを使用しま
す。
• ソートパラメータ: 最大 10 の int フィールドと式を含め
ることができます。
• 起動パラメータ: 0 ~ 10000 の範囲の値を含めることが
できます。サイズパラメータと起動パラメータの合計が
10,000 個を超えることはできません。10,000 ヒットを
超えるページが必要な場合は、カーソルを使用します。
サジェスタ
• ドメインには最大 10 のサジェスタを定義できます。
• 最初の 512 バイトのテキストフィールドだけが候補の生
成に使用されます。
• サジェスタの SortExpression から計算されたスコア
は、最も近い整数に丸められ、下限が 0 で上限が 2^31-1
です。
API Version 2013-01-01
275
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch のリソース
Amazon CloudSearch を利用する際に役立つリソースを次の表にまとめました。
リソース
説明
Amazon CloudSearch コマンドライン
ツール
Mac OS/Linux または Windows 用の Amazon CloudSearch
コマンドラインツールをダウンロードして、検索ドメイン
を作成および設定し、検索するデータをアップロードしま
す。
AWS SDK
Java、.NET、Node.js、PHP、Python、Ruby 用の SDK も
含め、ほとんどの AWS SDK は Amazon CloudSearch をサ
ポートしています。
Amazon CloudSearch サンプルデータ
IMDB サンプルデータをダウンロードして、コマンドラ
インツールまたは設定サービス API を使って検索ドメ
インを素早く稼働状態にし、独自のデータを Amazon
CloudSearch 用に整形する方法を確認します。
Amazon CloudSearch ディスカッショ
ンフォーラム
Amazon CloudSearch ユーザーが質問を投稿し
て、Amazon CloudSearch に関する多様なトピックについ
て議論できるフォーラムです。
Amazon CloudSearch 料金表
Amazon CloudSearch の価格情報です。
制限を増加するためのリクエスト
検索インスタンスの最大数または検索ドメインのパーティ
ションの最大数を増加するようにリクエストするフォー
ム。
最新の Amazon CloudSearch ドキュメ 2013-01-01 API 向け Amazon CloudSearch 開発者ガイド
ント
の最新版は、AWS ウェブサイトの「HTML の表示」また
は「PDF のダウンロード」から入手できます。
Amazon CloudSearch 2011-02-01 開
発者ガイド
『2011-02-01 Amazon CloudSearch 開発者ガイド』
は、PDF 版のみです。PDF のダウンロード
API Version 2013-01-01
276
Amazon CloudSearch 開発者ガイド
Amazon CloudSearch のドキュメン
ト履歴
このドキュメント履歴では、このリリースの Amazon CloudSearch のドキュメントに対する重要な変
更を示します。
この履歴に関連する日付:
• 現在の製品バージョン – 2013-01-01
• 最新の製品リリース日— 2016 年 2 月 10 日
• 文書の最終更新 - 08 February 2017
変更
説明
リリース日
でリソースへのタグ
付けのサポート
Amazon CloudSearch では、リソースへのタグ付けのサ
ポートが追加されました。詳細については、このサー
ビスガイドの「Amazon CloudSearch ドメインのタグ付
け (p. 56)」を参照してください。
2016 年 2 月
10 日
AP (ソウル) のサポー Amazon CloudSearch では、AP (ソウル) ap-northeast-2
ト
リージョンのサポートが追加されました。Amazon
CloudSearch でサポートされるリージョンのリストについ
ては、『AWS General Reference』の「AWS のリージョン
とエンドポイント」を参照してください。
2016 年 1 月
28 日
Amazon CloudWatch
との統合およびイン
デックスフィールド
統計のサポート
2015 年 3 月
5日
ここから、Amazon CloudWatch を使用して Amazon
CloudSearch ドメインを監視します。CloudWatch
は、AWS クラウドリソースと、AWS で実行するアプリ
ケーションのモニタリングサービスです。パフォーマン
ス統計を収集、分析できるように、Amazon CloudSearch
は CloudWatch に自動的にメトリックスを送信しま
す。Amazon CloudSearch コンソール、または CloudWatch
コンソール、AWS CLI、または AWS SDK を使用して、こ
れらのメトリックスをモニタリングできます。CloudWatch
を経由して報告される Amazon CloudSearch メトリックス
には料金はかかりません。CloudWatch を使用した検索ドメ
インの監視の詳細については、「Amazon CloudWatch を使
用したドメインのモニタリング (p. 51)」を参照してくださ
い。
API Version 2013-01-01
277
Amazon CloudSearch 開発者ガイド
変更
説明
リリース日
また、ファセット対応数値フィールドに対して、
統計を取得できます。Amazon CloudSearch はド
キュメント内のインデックスを作成された数値
フィールドに対して次の統計を返すことができます:
count、min、max、mean、missing、stddev、sum、sumOfSquares。
インデックスフィールドの統計の詳細については、「詳細
情報のクエリ (p. 118)」を参照してください。
M3 インスタンスタ
イプのサポート
M3 インスタンスを使用して Amazon CloudSearch
2015 年 2 月
ドメインを強化できるようになりました。Amazon
10 日
CloudSearch で新規に作成されるドメインに次のイ
ンスタンスタイプがサポートされるようになりまし
た。m1.small、m3.medium、m3.large、m3.xlarge、m3.2xlarge。
新しく利用可能になったインスタンスタイプおよび既存ド
メインの変更方法の詳細については、「スケーリングオプ
ションの設定 (p. 41)」を参照してください。
動的フィールドのサ
ポート
動的フィールドを使用すると、事前にフィールド内容が正
確にわかっていなくても、ドキュメントにインデックス
を作成できます。動的フィールドの名前は、最初または最
後にワイルドカード (*) がつくか、ワイルドカードのみの
パターンを定義します。認識されないドキュメントでこ
のパターンと一致するものは、動的フィールドのインデッ
クスオプションで設定されます。詳細については、「動的
フィールドの使用 (p. 70)」を参照してください。
2014 年 11 月
12 日
日本語処理の強化と
CloudTrail のサポー
ト
日本語を含むフィールドで使う分析スキームに、カス
タム日本語トークン化辞書を追加することで、Amazon
CloudSearch の日本語のトークン化を制御できるようにな
りました。カスタムトークン化辞書の設定は、インデック
スの促進と、ドメイン専用フレーズの取得によって検索結
果の正確さを向上させることができます。カスタムディク
ショナリの使用の詳細については、「日本語トークン分割
のカスタマイズ (p. 79)」を参照してください。また、中国
語、日本語、韓国語のバイグラムにインデックスをつける
こともできます。詳細については、「中国語、日本語、韓
国語のバイグラムのインデックス作成 (p. 78)」を参照して
ください。
2014 年 10 月
15 日
また、AWS CloudTrail を使用して、アカウントの Amazon
CloudSearch 設定 API コールおよび関連イベントの履歴を
取得できるようになりました。CloudTrail は、アカウント
の API コールの記録と、そのログファイルを Amazon S3 バ
ケットへ出力するウェブサービスです。さらに、CloudTrail
を AWS リソースへ加えられた変更の追跡に使うこともでき
ます。例えば、セキュリティ分析や、運用上の問題のトラ
ブルシューティングのために、API 呼び出しの履歴を使用で
きます。また、CloudTrail は内部ポリシーや規制基準の順守
の作業を簡単にできます。さらに詳細な情報は、ホワイト
ペーパー「規模のセキュリティ: AWS ロギング」を参照し
てください。Amazon CloudSearch 呼び出しを記録するた
めの CloudTrail の使用の詳細については、「CloudTrail を
使用した設定サービスの呼び出しの記録 (p. 52)」を参照し
てください。
API Version 2013-01-01
278
Amazon CloudSearch 開発者ガイド
変更
説明
リリース日
ドキュメントの更新
この更新によって、検索クエリ文字列を URL エンコード
する必要があることがわかりやすくなりました。また、選
択したバケットのファセット情報の取得に関する情報が追
加されました。ファセットのバケット方法の詳細について
は、「ファセット情報の取得 (p. 121)」を参照してくださ
い。
2014 年 9 月
19 日
拡張 IAM 統合
IAM を使用して、各ドメインのドキュメント、検索、
および提案サービスへのアクセスをコントロールした
り、AWS 署名バージョン 4 を使用して、すべての Amazon
CloudSearch リクエストに署名したりできるようになりま
した。最新の AWS SDK および AWS CLI を使用すると、
リクエストは自動的に署名されます。詳細については、
「Amazon CloudSearch のアクセス設定 (p. 30)」を参照し
てください。
2014 年 8 月
14 日
このリリースとの組み合わせで、Amazon CloudSearch コ
マンドラインツールも更新されています。更新された CLT
では、cs-import-documents コマンドで送信されたド
キュメントのアップロードリクエストに自動的に署名され
ます。新しい CLT バンドルは、Amazon CloudSearch 開発
者ツールページからダウンロードできます。
Important
この CLT の更新には、2 つのコマンド cs-importdocuments および cs-configure-from-batches が含
まれています。すべての設定アクションは AWS
CLI を使用して実行する必要があります。AWS CLI
ではまた、ドキュメントのアップロードと検索およ
び提案リクエストの送信がサポートされています。
詳細については、『AWS Command Line Interface
User Guide』を参照してください。
AWS SDK お
よび AWS CLI
での Amazon
CloudSearch サポー
トの強化
AWS SDK および AWS CLI で、すべての Amazon
CloudSearch 2013-01-01 API オペレーションが完全にサ
ポートされるようになりました。これには、検索ドメイン
の作成、設定、管理、ドキュメントのアップロード、およ
び検索リクエストの送信が含まれます。AWS CLI のイン
ストールおよび使用の詳細については、『AWS Command
Line Interface ユーザーガイド』を参照してください。
Note
ドキュメントのにバッチを生成し、バッチの内容に
基づいて自動的にインデックス作成オプションを設
定するには、スタンドアロン Amazon CloudSearch
コマンドラインツールを使用する必要があります。
API Version 2013-01-01
279
2014 年 6 月
26 日
Amazon CloudSearch 開発者ガイド
変更
説明
リリース日
ヘブライ語のサポー
トおよび必要なパー
ティション数のス
ケーリングオプショ
ン
Amazon CloudSearch では、他の 33 のサポートされている
言語 (p. 83)に加えてヘブライ語がサポートされるようにな
りました。この更新では、新しいスケーリングオプション
として、必要なパーティション数も追加されました。この
オプションを使用して、m2.2xlarge 検索インスタンスタイ
プを使用するドメインのインデックスパーティションの数
を事前に設定できます。大量の検索データがある場合は、
より多くのパーティションを使用するようにドメインを事
前に設定しておくと、データをより速くロードできます。
また、追加のパーティションを使って、パーティションご
とのドキュメント数を減らしたり、複雑なクエリを高速化
するようにドメインを設定できます。Amazon CloudSearch
は、データ量やトラフィック量に基づいてドメインをス
ケーリングしますが、パーティションの数が設定した必要
なパーティション数を下回ることはありません。詳細につ
いては、「スケーリングオプションの設定 (p. 41)」を参照
してください。
2014 年 3 月
24 日
Amazon
CloudSearch
2013-01-01 API
Amazon CloudSearch の API バージョンが新しくなり、
多くの機能拡張と新機能が追加されています。新しい API
は、2011-02-01 API との下位互換性がありません。新しい
機能を使用するには、2013-01-01 API を使用して新しい検
索ドメインを作成する必要があります。このリリースとの
組み合わせで、新しいコマンドラインツールのセットもあ
ります。新しいツールでは Java 7 互換 JRE が必要である
ため、このツールを使用するには Java の更新が必要になる
場合があります。詳細については、「Amazon CloudSearch
2013-01-01 API への移行 (p. 19)Amazon CloudSearch の最
新情報」と「」を参照してください。
2014 年 3 月
24 日
API Version 2013-01-01
280
Amazon CloudSearch 開発者ガイド
AWS の用語集
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
数字と記号
100-continue
クライアントが実際にリクエストを送信する前に、サーバーがリクエストを受
け付けることができるかどうかを確認するメソッド。大容量の PUT リクエス
トを行う場合、この方法により、時間と帯域幅の料金を節約できます。
アプリ
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
AAD
See 追加認証データ.
アクセスコントロールリスト
(ACL)
特定の bucket (p. 294) またはオブジェクトにアクセスできるユーザーを定義
するドキュメント。Amazon S3 (p. 286) の各 bucket (p. 294) とオブジェク
トに ACL があります。このドキュメントには、各種のユーザーができること
(書き込みおよび読み取りのアクセス許可など) が定義されます。
アクセス識別子
See 認証情報.
アクセスキー
アクセスキー ID (p. 281) (例: AKIAIOSFODNN7EXAMPLE) と シー
クレットアクセスキー (p. 322) (例: wJalrXUtnFEMI/K7MDENG/
bPxRfiCYEXAMPLEKEY) の組み合わせ。アクセスキーを使用して、AWS に作
成した API リクエストに署名します。
アクセスキー ID
シークレットアクセスキー (p. 322) に関連付けられている一意の識別子。ア
クセスキー ID とシークレットアクセスキーを一緒に使用して、暗号化された
署名をプログラムによる AWS リクエストに適用します。
アクセスキーの更新
AWS アクセスキー ID を変更することによりセキュリティを高める方法。この
方法により、自身の判断で古いキーを無効にすることができます。
API Version 2013-01-01
281
Amazon CloudSearch 開発者ガイド
アクセスポリシー言語
特定の AWS リソース (p. 320) にアクセスできるユーザーと条件を指定す
る、書き込みのドキュメント (つまり、ポリシー (p. 316)) で使用する言語。
アカウント
(1) 所有者のメールアドレスとパスワード、(2) その組織の下で作成された リ
ソース (p. 320) の制御、(3) それらのリソースに関連する AWS アクティビ
ティに対する支払いに関連付けられた、AWS との正式な関係。AWS アカウン
トは、AWS アカウントのリソースのすべてを用いて、ありとあらゆることを
行うことが許可されています。これは、アカウント内に含まれるエンティティ
である user (p. 329) とは対照的です。
アカウントアクティビティ
過去 1 か月の AWS の使用状況とコストを表示するウェブページ。アカウン
トアクティビティページは https://aws.amazon.com/account-activity/ にありま
す。
ACL
See アクセスコントロールリスト (ACL) .
ACM
See AWS Certificate Manager (ACM) .
アクション
API 関数。オペレーションまたはコールとも呼びます。プリンシパ
ル (p. 316) に実行のアクセス許可があるアクティビティ。「A は、条件 D に
該当する C を対象とするアクション B の実行を許可または禁止されている」
というポリシーにおいては、文字通り B がアクションに相当します。たとえ
ば、ジェーンが Amazon SQS (p. 286) に Action=ReceiveMessage というリ
クエストを送信します。
Amazon CloudWatch (p. 283): アラームのステータスが変更されると開始さ
れる応答 (たとえば OK から ALARM に変更された場合)。ステータスの変更
は、メトリクスがアラームのしきい値に達した場合、または SetAlarmState の
リクエストによって、発生する可能性があります。それぞれのアラームでは、
各ステータスに 1 つ以上のアクションを割り当てることができます。アクショ
ンを割り当てたステータスにアラームが変更されるたびにアクションが実行さ
れます。たとえば、Amazon Simple Notification Service (p. 286) 通知、Auto
Scaling (p. 288) ポリシー (p. 316) 実行、Amazon EC2 (p. 284) インスタ
ンス (p. 307) の停止または終了のアクションなどが実行されます。
有効な信頼済み署名者
リストには、お客様が指定した信頼された署名者と、Amazon
CloudFront (p. 283) が認識する有効なキーペアの ID を示しています。有用
な署名付き URL を作成するには、信頼された署名者と少なくとも 1 つのキー
ペア ID がこのリストに含まれていなければなりません。
追加認証データ
ヘッダーやその他の環境に応じたメタデータなど、整合性を確認したが暗号化
されていないことを確認した情報。
管理上の停止
Auto Scaling (p. 288) は、繰り返しインスタンスの起動に失敗する Auto
Scaling グループ (p. 288) のプロセスを停止することがあります。管理上の
停止が最もよく起こる Auto Scaling グループでは、実行中のインスタンスがな
く、24 時間以上インスタンスの起動を試みても、成功しませんでした。
アラーム
指定した期間、1 つのメトリクスを監視し、メトリクスの値が所定の時間の
間にしきい値超えた場合、Amazon SNS (p. 286) トピック (p. 328) または
Auto Scaling (p. 288) ポリシー (p. 316) をトリガーするアイテム。
許可
IAM (p. 290) アクセス ポリシー (p. 316) が評価されたときの 2 つの可能な
結果のうちの 1 つ (もう 1 つは、拒否 (p. 300))。ユーザーが AWS へのリク
エストを送信すると、AWS は、ユーザーに適用されるすべてのアクセス許可
に基づいてリクエストを評価し、許可または拒否を返します。
Amazon API Gateway
全面的に管理されたサービスである を利用すれば、どのようなスケールで
あっても、開発者は簡単に API の作成、配布、保守、監視、保護が行えます。
See Also https://aws.amazon.com/api-gateway.
API Version 2013-01-01
282
Amazon CloudSearch 開発者ガイド
Amazon AppStream
クラウドからあらゆるデバイスに、Windows アプリケーションをストリーミ
ングするためのウェブサービス。
See Also https://aws.amazon.com/appstream/.
Amazon Aurora
オープンソースデータベースのシンプルさとコスト効率性を備え、商用データ
ベースの可用性とスピードをあわせ持ったフルマネージド型 MySQL と互換性
のあるリレーショナルデータベースエンジン。
See Also https://aws.amazon.com/rds/aurora/.
Amazon CloudFront
ウェブサイトやアプリケーションのパフォーマンス、信頼性、および可用性を
向上させる AWS のコンテンツ配信サービス。
See Also https://aws.amazon.com/cloudfront.
Amazon CloudSearch
ウェブサイトまたはアプリケーション向けの検索ソリューションを容易に設
定、管理、拡張できる、AWS クラウドにおける完全マネージド型サービス。
Amazon CloudWatch
さまざまなメトリクスを監視、および管理して、それらのメトリクスのデータ
に基づいてアラームのアクションを設定できるウェブサービス。
See Also https://aws.amazon.com/cloudwatch.
Amazon CloudWatch Events
AWS リソース (p. 320) での変更を示すシステムイベントのほぼリ
アルタイムのストリームを、AWS Lambda (p. 290) 関数、Amazon
Kinesis Streams (p. 285) のストリーム、Amazon Simple Notification
Service (p. 286) トピック、または組み込みターゲットに振り分けることがで
きるウェブサービス。
See Also https://aws.amazon.com/cloudwatch.
Amazon CloudWatch Logs
既存のシステム、アプリケーション、およびカスタムログファイルから、シス
テムとアプリケーションをモニタリングしてトラブルシューティングのための
ウェブサービス。既存のログファイルを CloudWatch Logs に送信し、送信し
たログをほぼリアルタイムにモニタリングできます。
See Also https://aws.amazon.com/cloudwatch.
Amazon Cognito
アプリケーションの設定やゲームの状態などのモバイルユーザーデータを
AWS クラウドに簡単に保存できるウェブサービス。バックエンドコードの記
述やインフラストラクチャの管理は必要ありません。Amazon Cognito では、
モバイル認証管理や複数のデバイス間のデータ同期を行うことができます。
See Also https://aws.amazon.com/cognito/.
Amazon DevPay
使いやすいオンライン請求およびアカウント管理サービス。これによ
り、Amazon EC2 (p. 284) AMI (p. 285) または Amazon S3 (p. 286) で開
発されたアプリケーションの販売が容易になります。
See Also https://aws.amazon.com/devpay.
Amazon DynamoDB
全管理型の NoSQL データベースサービスであり、高速で予測可能なパフォー
マンスとシームレスなスケーラビリティを備えています。
See Also https://aws.amazon.com/dynamodb/.
Amazon DynamoDB Storage
Backend for Titan
Amazon DynamoDB 上で実装される Titan グラフデータベース用のストレージ
バックエンドです。Titan は、グラフの保存とクエリ用に最適化されたスケー
ラブルなグラフデータベースです。
See Also https://aws.amazon.com/dynamodb/.
Amazon DynamoDB Streams
Amazon DynamoDB テーブル内の、項目レベルの変更を時系列シーケンスで
キャプチャし、この情報を最大 24 時間ログに保存する AWS サービス。アプ
リケーションは、このログにアクセスし、データ項目の変更前および変更後の
内容をほぼリアルタイムで参照できます。
See Also https://aws.amazon.com/dynamodb/.
Amazon Elastic Block Store
(Amazon EBS)
EC2 インスタンス (p. 301) で使用するためのブロックレベルのストレージ
ボリューム (p. 330) を提供するサービス。
API Version 2013-01-01
283
Amazon CloudSearch 開発者ガイド
See Also https://aws.amazon.com/ebs.
Amazon EBS-backed &AMI
ルートデバイスとして Amazon EBS (p. 283) ボリューム (p. 330) を使用す
る インスタンス (p. 307) がある Amazon マシンイメージ (AMI) (p. 285) の
タイプ。これに比べて、instance store-backed AMI (p. 307) から起動される
インスタンスは、インスタンスストア (p. 307) をルートデバイスとして使用
します。
Amazon EC2 Container
Registry (Amazon ECR)
開発者が Docker コンテナイメージを簡単に保存、管理、デプロイできる完全
マネージド型の Docker コンテナレジストリ。Amazon ECR は Amazon EC2
Container Service (Amazon ECS) (p. 284) および AWS Identity and Access
Management (IAM) (p. 290) と統合します。
See Also https://aws.amazon.com/ecr.
Amazon EC2 Container
Service (Amazon ECS)
EC2 インスタンス (p. 301) の クラスター (p. 295) にある Docker コンテナ
を簡単に実行、停止、管理できるようにする、拡張性が高く、高速な コンテ
ナ (p. 296) 管理サービス。
See Also https://aws.amazon.com/ecs.
Amazon ECS サービス
特定の数の task (p. 327) (タスク定義 (p. 327) のインスタンス化) を同時に
実行、管理するサービス。
Amazon EC2 VM Import
Connector
See https://aws.amazon.com/ec2/vm-import.
Amazon Elastic Compute
Cloud (Amazon EC2)
Amazon のデータセンターの Linux/UNIX および Windows サーバーの インス
タンス (p. 307) を起動して管理できるウェブサービス。
See Also https://aws.amazon.com/ec2.
Amazon Elastic File System
(Amazon EFS)
EC2 (p. 284) インスタンス (p. 307) のファイルストレージサービ
ス。Amazon EFS は使いやすく、ファイルシステムを作成し、設定する簡単な
インターフェイスを提供します。Amazon EFS ストレージ容量はファイルの追
加や削除に伴い、自動的に収縮します。
See Also https://aws.amazon.com/efs/.
Amazon EMR (Amazon EMR)
大量のデータを効率的かつ簡単に処理するためのウェブサービス。Amazon
EMR では、Hadoop (p. 305) 処理に AWS の様々なサービスを組み合わせる
ことによって、ウェブインデックス化、データマイニング、ログファイル分
析、機械学習、科学シミュレーション、データウェアハウジングなどのタスク
を行うことができます。
See Also https://aws.amazon.com/elasticmapreduce.
Amazon Elastic Transcoder
クラウドベースのメディアトランスコーディングサービス。Elastic
Transcoder は、メディアファイルを、元の形式から、スマートフォン、タブ
レット、PC などのデバイスで再生可能なバージョンに変換 (つまり トランス
コーディング) する、拡張性に優れたツールです。
See Also https://aws.amazon.com/elastictranscoder/.
Amazon ElastiCache
クラウドでの、メモリ内キャッシュのデプロイ、運用、スケーリングを単純化
するウェブサービス。このサービスは、低速のディスクベースのデータベース
に完全に依存せずに、高速の管理されたメモリ内のキャッシュから取得した情
報を提供することで、ウェブアプリケーションのパフォーマンスを向上させま
す。
See Also https://aws.amazon.com/elasticache/.
Amazon Elasticsearch Service
(Amazon ES)
AWS クラウドのオープンソース検索および分析エンジンである Elasticsearch
をデプロイ、運用、拡張するための AWS マネージド型サービス。Amazon
Elasticsearch Service (Amazon ES) はまた、セキュリティオプション、高可用
性、データ耐久性、Elasticsearch API への直接アクセスを可能にします。
See Also https://aws.amazon.com/elasticsearch-service.
API Version 2013-01-01
284
Amazon CloudSearch 開発者ガイド
Amazon GameLift
セッションベースのマルチプレイヤーゲームをデプロイ、運用、およびスケー
リングするためのマネージドサービス。
See Also https://aws.amazon.com/gamelift/.
Amazon Glacier
データのアーカイブおよび長期バックアップを行うための、安全性と耐久
性に優れた低コストのストレージサービスです。オンプレミスのソリュー
ションより大幅に小さいデータを、その量にかかわらず、確実に格納できま
す。Amazon Glacier は、アクセス頻度が低く、数時間内の取り出し回数が適
切なデータに最適化されています。
See Also https://aws.amazon.com/glacier/.
Amazon Inspector
AWS にデプロイされたアプリケーションのセキュリティとコンプライアン
スを向上させるための、自動化されたセキュリティ評価サービス。Amazon
Inspector は自動的にアプリケーションを評価し、脆弱性やベストプラクティ
スからの逸脱がないかどうかを確認します。Amazon Inspector では評価の実
行後、修復に必要なステップを優先順位に従ってリスト化したものを含む詳細
なレポートが作成されます。
See Also https://aws.amazon.com/inspector.
Amazon Kinesis
AWS でデータをストリーミングするためのプラットフォーム。Amazon
Kinesis は、ストリーミングのデータの読み込みと分析を簡略化できるサービ
スを提供しています。
See Also https://aws.amazon.com/kinesis/.
Amazon Kinesis Firehose
ストリーミングデータを AWS に読み込むための、完全マネージド型サービ
ス。Firehose は Amazon S3 (p. 286) および Amazon Redshift (p. 286) に
ストリーミングデータをキャプチャし、自動的に読み込めます。また、既存の
ビジネスインテリジェンスツールとダッシュボードでほぼリアルタイムに分析
できます。Firehose はデータのスループットに合わせて自動的に拡張し、継続
的な管理作業は不要です。また、読み込む前に、データをバッチ処理、圧縮、
暗号化できます。
See Also https://aws.amazon.com/kinesis/firehose/.
Amazon Kinesis Streams
専門的な必要性に応じて、ストリーミングデータを処理、または分析するカ
スタムアプリケーションを構築するためのウェブサービス。Amazon Kinesis
Streams は、1 時間に数十万のソースからの数テラバイトのデータを継続的に
キャプチャ、保存することができます。
See Also https://aws.amazon.com/kinesis/streams/.
Amazon Lumberyard
高品質のゲームを作成するための、クロスプラットフォーム型の 3D ゲーム
エンジン。AWS クラウドのコンピューティングとストレージにゲームを接続
し、Twitch のファンを実行できます。
See Also https://aws.amazon.com/lumberyard/.
Amazon マシンイメージ (AMI)
Amazon Elastic Block Store (Amazon EBS) (p. 283) または Amazon Simple
Storage Service (p. 286) に格納される、暗号化されたマシンイメージ。AMI
は、コンピュータのルートドライブのテンプレートのようなものです。オペ
レーティングシステムが置かれており、ソフトウェアのほか、データベース
サーバー、ミドルウェア、ウェブサーバーなどのアプリケーションのレイヤー
も含むことができます。
Amazon Machine Learning
データのパターンを検出して機械学習モデル (ML) を作成し、そのモデルを使
用して新規データを処理し、予測を生成するクラウドベースのサービス。
See Also http://aws.amazon.com/machine-learning/.
Amazon ML
See Amazon Machine Learning.
Amazon Mobile Analytics
モバイルアプリケーションの使用状況データを大規模に収集して視覚化し、開
発者が把握して、拡張できるようにするサービスです。
See Also https://aws.amazon.com/mobileanalytics.
API Version 2013-01-01
285
Amazon CloudSearch 開発者ガイド
Amazon Redshift
クラウド内での完全マネージド型、ペタバイトスケールのデータウェアハウス
サービス。Amazon Redshift を使用すると、既存のビジネスインテリジェンス
ツールを使用してデータを分析できます。
See Also https://aws.amazon.com/redshift/.
Amazon Relational Database
Service (Amazon RDS)
クラウドでリレーショナルデータベースを簡単に設定、運用、および拡張す
ることができるウェブサービス。業界標準のリレーショナルデータベース向け
に、費用対効果に優れた拡張機能を備え、一般的なデータベース管理タスクを
管理します。
See Also https://aws.amazon.com/rds.
Amazon リソースネーム
(ARN)
AWS リソース (p. 320) を参照する標準化された方法。例:
arn:aws:iam::123456789012:user/division_abc/subdivision_xyz/Bob
Amazon Route 53
新しい DNS サービスを作成する、またはクラウドに既存の DNS サービスを
移行するために使用するウェブサービス。
See Also https://aws.amazon.com/route53.
Amazon S3
See Amazon Simple Storage Service (Amazon S3) .
Amazon S3-Backed AMI
See instance store-backed AMI.
Amazon Silk
Fire OS タブレットおよび携帯電話のみで使用できる次世代ウェブブラウ
ザ。Amazon Silk は、クライアントと AWS クラウド間での処理を分ける、分
割アーキテクチャ上に構築されており、より高速で、応答性の高いモバイル閲
覧操作を可能にします。
Amazon Simple Email Service
(Amazon SES)
使いやすく、費用効率が高い、アプリケーションの E メールソリューショ
ン。
See Also https://aws.amazon.com/ses.
Amazon Simple Notification
Service (Amazon SNS)
アプリケーション、エンドユーザー、およびデバイスでクラウドからすぐに通
知を送受信できるようにするウェブサービス。
See Also https://aws.amazon.com/sns.
Amazon Simple Queue
Service (Amazon SQS)
コンピュータ間で送受信されるメッセージを格納するための、信頼性の高いス
ケーラブルなホストされたキュー。
See Also https://aws.amazon.com/sqs.
Amazon Simple Storage
Service (Amazon S3)
インターネット対応のストレージ。これを使用して、ウェブ上のどの場所から
も、いつでも、いくらでも、データを保存して取得することができます。
See Also https://aws.amazon.com/s3.
Amazon Simple Workflow
Service (Amazon SWF)
開発者がバックグラウンドジョブを構築、実行、拡張するのを支援する、完
全マネージド型のサービス。並列またはシーケンシャルステップが含まれま
す。Amazon SWF はクラウド内で、ステータストラッカーや、タスクコー
ディネーターのような役割を負います。
See Also https://aws.amazon.com/swf/.
Amazon Virtual Private Cloud
(Amazon VPC)
開発者が定義した仮想ネットワーク内で AWS リソース (p. 320) を起動でき
る、AWS クラウドの論理的に隔離されたセクションをプロビジョニングする
ウェブサービス。独自の IP アドレス範囲の選択、サブネット (p. 326) の作
成、ルートテーブル (p. 320)、ネットワークゲートウェイの設定など、仮想
ネットワーク環境をコントロールできます。
See Also https://aws.amazon.com/vpc.
Amazon VPC
See Amazon Virtual Private Cloud (Amazon VPC) .
アマゾン ウェブ サービス
(AWS)
あらゆる規模の企業に対応する、クラウド上のインフラストラクチャウェブ
サービスのプラットフォーム。
See Also https://aws.amazon.com/what-is-cloud-computing/.
API Version 2013-01-01
286
Amazon CloudSearch 開発者ガイド
Amazon WorkDocs
管理コントロールとフィードバック機能を備え、セキュリティに優れた、マ
ネージド型の企業向けドキュメントストレージおよび共有サービス。
See Also https://aws.amazon.com/workdocs/.
Amazon WorkMail
セキュリティに優れたマネージド型の企業向け E メールおよびカレンダー
サービスで、デスクトップとモバイルの既存の E メールクライアントに対応
しています。
See Also https://aws.amazon.com/workmail/.
Amazon WorkSpaces
クラウドベースのデスクトップをプロビジョニングする、マネージド型のセ
キュアなデスクトップコンピューティングサービスです。このサービスを使
用して、ユーザーは、サポート対象デバイスから、ドキュメント、アプリケー
ション、リソース (p. 320) にアクセスできます。
See Also https://aws.amazon.com/workspaces/.
Amazon WorkSpaces
Application Manager (Amazon
WAM)
Amazon WorkSpaces のアプリケーションをデプロイし、管理するウェブサー
ビス。Amazon WAM では、 Windows デスクトップアプリケーションを仮想
化されたアプリケーションコンテナにパッケージ化することにより、ソフト
ウェアのデプロイメント、アップグレード、パッチの適用、リタイアを迅速に
行うことができます。
See Also https://aws.amazon.com/workspaces/applicationmanager.
AMI
See Amazon マシンイメージ (AMI) .
分析スキーム
Amazon CloudSearch (p. 283): ステミングを制御し、ストップワードとシノ
ニムを設定するためにテキストフィールドに適用される、言語固有のテキスト
の分析オプション
同時接続の
AWS Elastic Beanstalk (p. 290): 環境、バージョン、環境設定などの、コン
ポーネントの論理コレクション。アプリケーションの概念はフォルダと似てい
ます。
AWS CodeDeploy (p. 289): デプロイするアプリケーションを一意に識別する
名前。AWS CodeDeploy はこの名前を使用して、デプロイする間、リビジョ
ン、デプロイ設定、デプロイグループの正しい組み合わせが参照されるように
します。
アプリケーション請求書
お客様が購入した Amazon DevPay 製品を管理する場所。ウェブアドレスは
http://www.amazon.com/dp-applications です。
アプリケーションリビジョン
AWS CodeDeploy (p. 289): アーカイブファイル、ウェブページ、実行可
能ファイル、デプロイスクリプトなどのソースコンテンツが、アプリケー
ション仕様ファイル (p. 287) と共に含まれます。リビジョンは、Amazon
S3 (p. 286) bucket (p. 294) または GitHub リポジトリに格納されま
す。Amazon S3 では、リビジョンの Amazon S3 オブジェクトキー、ETag、
バージョン、またはその両方により、リビジョンが一意に識別されま
す。GitHub では、コミット ID により、リビジョンが一意に識別されます。
アプリケーション仕様ファイ
ル
AWS CodeDeploy (p. 289): アプリケーションリビジョン内のソースファイ
ルをインスタンス上の宛先にマッピングするために使用される、YAML 形式の
ファイルです。デプロイされるファイルでカスタムのアクセス許可を指定し、
デプロイプロセスのさまざまな段階の各インスタンスで実行されるスクリプト
を指定します。
アプリケーションバージョン
AWS Elastic Beanstalk (p. 290): アプリケーションに固有に繰り返し付け
られ、機能的に一貫性のある、デプロイ可能な一連のアプリケーションコー
ドを示します。バージョンはアプリケーションコードが含まれる Amazon
S3 (p. 286) オブジェクト (JAVA WAR ファイル) をポイントしています。
AppSpec ファイル
See アプリケーション仕様ファイル.
API Version 2013-01-01
287
Amazon CloudSearch 開発者ガイド
AUC
曲線の下の領域。バイナリ分類の機械学習の品質を評価する、業界標準のメト
リクスです。AUC は、モデルの能力を測定して、「正」である肯定的な例に
は「誤」である否定的な例よりも、高いスコアを予測します。AUC のメトリ
クスは 0 から 1 の 10 進値を返します。1 に近い AUC 値は、極めて正確な ML
モデルであることを示します。
ARN
See Amazon リソースネーム (ARN) .
アーティファクト
AWS CodePipeline (p. 289): パイプラインで機能するファイルまたは変更の
複製。
非対称暗号化
パブリックキーとプライベートキーを両方使用する暗号化 (p. 302)です。
非同期バウンス
レシーバー (p. 318) が最初に E メールメッセージの配信を承諾し、その後
メッセージの配信に失敗したときに発生する バウンス (p. 294) のタイプ。
アトミックカウンター
DynamoDB: 他の書き込みリクエストを妨害せずに、既存の属性の値をインク
リメントまたはデクリメントする方法。
属性
基盤となるデータ要素であり、それ以上分割する必要がないもので
す。DynamoDB 内の属性は、多くの点で他のデータベースシステムのフィー
ルドや列に似ています。
Amazon Machine Learning: 1 つのデータセットの監視にある、一意の、指名
プロパティです。スプレッドシートまたはコンマ区切り値 (.csv) ファイルなど
の、表形式のデータ。列見出しは属性を表し、行には各属性の値が表示されま
す。
Aurora
See Amazon Aurora.
認証されている暗号化
暗号化されたデータの機密性、データ整合性、および信頼性を保証する暗号
化 (p. 302)です。
認証
ID をシステムに証明するプロセス。
Auto Scaling
ユーザー定義のポリシー (p. 316)、スケジュール、および ヘルスチェッ
ク (p. 306) に基づいて インスタンス (p. 307) を自動的に起動または終了す
るように設計されたウェブサービス。
See Also https://aws.amazon.com//autoscaling.
Auto Scaling グループ
似た特性を共有し、インスタンスのスケーリングと管理を行うための論理グ
ループとして扱われる、複数の EC2 インスタンス (p. 301) を表します。
アベイラビリティーゾーン
リージョン (p. 319) 内の仕切られた場所。他のアベイラビリティゾーンに障
害が発生してもその影響を受けず、低コスト、低遅延で同一リージョン内の他
のアベイラビリティゾーンに接続できます。
AWS
See アマゾン ウェブ サービス (AWS) .
AWS Application Discovery
Service
サーバー、仮想マシン、アプリケーション、アプリケーション依存関係、
ネットワークのインフラストラクチャなど、データの IT 資産を特定すること
で、AWS への移行の計画時に役立つウェブサービス。
See Also https://aws.amazon.com/about-aws/whats-new/2016/04/awsapplication-discovery-service/.
AWS Billing and Cost
Management
AWS のクラウドコンピューティングモデルは、サービスをオンデマンドで、
必要な時間だけご利用いただける料金体系となっています。お客様のアカウン
トの下で リソース (p. 320) がアクティブになっている間は、そのリソース割
り当ての料金と、そのリソースに付随するご利用 (データ転送やストレージの
割り当てなど) の料金をお支払いいただきます。
See Also https://aws.amazon.com/billing/new-user-faqs/.
API Version 2013-01-01
288
Amazon CloudSearch 開発者ガイド
AWS Certificate Manager
(ACM)
Secure Sockets Layer/Transport Layer Security (p. 328) (SSL/TLS) 証明書を
AWS サービスで使用するために、プロビジョニング、管理、デプロイするた
めのウェブサービス。
See Also https://aws.amazon.com/certificate-manager/.
AWS CloudFormation
関連する AWS リソース (p. 320) を 1 つの単位として一緒に作成および削除
する、書き込みまたは変更のテンプレートのサービス。
See Also https://aws.amazon.com/cloudformation.
AWS CloudHSM
専用ハードウェアセキュリティモジュール (HSM) アプライアンスを AWS ク
ラウド内で使用することによって、データセキュリティに対する会社、契約
上、または法令で定められた要件の遵守を支援するウェブサービス。
See Also https://aws.amazon.com/cloudhsm/.
AWS CloudTrail
お客様のアカウントの AWS API 呼び出しを記録し、ログファイルをお客様
に送信するウェブサービスです。記録される情報には、API 呼び出し元の
ID、API 呼び出しの時間、API 呼び出し元のソース IP アドレス、リクエスト
のパラメータ、および AWS の各種サービスから返された応答の要素が含まれ
ます。
See Also https://aws.amazon.com/cloudtrail/.
AWS CodeCommit
完全マネージド型ソースコントロールサービスで、安全で極めて拡張性の高い
プライベート Git リポジトリを簡単にホスティングできます。
See Also https://aws.amazon.com/codecommit.
AWS CodeDeploy
オンプレミスで実行中の EC2 インスタンス (p. 301) や インスタン
ス (p. 307) など、インスタンスへのコードのデプロイを自動化するサービス
です。
See Also https://aws.amazon.com/codedeploy.
AWS CodeDeploy エージェン
ト
インスタンスにインストールして設定すると、そのインスタンスが AWS
CodeDeploy デプロイで使用できるようになるソフトウェアパッケージです。
AWS CodePipeline
速度と信頼性に優れたアプリケーション更新を実現する継続的デリバリサービ
ス。
See Also https://aws.amazon.com/codepipeline.
AWS Command Line Interface
(AWS CLI)
AWS サービスを管理するための、ダウンロードおよび設定が可能な統合ツー
ル。複数の AWS サービスをコマンドラインから制御したり、スクリプトで自
動化したりできます。
See Also https://aws.amazon.com/cli/.
AWS Config
セキュリティや管理面を向上するため、AWS リソース (p. 320) 在庫、設
定履歴、設定変更の通知を提供する完全マネージド型サービス。レコードを
AWS Config する AWS リソースの構成を自動で確認するルールを作成できま
す。
See Also https://aws.amazon.com/config/.
AWS Database Migration
Service
多く一般的な市販のオープンソースデータベース間で、データを移行できる
ウェブサービスです。
See Also https://aws.amazon.com/dms.
AWS Data Pipeline
オンプレミスのデータソースと同様に、異なる AWS のコンピューティングや
ストレージサービス間で、信頼性の高いデータの処理や移動を行う際に役立つ
ウェブサービス。
See Also https://aws.amazon.com/datapipeline.
AWS Device Farm
開発者が、Android、iOS、Fire OS を搭載したデバイスを、実際に AWS によ
りホストされている電話やタブレットで物理的にテストできる、アプリテスト
サービス。
API Version 2013-01-01
289
Amazon CloudSearch 開発者ガイド
See Also https://aws.amazon.com/device-farm.
AWS Direct Connect
プレミスから AWS への専用ネットワーク接続の確立を単純化するウェブサー
ビス。AWS Direct Connect を使用すると、AWS と顧客のデータセンター、オ
フィス、またはコロケーション環境との間にプライベート接続を確立すること
ができます。
See Also https://aws.amazon.com/directconnect.
AWS Directory Service
AWS リソース (p. 320) を既存のオンプレミス Microsoft Active Directory に
接続するか、AWS クラウドに新規のスタンドアロンディレクトリを設定して
運用する、マネージド型サービス。
See Also https://aws.amazon.com/directoryservice.
AWS Elastic Beanstalk
アプリケーションを実行しているインフラストラクチャについて心配すること
なく、AWS クラウドでアプリケーションのデプロイと管理を行うことができ
るウェブサービス。
See Also https://aws.amazon.com/elasticbeanstalk.
AWS GovCloud (US)
クラウド内の機密ワークロードをホストするように設計された、隔離された
AWS リージョンは、この作業が米国政府規制およびコンプライアンス要件を
満たしていることを確認します。AWS GovCloud (US) リージョンは、武器
規制国際交渉規則 (International Traffic in Arms Regulations/ITAR)、Federal
Risk and Authorization Management Program (FedRAMP) 要件、国防省 (DOD)
クラウドのセキュリティ要件ガイド (SRG) のレベル 2 と 4、Criminal Justice
Information Services (CJIS) セキュリティポリシー要件に従います。
See Also https://aws.amazon.com/govcloud-us/.
AWS Identity and Access
Management (IAM)
アマゾン ウェブ サービス (AWS) (p. 286) のお客様が、AWS 内でユーザー
とユーザーアクセス許可を管理できるウェブサービス。
See Also https://aws.amazon.com/iam.
AWS Import/Export
AWS とポータブルストレージデバイスの間で大量のデータを転送するための
サービス。
See Also https://aws.amazon.com/importexport.
AWS IoT
接続されたデバイスが簡単かつ安全にクラウドアプリケーションやその他のデ
バイスとやり取りできる、マネージド型クラウドプラットフォーム。
See Also https://aws.amazon.com/iot.
AWS Key Management
Service (AWS KMS)
データの暗号化に使用される暗号化 (p. 302)キーの作成と管理を容易にする
マネージド型サービス。
See Also https://aws.amazon.com/kms.
AWS Lambda
サーバーをプロビジョニングしたり管理しなくてもコードを実行できるウェブ
サービス。実質どのようなタイプのアプリケーションやバックエンドサービス
でも、管理なしでコードを実行できます。コードは、他の AWS サービスから
自動的にトリガーするよう設定することも、ウェブやモバイルアプリケーショ
ンから直接呼び出すよう設定することもできます。
See Also https://aws.amazon.com/lambda/.
AWS マネージドキー
AWS Key Management Service (AWS KMS) (p. 290) の 2 つのタイプの カス
タマーマスターキー (CMK) (p. 298) のうちの 1 つ。
AWS 管理ポリシー
AWS により作成、管理される IAM (p. 290)管理ポリシー (p. 311) です。
AWS マネジメントコンソール
コンピューティング、ストレージ、およびその他のクラウド リソー
ス (p. 320) を管理するためのグラフィカルインターフェイス。
See Also https://aws.amazon.com/console.
AWS Management Portal for
vCenter
VMware vCenter を使用して AWS リソース (p. 320) を管理するためのウェ
ブサービス。ポータルは、既存の vCenter 環境に vCenter プラグインとして
API Version 2013-01-01
290
Amazon CloudSearch 開発者ガイド
インストールします。インストールが完了すれば、VMware VM を Amazon
EC2 (p. 284) に移行して、vCenter 内から AWS リソースを管理できるよう
になります。
See Also https://aws.amazon.com/ec2/vcenter-portal/.
AWS Marketplace
認定パートナーが自社ソフトウェアを出品し、AWS のお客様に販売すること
ができるウェブポータル。AWS Marketplace は、AWS 上で実行されるソフト
ウェアやサービスを見つけて購入し、すぐに使用を開始することができるオン
ラインソフトウェアストアです。
See Also https://aws.amazon.com/partners/aws-marketplace/.
AWS Mobile Hub
モバイルアプリを開発、テスト、監視する統合コンソールです。
See Also https://aws.amazon.com/mobile.
AWS Mobile SDK
ソフトウェア開発キット。キットに含まれるライブラリ、コードサンプル、ド
キュメントは、iOS、Android、Fire OS、Unity、Xamarin プラットフォーム向
けの、質の高いモバイルアプリを開発する際に役立ちます。
See Also https://aws.amazon.com/mobile/sdk.
AWS OpsWorks
インスタンスおよびアプリケーションのグループを構成し、運用する Chef を
使用する際に役立つ、構成管理サービスです。パッケージのインストール、ソ
フトウェア設定およびストレージなどの リソース (p. 320) を含む、各コン
ポーネントのアプリケーションのアーキテクチャおよび仕様を定義できます。
時間、負荷、ライフサイクルなどに基づいて、タスクを自動化できます。
See Also https://aws.amazon.com/opsworks/.
AWS SDK for Go
Go アプリケーションとフルスイート版の AWS サービスを統合するソフト
ウェア開発キット。
See Also https://aws.amazon.com/sdk-for-go/.
AWS SDK for Java
Amazon S3 (p. 286)、Amazon EC2 (p. 284)、Amazon
DynamoDB (p. 283) などの多くの AWS サービスの Java API を提供するソ
フトウェア開発キット。ダウンロード可能な 1 つのパッケージに、AWS Java
ライブラリ、コードサンプル、ドキュメントが含まれます。
See Also https://aws.amazon.com/sdkforjava/.
ブラウザ内の AWS SDK for
JavaScript
ブラウザで実行する JavaScript コードから AWS サービスにアクセスするため
のソフトウェア開発キット。Facebook または Google を介して、またはウェ
ブ認証フェデレーションを使用して Amazon にログインし、ユーザーを認証
します。アプリケーションデータを Amazon DynamoDB (p. 283) に格納し、
ユーザーファイルを Amazon S3 (p. 286) に保存します。
See Also https://aws.amazon.com/sdk-for-browser/.
Node.js 内の AWS SDK for
JavaScript
Node.js の JavaScript から AWS サービスにアクセスするためのソ
フトウェア開発キット。SDK は、Amazon S3 (p. 286)、Amazon
EC2 (p. 284)、Amazon DynamoDB (p. 283)、Amazon Simple Workflow
Service (Amazon SWF) (p. 286) などの AWS サービスの JavaScript オブ
ジェクトを提供します。ダウンロードパッケージ1つの中に、AWS JavaScript
ライブラリとドキュメントが含まれます。
See Also https://aws.amazon.com/sdk-for-node-js/.
AWS SDK for .NET
Amazon S3 (p. 286)、Amazon EC2 (p. 284)、IAM (p. 290) などの AWS
サービスの .NET API アクションを提供する SDK。NuGet の複数のサービス固
有のパッケージとして SDK をダウンロードできます。
See Also https://aws.amazon.com/sdkfornet/.
AWS SDK for PHP
PHP アプリケーションを、Amazon S3 (p. 286)、Amazon
Glacier (p. 285)、Amazon DynamoDB (p. 283) のような AWS サービスと
統合する、ソフトウェア開発キットとオープンソース PHP ライブラリ。
API Version 2013-01-01
291
Amazon CloudSearch 開発者ガイド
See Also https://aws.amazon.com/sdkforphp/.
AWS SDK for Python (Boto)
Python を使用して、Amazon EC2 (p. 284)、Amazon EMR (p. 284)、Auto
Scaling (p. 288)、Amazon Kinesis (p. 285)、AWS Lambda (p. 290) など
の AWS サービスにアクセスするためのソフトウェア開発キット。
See Also http://boto.readthedocs.org/en/latest/.
AWS SDK for Ruby
Ruby から AWS サービスにアクセスするためのソフトウェア開発キッ
ト。SDK は、Amazon S3 (p. 286)、Amazon EC2 (p. 284)、Amazon
DynamoDB (p. 283) などの 多くの AWS サービスに Ruby クラスを提供しま
す。詳細。ダウンロード可能な 1 つのパッケージに、AWS Ruby ライブラリ
とドキュメントが含まれます。
See Also https://aws.amazon.com/sdkforruby/.
AWS Security Token Service
(AWS STS)
一時的なリクエスト、AWS Identity and Access Management (IAM) (p. 290)
ユーザーまたは認証するユーザーの権限制限の認証情報 (フェデレーション
ユーザー (p. 304)) のためのウェブサービス。
See Also https://aws.amazon.com/iam/.
AWS Service Catalog
AWS での使用が承認された IT サービスのカタログを作成および管理の役に立
つウェブサービス。この IT サービスには、仮想マシンイメージ、サーバー、
ソフトウェア、データベースから包括的な多層アプリケーションアーキテク
チャまで、あらゆるものが含まれます。
See Also https://aws.amazon.com/servicecatalog/.
AWS Storage Gateway
オンプレミスのソフトウェアアプライアンスとクラウドベースのストレージと
を接続するウェブサービス。組織のオンプレミス IT 環境と AWS のストレー
ジインフラストラクチャとをシームレスに、セキュリティを維持しながら統合
します。
See Also https://aws.amazon.com/storagegateway/.
AWS Toolkit for Eclipse
Amazon Web Services を使用して開発者が Java アプリケーションを容易に開
発、デバッグ、およびデプロイできるようにする Eclipse for Java IDE のオー
プンソースプラグイン。
See Also https://aws.amazon.com/eclipse/.
AWS Toolkit for Visual Studio
Microsoft Visual Studio の拡張です。開発者が Amazon Web Services を使用
して、開発、デバッグ、.NET アプリケーションをデプロイする際に役立ちま
す。
See Also https://aws.amazon.com/visualstudio/.
AWS Tools for Windows
PowerShell
開発者および管理者が、各自の AWS サービスを Windows PowerShell スクリ
プト環境から管理する際に役立つ、一連の PowerShell cmdlets。
See Also https://aws.amazon.com/powershell/.
AWS Trusted Advisor
AWS 環境を調査し、コストの削減、システムの可用性とパフォーマンスの向
上に関する推奨事項を作成して、セキュリティのギャップを埋める支援を行う
ウェブサービス。
See Also https://aws.amazon.com/premiumsupport/trustedadvisor/.
AWS VPN CloudHub
VPC (p. 330) の有無にかかわらず、シンプルなハブアンドスポークモデルを
使用して支社間の通信をセキュリティで保護できます。
AWS WAF
リクエストの送信元のヘッダー値や IP アドレスなど、ユーザーが指定した基
準に基づいて、ウェブリクエストを許可またはブロックすることで、コンテン
ツへのアクセスを制御するウェブアプリケーションファイアウォール サービ
ス。AWS WAF は、ウェブのよく知られている弱点から保護するためのウェブ
アプリケーションファイアウォールです。
See Also https://aws.amazon.com/waf/.
API Version 2013-01-01
292
Amazon CloudSearch 開発者ガイド
請求
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
基本モニタリング
AWS により提供され、5 分間隔で派生するメトリクスのモニタリング。
バッチ
See ドキュメントバッチ.
BGP ASN
ボーダーゲートウェイプロトコル (BGP) 自律システム番号 (ASN)。BGP
のルーティングに使用する、一意のネットワークの識別子。Amazon
EC2 (p. 284) では、1~65335 の範囲 (予約されている 7224 を除く) の 2 バ
イトの ASN の番号がすべてサポートされます。
バッチ予測
Amazon Machine Learning: 入力データの監視を非同期的に一度に処理するオ
ペレーション。リアルタイムの予測とは異なり、バッチ予測はすべての予測が
処理されるまで使用できません。
See Also リアルタイム予測.
請求
See AWS Billing and Cost Management.
バイナリ属性
Amazon Machine Learning: 可能性のある 2 つの有効値のうちの、どちらかの
属性。有効な正の値は、1、y、yes、t、および true の回答です。有効なの負の
値は、0、n、no、f、false です。Amazon Machine Learning 正の値の場合の出
力は 1 で、負の値の場合の出力は 0 です。
See Also 属性.
バイナリ分類のモデル
Amazon Machine Learning: 解がバイナリ変数で表現できる質問に対する回答
を予測する機械学習モデル。たとえば、「1」または「0」、「yes」または
「no」、「クリックする」または「クリックしない」で答える質問は、バイ
ナリの解を持つ質問です。バイナリ分類モデルの結果は必ず、「1」 (「true」
または正の回答) または「0」 (「false」または負の回答) のいずれかになりま
す。
ブラックリスト
インターネットサービスプロバイダー (p. 307) により、スパム (p. 324) の
発信元であると疑われている IP アドレス、E メールアドレス、またはドメイ
ンのリスト。ISP では、これらのアドレスまたはドメインから送信される E
メールをブロックします。
ブロック
データセットです。Amazon EMR (p. 284) では、大量のデータがサブセッ
トに分割されます。各サブセットは、データブロックと呼ばれます。Amazon
EMR では、各ブロックに ID が割り当てられ、ハッシュテーブルを使用してブ
ロックの処理が追跡されます。
ブロックデバイス
固定サイズのブロック、セクタ、またはクラスターでデータの読み取りおよび
(任意で) 書き込みをサポートするストレージデバイス。
ブロックデバイスマッピング
インスタンスにアタッチされたブロックデバイスを指定した、すべての
AMI (p. 285) と インスタンス (p. 307) のマッピング構造。
ブートストラップアクション
Hadoop (p. 305) が開始する前に、ジョブフローのすべてのノードでスクリ
プトまたはアプリケーションを実行する、ユーザー指定のデフォルトまたはカ
スタムのアクション。
ボーダーゲートウェイプロト
コル (BGP) 自律システム番号
(ASN)
See BGP ASN.
API Version 2013-01-01
293
Amazon CloudSearch 開発者ガイド
バウンス
失敗した E メール配信。
超過
Auto Scaling (p. 288): ユーザー設定のしきい値 (上限または下限の境界) が渡
される条件。超過の継続時間が重要な場合は、超過時間パラメータで設定する
と、規模の拡大や縮小 (p. 321) を開始できることがあります。
bucket
Amazon Simple Storage Service (Amazon S3) (p. 286): 格納されるオブ
ジェクトのコンテナ。すべてのオブジェクトはバケット内に格納されます。
たとえば、photos/puppy.jpg という名前のオブジェクトが johnsmith
というバケットに格納されている場合、権限があるユーザーは http://
johnsmith.s3.amazonaws.com/photos/puppy.jpg という URL を使って
そのオブジェクトにアクセスできます。
バケット所有者
Amazon S3 (p. 286) の bucket (p. 294) を所有する人または組織。Amazon
が Amazon.com というドメイン名の唯一の所有者であるように、バケット
は、1 人の個人または 1 つの組織のみが所有できます。
バンドル
Amazon マシンイメージ (AMI) (p. 285) を作成するために一般的に使用され
る用語。これは特に instance store-backed AMI (p. 307) を作成することを示
します。
C
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
キャッシュクラスター
複数の キャッシュ ノード (p. 294) に分散された論理キャッシュ。キャッ
シュクラスターには、特定の数のキャッシュノードを設定できます。
キャッシュクラスター識別子
お客様が用意するキャッシュクラスターの識別子。AWS リージョン (p. 319)
内のお客様の識別子は一意である必要があります。
キャッシュエンジンバージョ
ン
キャッシュノードで実行中の Memcached サービスのバージョン。
キャッシュ ノード
セキュリティで保護され、ネットワークに接続している RAM の固定サイズの
断片。各キャッシュノードでは、Memcached サービスのインスタンスが実行
され、それぞれの DNS 名とポートを持っています。それぞれ関連付けられて
いる異なるメモリ量で、複数のタイプのキャッシュノードがサポートされてい
ます。
キャッシュノードタイプ
キャッシュノードを実行するために使用される EC2 インスタンス (p. 301)
タイプ
キャッシュパラメータグルー
プ
1 つ以上のキャッシュクラスターに適用できる、キャッシュエンジンパラメー
タ用のコンテナ。
キャッシュのセキュリティグ
ループ
コンソール、API またはコマンドラインツールを通じて指定された Amazon
EC2 (p. 284) セキュリティグループ (p. 322) に属する、ホストのキャッ
シュノードに対する侵入認証を統合する ElastiCache によって維持されるグ
ループ。
既定アクセスポリシー
bucket (p. 294) やオブジェクトに適用できる標準のアクセスコントロールポ
リシー。private、public-read、public-read-write、authenticated-read のオプ
ションがあります。
正規化
Amazon S3 (p. 286) などのサービスが認識できる、標準形式にデータを変換
するプロセス。
API Version 2013-01-01
294
Amazon CloudSearch 開発者ガイド
capacity
所定の時間でコンピューティングできるサイズの合計。各Auto Scaling グルー
プ (p. 288)は、最小のコンピューティングサイズと最大のコンピューティン
グサイズとともに定義されます。定義された最小値と最大値の範囲で、規模の
拡大や縮小 (p. 321) が容量を増大または縮小させます。
デカルト積プロセッサ
デカルト積を計算するプロセッサ。別名、デカルトデータプロセッサです。
デカルト積
複数セットのから積を返す算術演算。
証明書
一部の AWS 製品で、AWS アカウント (p. 282) およびユーザーの認証に使用
する認証情報。別名 X.509 証明書 (p. 331) です。証明書はプライベートキー
と組み合わせられます。
請求対象リソース
使用時に料金がかかる機能またはサービス。一部の AWS 製品は無料ですが、
料金が含まれるものもあります。たとえば、AWS CloudFormation (p. 289)
スタック (p. 325) で、料金が発生するように作成されている AWS リ
ソース (p. 320)。請求される金額は、使用量によって異なります。http://
calculator.s3.amazonaws.com/calc5.html にあるアマゾンウェブサービスのシ
ンプルな月次計算機を使用して、インスタンス、スタック、またはその他のリ
ソースを作成する前のコストを見積もります。
CIDR ブロック
クラスレスドメイン間ルーティング。インターネットプロトコルアドレスの割
り当てとルート集計方法。
See Also クラスレスドメイン間ルーティング (Wikipedia) .
暗号化テキスト
暗号化されていない情報である プレーンテキストが使用されます (p. 316) と
は対照的に、暗号化された (p. 302)情報。
ClassicLink
EC2-Classic インスタンス (p. 307) を VPC (p. 330) にリンクして、EC2Classic インスタンスと、プライベート IP アドレスを使用した VPC インスタ
ンスとの通信を有効にすることができる機能です。
See Also VPC へのリンク , VPC からのリンクの解除.
分類
機械学習では、データサンプルを単一のカテゴリまたは「クラス」に配置 (分
類) しようとする問題のタイプを指します。多くの場合、分類問題は 2 つのカ
テゴリ (クラス) から 1 つを選択するようモデル化されます。これらはバイナ
リ分類問題です。3 つ以上のカテゴリ (クラス) がある問題は、「複数クラスの
分類」問題と呼ばれます。
See Also バイナリ分類のモデル, 複数クラスの分類モデル.
クラウドサービスプロバイ
ダー (CSP)
サブスクライバ―にインターネットホストコンピューティング、ストレージ、
ソフトウェアサービスへのアクセスを提供する企業。
CloudHub
See AWS VPN CloudHub.
CLI
See AWS Command Line Interface (AWS CLI) .
クラスター
task (p. 327) を配置できる コンテナインスタンス (p. 297) の論理的なグ
ループ。
Amazon Elasticsearch Service (Amazon ES) (p. 284): Amazon Elasticsearch
Service (Amazon ES) の実行と Amazon ES ドメインの運用に必要な 1 つ以上
のデータノード、オプションの専用マスターノード、ストレージの論理グルー
プ。
See Also データノード, 専用マスターノード, ノード.
クラスターコンピューティン
グインスタンス
強化されたネットワークパフォーマンスと優れた CPU パワーを組み合わせ
て提供する、インスタンス (p. 307)により、ハイパフォーマンスコンピュー
ティング (HPC) アプリケーションとその他の要求が厳しいネットワークバウ
ンドアプリケーションに最適となります。
API Version 2013-01-01
295
Amazon CloudSearch 開発者ガイド
クラスタープレイスメントグ
ループ
インスタンス (p. 307) 間の低レイテンシーと高帯域接続を提供する論理 クラ
スターコンピューティングインスタンス (p. 295) グループ。
クラスターステータス
Amazon Elasticsearch Service (Amazon ES) (p. 284): クラスターの状態のイ
ンジケータ。ステータスは、緑、黄、赤のいずれかで表示されます。シャー
ドのレベルで、緑はすべてのシャードがクラスター内のすべてのノードに割
り当てられたことを、黄色はプライマリシャードは割り当てられたがレプリカ
シャードは割り当てられていないことを、赤は 1 つ以上のインデックスのプラ
イマリシャードとレプリカシャードが割り当てられていないことを表します。
シャードのステータスによりインデックスのステータスが決まり、インデック
スのステータスによりクラスターのステータスが決まります。
CMK
See カスタマーマスターキー (CMK) .
CNAME
正規名レコード。ドメイン名が別の正規ドメイン名のエイリアスであることを
指定する、ドメイン名システム (DNS) 内の リソースレコード (p. 320) のタ
イプ。より簡単に説明すると、1 つの完全修飾ドメイン名に別の完全修飾ドメ
イン名をエイリアスとして提供できる、DNS テーブルへのエントリです。
苦情
受取人 (p. 319) は E メールの受信を希望しないが、E メールクライアント内
で [スパムとしてマークする] をクリックすると、インターネットサービスプロ
バイダー (p. 307) が Amazon SES (p. 286) に通知を送信します。
複合クエリ
Amazon CloudSearch (p. 283): Amazon CloudSearch 構造化検索の構文を使
用して、複数の検索条件を指定する検索リクエスト。
Condition
IAM (p. 290): アクセス許可に関する制限または詳細。「A は、条件 D が適用
される状況で C に対して B を実行するアクセス許可がある」というステート
メントでは、条件は D です。
AWS WAF (p. 292): Amazon CloudFront (p. 283) ディストリビューション
など、AWS リソース (p. 320) へのウェブリクエストで AWS WAF が検索す
る一連の属性。条件には、ウェブリクエストが発生する IP アドレスや、リク
エストヘッダー内の値などの値を含めることができます。指定の条件に基づ
いて、AWS リソースへのウェブリクエストを許可またはブロックする AWS
WAF を設定できます。
条件パラメータ
See マッピングを.
設定 API
Amazon CloudSearch (p. 283): 検索ドメインを作成、設定、管理するために
使用する API 呼び出し。
設定テンプレート
AWS Elastic Beanstalk (p. 290) が環境にプロビジョニングすることができる
ように、多様な AWS 製品のパラメータを定義するキー – 値の一連のペア。
整合性モデル
高可用性を実現するためにサービスが使用する方法。たとえば、データセン
ター内の複数のサーバー間でデータを複製する可能性があります。
See Also 最終的な一貫性.
console
See AWS マネジメントコンソール.
一括決済
会社内の複数の AWS アカウントを、単一の支払アカウントを指定することに
より、一括決済するための AWS Billing and Cost Management (p. 288) サー
ビスの機能。すべてのアカウントで発生した AWS コストをまとめて見るこ
とができるほか、お支払いアカウントに関連付けられた個々の AWS アカウ
ントの詳細なコストレポートを見ることもできます。一括請求 (コンソリデー
ティッドビリング) をご利用いただくにあたって、追加料金は必要ありませ
ん。
コンテナ
task (p. 327) の一部である Docker 画像から作成された Linux コンテナ。
API Version 2013-01-01
296
Amazon CloudSearch 開発者ガイド
コンテナの定義
コンテナ (p. 296) にどの Docker イメージ (p. 300) を使用するか、コンテ
ナにどのくらいの CPU とメモリが割り当てられているか、およびその他のオ
プションを指定します。コンテナの定義は タスク定義 (p. 327) の一部として
含まれています。
コンテナインスタンス
Amazon EC2 Container Service (Amazon ECS) (p. 284) エージェントを
実行しており、クラスター (p. 295) に登録されている EC2 インスタン
ス (p. 301)。Amazon ECS task (p. 327) は実行中のコンテナインスタンス
に配置されます。
Container Registry
Docker イメージ (p. 300) を格納、管理、デプロイします。
継続的デリバリー
コードを変更するソフトウェア開発のベストプラクティスは、本稼働環境への
公開を自動的にビルド、テスト、準備します。
See Also https://aws.amazon.com/devops/continuous-delivery/.
継続的インテグレーション
自動化されたビルドとテストが実行された後、開発者がコードの変更をセント
ラルリポジトリに日常的にマージするソフトウェア開発業務。
See Also https://aws.amazon.com/devops/continuous-integration/.
クールダウン期間
Auto Scaling (p. 288) が Auto Scaling グループ (p. 288) の必要なサイズ
を、Amazon CloudWatch (p. 283) アラーム (p. 282) からのその他の通知に
よって変更できないようにする期間。
コアノード
マップを実行してタスクを軽減し、Hadoop Distributed File System (HDFS) を
使用してデータを保存するEC2 インスタンス (p. 301)。Hadoop (p. 305)コ
アノードは、ノードに Hadoop タスクを割り当て、ステータスをモニタリン
グする マスターノード (p. 311)によって管理されます。コアノードとして割
り当てる EC2 インスタンスが、実行するジョブフロー全体で配分する必要が
ある容量です。コアノードにはデータが格納されるため、コアノードをジョブ
フローから削除することはできません。しかし、実行中のジョブフローにコア
ノードを追加することはできます。
コアノードは、DataNodes と TaskTracker の両方の Hadoop デーモンを実行
します。
コーパス
Amazon CloudSearch (p. 283): 検索するデータのコレクション。
認証情報ヘルパー
AWS CodeCommit (p. 289): リポジトリに接続するとき、リポジトリの認
証情報を保存して、保存したリポジトリに Git を供給するプログラム。AWS
CodeCommit リポジトリに接続するとき Git で利用できる認証情報ヘルパーを
含む AWS CLI (p. 289)。
認証情報
/アクセス資格情報またはセキュリティ資格情報とも呼ばれます。認証および
認可を実行する際にシステムは、誰が呼び出しをしているかを特定し、リク
エストされたアクセスを許可するかどうかを決定するために認証情報を使用し
ます。AWS では、これらの認証情報は通常、アクセスキー ID (p. 281)およ
びシークレットアクセスキー (p. 322)です。
クロスアカウントアクセス
他の AWS アカウントのユーザーにより、1 つの AWS アカウント (p. 282)
での リソース (p. 320) の使用を制限され、管理される許可のプロセス。
たとえば、AWS CodeCommit (p. 289) および AWS CodeDeploy (p. 289)
では、AWS アカウントにいるユーザーが、アカウント B により作成され
た AWS CodeCommit リポジトリにアクセスできるよう、クロスアカウン
トアクセスを設定できます。一方、アカウント A により作成された、AWS
CodePipeline (p. 289) 内のパイプラインはアカウント B により作成され
た AWS CodeDeploy リソースを使用できます。IAM (p. 290) では、ロー
ル (p. 320) を使用して、あるアカウントの user (p. 329) への一時アクセス
をもう一方のリソースに委任 (p. 299)できます。
API Version 2013-01-01
297
Amazon CloudSearch 開発者ガイド
クロスリージョンレプリケー
ション
さまざまな AWS リージョン (p. 319) にまたがる Amazon
DynamoDB (p. 283) テーブルの同一コピーをほぼリアルタイムで維持するた
めのクライアント側ソリューションです。
カスタマーゲートウェイ
Amazon VPC (p. 286) により管理されている、ユーザー側の VPN トンネル
の横にある、ルーターまたはソフトウェアアプリケーション。カスタマーゲー
トウェイの内部インターフェイスは、ホームネットワークの 1 つ以上のデバイ
スにアタッチされます。外部インターフェイスは、VPN トンネル全体にわた
りVPG (p. 330)にアタッチされます。
カスタマー管理ポリシー
で作成し、管理する AWS アカウント (p. 282)IAM (p. 290) 管理ポリ
シー (p. 311)。
カスタマーマスターキー
(CMK)
AWS Key Management Service (AWS KMS) (p. 290) が管理する基本の リ
ソース (p. 320)。CMK はカスタマー管理型または AWS 管理型のキーとする
ことができます。AWS KMS 内の CMK を使用して、4 KB のデータを直接 暗
号化 (p. 302)、復号、生成されたデータキーを暗号化します。これは、サー
ビス外部の大量のデータを暗号化/復号するために使用できます。
D
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
ダッシュボード
See サービス状態ダッシュボード.
データの整合性
データが正常に書き込まれ、または更新され、データのすべてのコピーがすべ
ての AWS リージョン (p. 319) で更新されたことを示す概念。ただし、デー
タがすべての格納場所にプロパゲートされるには時間がかかります。多様なア
プリケーション要件に対応するために、Amazon DynamoDB (p. 283) では結
果整合性のある読み込みと強力な整合性のある読み込みの両方のオプションが
サポートされています。
See Also 最終的な一貫性, 結果的に整合性のある読み込み, 強力な整合性のあ
る読み込み.
データノード
Amazon Elasticsearch Service (Amazon ES) (p. 284): データを保持し、デー
タアップロードリクエストに応答する Elasticsearch インスタンス。
See Also 専用マスターノード, ノード.
データスキーマ
See schema.
データソース
アプリケーションまたはデータベースにより、必要な情報を提供する、デー
タベース、ファイル、リポジトリ。たとえば、AWS OpsWorks (p. 291)
では、有効なデータソースには、スタック MySQL レイヤーの インスタ
ンス (p. 307) や、スタック Amazon RDS (p. 286) サービスレイヤー
が含まれます。Amazon Redshift (p. 286) では、有効なデータソースに
は、Amazon S3 (p. 286) bucket (p. 294)内、Amazon EMR (p. 284) クラ
スター内、SSH 接続を介してアクセスできるリモートホスト上にあるテキス
トファイルが含まれます。
See Also データソース.
データベース エンジン
DB インスタンス (p. 299)で実行されるデータベース ソフトウェアとバー
ジョン 。
データベース名
DB インスタンス (p. 299)でホストされているデータベースの名前。DB イン
スタンスは、複数のデータベースをホストできますが、同じ DB インスタンス
API Version 2013-01-01
298
Amazon CloudSearch 開発者ガイド
によりホストされているデータベースはそれぞれ、そのインスタンス内で一意
の名前が必要です。
データソース
Amazon Machine Learning (p. 285): 入力データに関するメタデータを含むオ
ブジェクト。Amazon ML は入力データを読み出し、属性の詳細な統計情報を
コンピューティングし、データソースオブジェクトの一部として、スキーマと
その他の情報とともに、統計を保存します。Amazon ML はデータソースを使
用して機械学習モデルをトレーニング、評価して、バッチ予測を生成します。
See Also データソース.
DB コンピューティングクラス
インスタンスを実行するために使用される、データベースのコンピューティン
グプラットフォームのサイズ。
DB インスタンス
クラウドで実行される、隔離されたデータベース。DB インスタンスには、複
数のユーザーが作成したデータベースを含めることができます。
DB インスタンス識別子
DB インスタンスのユーザーが提供する識別子。識別子は、AWS リージョ
ン (p. 319)のそのユーザーに一意である必要があります。
DB パラメータ グループ
1 つ以上のDB インスタンス (p. 299)に適用されるデータベースエンジンパラ
メータ値のコンテナ。
DB セキュリティグループ
DB インスタンス (p. 299)へのアクセスをコントロールする方法。デフォルト
で、ネットワークアクセスは、DB インスタンスに無効です。入力が セキュリ
ティグループ (p. 322) を使用するよう設定されると、同じルールが、そのグ
ループに関連するすべての DB インスタンスに適用されます。
DB スナップショット
ユーザーが開始する DB インスタンス (p. 299) のポイントバックアップ。
Dedicated Host
完全にユーザー専用の EC2 インスタンス (p. 301) 容量の物理サーバー。
ハードウェア専有インスタン
ス
ホストのハードウェアレベルで物理的に分離され、VPC (p. 330) 内で起動さ
れる インスタンス (p. 307)。
専用マスターノード
Amazon Elasticsearch Service (Amazon ES) (p. 284): クラスター管理タス
クを実行する Elasticsearch インスタンス。ただし、データを保持せず、デー
タアップロードリクエストにも応答しません。Amazon Elasticsearch Service
(Amazon ES) は、クラスターの安定性を向上するために専用マスターノード
を使用します。
See Also データノード, ノード.
ハードウェア専有リザーブド
インスタンス
VPC (p. 330) に ハードウェア専有インスタンス (p. 299) を起動するのに十
分な容量が利用可能であることを保証するために、購入できるオプション。
委任
単一 AWS アカウント (p. 282) 内: AWS user (p. 329) に AWS アカウント
の リソース (p. 320) へのアクセスを付与します。
2 つの AWS アカウント間: リソースを所有するアカウント (信頼するアカウン
ト) と、リソースへアクセスする必要のあるユーザーを含むアカウント (信頼
されたアカウント) の間に信頼をセットアップします。
See Also 信頼ポリシー.
削除マーカー
キーとバージョン ID があるが、コンテンツがないオブジェクト。オブ
ジェクトが削除されると、Amazon S3 (p. 286) は自動的にバージョン
bucket (p. 294) に削除マーカーを挿入します。
配信性能
E メールメッセージが意図した宛先に届く可能性。
配信
一定期間中に、インターネットサービスプロバイダー (p. 307) によって 受取
人 (p. 319) への配信のために受け付けられた Amazon SES (p. 286) 経由で
送信された E メールメッセージの数。
API Version 2013-01-01
299
Amazon CloudSearch 開発者ガイド
拒否
効果として拒否を含んでいる ポリシー (p. 316) ステートメントの結果。特定
のアクションが特定のユーザー、グループ、またはロールに対して明示的に禁
止されます。明示的な拒否は明示的な許可 (p. 282)よりも優先されます。
デプロイ設定
AWS CodeDeploy (p. 289): デプロイ中にサービスにより使用される、一連の
デプロイルールと、成功および失敗の条件。
デプロイグループ
AWS CodeDeploy (p. 289): 個別にタグ付けられた一連の インスタン
ス (p. 307)、Auto Scaling グループ (p. 288) 内の EC2 インスタン
ス (p. 301)、または両方。
詳細モニタリング
1 分間隔で派生する AWS 提供のメトリクスのモニタリング。
説明プロパティ
AWS CloudFormation (p. 289) テンプレートエレメントを文書化するために
役立つパラメータ、リソース (p. 320)、リソースプロパティ、マッピング、
および出力に追加されるプロパティ。
ディメンション
メトリクスを識別するための追加の情報を含んでいる名前と値のペア (たとえ
ば、InstanceType=m1.small または EngineName=mysql)。
フォーラム
AWS ユーザーが開発作業を迅速に行い、AWS コミュニティと対話するため
に役立つ技術的な質問やフィードバックを投稿できる場所。ディスカッション
フォーラムは https://aws.amazon.com/forums/ にあります。
ディストリビューション
CloudFront (p. 283) が自動的に割り当てるオリジンサーバー (Amazon
S3 (p. 286) bucket (p. 294) など) とドメイン名の間のリンク。CloudFront
は、このリンクを通して、オリジンサーバー (p. 314)に保存されているオブ
ジェクトを識別します。
DKIM
ドメインキーアイデンティファイドメール。E メールの送信者がメッセージに
署名するために使用する標準。ISP は、署名を使用して、メッセージが正当で
あることを確認します。詳細については、http://www.dkim.org をご覧くださ
い。
DNS
See ドメインネームシステム.
Docker イメージ
Docker コンテナ (p. 296) の基礎となる多層ファイルシステムのテンプレー
ト。Docker イメージは、特定のオペレーティングシステムやアプリケーショ
ンで構成できます。
document
Amazon CloudSearch (p. 283): 検索結果として返すことができる項目。各ド
キュメントには、検索したり返したりできるデータを含んでいるフィールドの
集合があります。フィールドの値としては文字列または数値を使用できます。
各ドキュメントには、一意の ID が割り当てられ、少なくとも 1 つのフィール
ドがある必要があります。
ドキュメントバッチ
Amazon CloudSearch (p. 283): ドキュメント追加操作とドキュメント削除操
作の集合。バッチを送信して検索ドメインのデータを更新するには、ドキュメ
ントサービス API を使用します。
ドキュメントサービス API
Amazon CloudSearch (p. 283): バッチを送信して検索ドメインのデータを更
新するために使用する API 呼び出し。
ドキュメントサービス エンド
ポイント
Amazon CloudSearch (p. 283): ドキュメント更新を Amazon CloudSearch ド
メインに送信するときに接続する URL。各検索ドメインには固有のドキュメ
ントサービスエンドポイントがあり、ドメインの存続期間中にこれが変更され
ることはありません。
ドメイン
Amazon Elasticsearch Service (Amazon ES) (p. 284): Amazon Elasticsearch
Service (Amazon ES) エンドポイントによって公開されるハードウェア、ソフ
トウェア、およびデータ。Amazon ES ドメインは、Elasticsearch クラスター
API Version 2013-01-01
300
Amazon CloudSearch 開発者ガイド
の周囲のサービスラッパーです。Amazon ES ドメインは、Amazon ES リク
エスト、検索対象のインデックス化されたデータ、ドメインのスナップショッ
ト、アクセスポリシー、メタデータを処理するエンジンインスタンスをカプセ
ル化します。
See Also クラスター, Elasticsearch.
ドメインネームシステム
サービスとして使用できるため、わかりやすいドメイン名 (www.example.com
など) を、コンピューターが相互接続に使用する IP アドレス (192.0.2.1 など)
に変換することで、インターネットトラフィックをウェブサイトにルーティン
グします。
寄付ボタン
米国国税局の規定 501 (c) 3 の資格を認定されている非営利組織が簡単かつ安
全に寄付を募ることができる HTML コードのボタン。
DynamoDB ストリーム
Amazon DynamoDB (p. 283) テーブル内の項目に加えられた変更に関する情
報の順序付けされた情報。テーブルでストリームを有効にすると、DynamoDB
はテーブル内のデータ項目に加えられた各変更に関する情報をキャプチャしま
す。
See Also Amazon DynamoDB Streams.
E
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
EBS
See Amazon Elastic Block Store (Amazon EBS) .
EC2
See Amazon Elastic Compute Cloud (Amazon EC2) .
EC2 コンピュートユニット
コンピュート CPU およびメモリの AWS 標準。この測定値を使用して、さま
ざまな EC2 インスタンス (p. 301) タイプの CPU 処理能力を評価できます。
EC2 インスタンス
Amazon EC2 (p. 284) サービスの インスタンス (p. 307) のコンピューティ
ング。他の AWS サービスでは、そこでサポートされている他のタイプのイン
スタンスとこれらのインスタンスを区別するために、EC2 インスタンスとい
う用語が使用されています。
ECR
See Amazon EC2 Container Registry (Amazon ECR).
ECS
See Amazon EC2 Container Service (Amazon ECS).
エッジロケーション
CloudFront (p. 283) がコンテンツのコピーをキャッシュするために使用する
サイト。これにより、コンテンツが場所に関係なく迅速にユーザーに配信され
ます。
EFS
See Amazon Elastic File System (Amazon EFS).
弾力性
Elasticsearch、Logstash、Kibana、Beats をはじめとするオープンソースソ
リューションを提供する企業。これらのソリューションは、ソースからデータ
を取得し、それをリアルタイムで検索、分析、可視化することを目的として作
られています。
Amazon Elasticsearch Service (Amazon ES) は、AWS クラウドで
Elasticsearch をデプロイ、運用、スケーリングするための AWS マネージド
サービスです。
See Also Amazon Elasticsearch Service (Amazon ES), Elasticsearch.
Elastic Block Store
See Amazon Elastic Block Store (Amazon EBS) .
API Version 2013-01-01
301
Amazon CloudSearch 開発者ガイド
Elastic IP アドレス
Amazon EC2 (p. 284) または Amazon VPC (p. 286) で割り当てた後に イ
ンスタンス (p. 307) にアタッチした固定 (静的) IP アドレス。Elastic IP アド
レスは、特定のインスタンスにではなく、アカウントに関連付けられます。こ
れらは、ニーズの変化に応じて簡単に割り当てる、アタッチする、デタッチす
る、および開放することができるため、Elastic (融通の利く) と呼ばれていま
す。従来の静的 IP アドレスとは異なり、Elastic IP アドレスでは、インスタン
スや アベイラビリティーゾーン (p. 288) で障害が発生した場合に、パブリッ
ク IP アドレスを別のインスタンスに速やかに再マッピングすることによって
障害を隠すことができます。
Elastic Load Balancing
着信トラフィックを 2 つ以上の EC2 インスタンス (p. 301)に分散することで
アプリケーションの可用性を高めるウェブサービス。
See Also https://aws.amazon.com/elasticloadbalancing.
Elastic Network Interface
インスタンス (p. 307)にアタッチすることができる追加のネットワークイン
ターフェイス。ENI には、プライマリプライベート IP アドレス、1 つ以上の
セカンダリプライベート IP アドレス、Elastic IP アドレス (任意指定)、MAC
アドレス、指定された セキュリティグループ (p. 322) のメンバーシップ、説
明、およびソース/デスティネーションチェックフラグが含まれています。ENI
を作成して、インスタンスへのアタッチ、インスタンスからのデタッチ、およ
び別のインスタンスへのアタッチを行うことができます。
Elasticsearch
全文検索機能、構造化検索、および分析に使用される、オープンソース、リア
ルタイム、分散型の検索および分析エンジンです。Elasticsearch は Elastic に
よって開発されました。
Amazon Elasticsearch Service (Amazon ES) は、AWS クラウドで
Elasticsearch をデプロイ、運用、スケーリングするための AWS マネージド
サービスです。
See Also Amazon Elasticsearch Service (Amazon ES), 弾力性.
EMR
See Amazon EMR (Amazon EMR) .
暗号化
数学的アルゴリズムを使用して、未承認の user (p. 329) にはデータを解読で
きないようにすると同時に、承認済みユーザーには、キーやパスワードなどの
方法を使用して、変換されたデータを元の状態に戻せるようにします。
暗号化コンテキスト
AWS Key Management Service (AWS KMS) (p. 290) 暗号化された情報に関
連付けられた追加の情報を含む、1 組キーと値のペア。
エンドポイント
ホストおよびポートをウェブサービスのエントリポイントとして識別する
URL。ウェブサービスの各リクエストには、1 つずつエンドポイントが含まれ
ています。ほとんどの AWS 製品には、高速で接続できるように地域ごとのエ
ンドポイントが用意されています。
Amazon ElastiCache (p. 284): キャッシュ ノード (p. 294)の DNS 名。
Amazon RDS (p. 286): DB インスタンス (p. 299) の DNS 名。
AWS CloudFormation (p. 289): HTTP リクエストを受け取るサーバーの IP ア
ドレスの DNS 名。
エンドポイントポート
Amazon ElastiCache (p. 284): キャッシュ ノード (p. 294)が使用するポート
番号。
Amazon RDS (p. 286): DB インスタンス (p. 299) が使用するポート番号。
エンベロープ暗号化
アルゴリズムを使用してデータを保護するために、マスターキーとデータキー
を使用します。マスターキーを使用してデータキーを暗号化し、復号します。
データキーはデータそのものを暗号化し、復号します。
API Version 2013-01-01
302
Amazon CloudSearch 開発者ガイド
環境
AWS Elastic Beanstalk (p. 290): 同時接続の (p. 287) の特定の実行中のイン
スタンス。アプリケーションには CNAME があり、アプリケーションバージョ
ンとカスタマイズ可能な設定 (デフォルトのコンテナタイプから継承) が含ま
れています。
環境設定
環境とその環境に関連付けられているリソースの動作を定義するパラメータと
設定の集合。
エフェメラルストア
See インスタンスストア.
epoch
時間測定開始日 ほとんどの Unix 環境のエポックは 1970 年 1 月 1 日です。
評価
Amazon Machine Learning: 機械学習 (ML) モデルの予測パフォーマンスを測定
するプロセス。
また、詳細と ML モデル評価の結果を保管する機械学習オブジェクト。
評価のデータソース
機械学習モデルの予測の正確性を評価するために、Amazon Machine Learning
が使用するデータ。
最終的な一貫性
AWS が高可用性を実現するための手法。Amazon のデータセンター内の複数
のサーバーにデータがレプリケートされます。データが書き込まれたとき、ま
たは更新されたときに Success が返されると、データのすべてのコピーが更
新されます。しかし、データがすべてのストレージの場所に伝達されるには時
間がかかります。最終的にはデータの一貫性が保たれますが、すぐに読み取り
をした場合は変更が表示されない可能性があります。通常、整合性は数秒以内
に達成します。
See Also データの整合性, 結果的に整合性のある読み込み, 強力な整合性のあ
る読み込み.
結果的に整合性のある読み込
み
読み込みプロセスは 1 つのリージョンのみからのデータを返し、最新の書き込
み情報を表示しない場合があります。ただし、少し時間がたってから読み込み
リクエストを繰り返すと、最終的に応答で最新のデータが返されます。
See Also データの整合性, 最終的な一貫性, 強力な整合性のある読み込み.
削除
有効期限が切れる前に、オブジェクトの CloudFront (p. 283) により エッジ
ロケーション (p. 301) から削除されます。エッジロケーションに頻繁に要求
されないオブジェクトがあれば、CloudFront は、頻繁に要求されるオブジェ
クトのためにスペースを確保するために、そのオブジェクトを削除する (その
オブジェクトの有効期限が切れる前に削除する) 場合があります。
エクスビバイト
「エクサバイナリバイト」の略。1 エクスビバイトは 2^60、つまり
1,152,921,504,606,846,976 バイトです。1 エクサバイト (EB) は 10^18、
つまり 1,000,000,000,000,000,000 バイトです。1,024 EiB はゼビバイ
ト (p. 331)です。
有効期限切れ
CloudFront (p. 283) キャッシュで、CloudFront がユーザーリクエストへ
の応答を停止するとき。エッジロケーション (p. 301) にオブジェクトを保
存する期間を指定するためにヘッダーや CloudFront ディストリビューショ
ン (p. 300) 設定を使用しない場合、オブジェクトは 24 時間後に失効し
ます。次回ユーザーが有効期限が切れたオブジェクトをリクエストすると
き、CloudFront はオリジン (p. 314)にリクエストを転送します。
明示的な起動許可
特定の AWS アカウント (p. 282) に付与される Amazon マシンイメージ
(AMI) (p. 285) 起動許可。
急激なバックオフ
システム負荷を軽減し、反復されるリクエストが正常に処理される可能性を
高めるために再試行間の待機時間を一定単位で長くする戦略。たとえば、クラ
イアントアプリケーションが、1 回目の再試行の前に最大 400 ミリ秒、2 回目
の前に最大 1600 ミリ秒、3 回目の前に最大 6400 ミリ秒 (6.4 秒) 待つなどで
す。
API Version 2013-01-01
303
Amazon CloudSearch 開発者ガイド
expression
Amazon CloudSearch (p. 283): 検索ヒットのソート方法を制御するために使
用できる数値式。Amazon CloudSearch 式は、数値フィールド、他の順位付け
式、ドキュメントのデフォルトの関連度スコア、標準の数値演算子および関数
を使用して作成できます。sort オプションを使用して検索リクエストで式を
指定すると、その式は検索ヒットごとに評価され、検索ヒットはその式の値に
従って一覧表示されます。
F
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
ファセット
Amazon CloudSearch (p. 283): 検索結果を調整およびフィルタするために使
用するカテゴリを表すインデックスフィールド。
ファセットを有効化
Amazon CloudSearch (p. 283): ファセット情報がフィールドの計算に含めら
れるようにするインデックスフィールドオプション。
FBL
See フィードバックループ.
機能変換
Amazon Machine Learning: 機械学習モデルの学習および生成の能力を最適化
するために、RAW 入力変数からより予測精度が高い入力表示または「機能」
を構築する機械学習プロセス。データ変換や機能エンジニアリングとも呼ばれ
ています。
フェデレーティッド認証管理
個人が、同じグループまたは個人の資格情報を使用してすべてのネットワー
クのデータにアクセスして、複数の異なるネットワークまたはサービスにサイ
ンインできるようにします。AWS での ID フェデレーションを使用して、IAM
user (p. 329) を作成しなくても外部 ID (フェデレーションされたユーザー)
に AWS アカウント (p. 282) の リソース (p. 320) にセキュアなアクセスが
付与されます。これらの外部 ID は企業の ID ストア (LDAP または Windows
Active Directory など) か、サードパーティ (Amazon、Facebook、Google
でログイン) からのものである可能性があります。AWS フェデレーション
は、SAML 2.0 もサポートしています。
フェデレーティッドユーザー
See フェデレーティッド認証管理.
フェデレーション
See フェデレーティッド認証管理.
フィードバックループ
メールボックスプロバイダー (たとえば、インターネットサービスプロバイ
ダー (p. 307)) が受取人 (p. 319)の苦情 (p. 296)を支払人 (p. 322)に送り
返すメカニズム。
フィールドの重み
検索インデックスのテキストフィールドの相対的重要性。フィールドの重みに
よって、特定のテキストフィールドの一致がドキュメントの関連度スコアにど
れほど影響するかが制御されます。
フィルタ
Amazon EC2 (p. 284) リソース (p. 320) を一覧表示または説明するときに
結果を絞り込むために指定する条件。
フィルタクエリ
結果の得点方法とソート方法に影響を与えることなく検索結果をフィルタする
方法。Amazon CloudSearch (p. 283) fq パラメータで指定されます。
FIM
See フェデレーティッド認証管理.
Firehose
See Amazon Kinesis Firehose.
API Version 2013-01-01
304
Amazon CloudSearch 開発者ガイド
形式バージョン
See テンプレート形式バージョン.
フォーラム
See フォーラム.
function
See 組み込み関数.
あいまい検索
文字列の近似一致 (あいまい一致) を使用するシンプルな検索クエリ。誤字や
脱字を訂正するために使用されます。
G
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
地理空間検索
緯度と経度で指定された位置を使用する検索クエリ。一致が特定され、結果が
ソートされます。
「ギガバイナリバイト」の略。1 ギビバイトは 2^30、つまり 1,073,741,824
バイトです。1 ギガバイト (GB) は 10^9、つまり 1,000,000,000 バイトで
す。1,024 GiB は (p. 327)です。
グローバルセカンダリイン
デックス
テーブルと異なるパーティションキーとソートキーを持つインデックス。グ
ローバルセカンダリインデックスは、インデックスに関するクエリが、すべて
のパーティションにまたがり、表内のすべてのデータを対象とする可能性があ
るため、グローバルと見なされます。
See Also ローカルセカンダリインデックス.
許可
AWS Key Management Service (AWS KMS) (p. 290): AWS プリンシパ
ル (p. 316) にカスタマーマスターキー (CMK) (p. 298) を使用するための長
期のアクセス許可を付与するためのメカニズム。
許可トークン
許可 (p. 305) のアクセス権限を許可して、直ちに実行する識別子のタイプ。
グランドトゥルース
機械学習 (ML) モデルトレーニングプロセスで使用される、ターゲットの属性
の正しい値を含む監視。ML モデルをトレーニングして家の販売価格を予測し
ます。通常、入力監視には、その地域での以前の家の販売が含まれます。これ
らの環境の家の販売価格はグランドトゥルースを構成します。
グループ
IAM (p. 290) user (p. 329)の集合。IAM グループを使用して、複数ユーザー
の権限の指定および管理を簡素化できます。
H
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
Hadoop
クラスターとシンプルなプログラミングモデルを使用して、ビッグデータの分
散処理を可能にするソフトウェア。詳細については http://hadoop.apache.org
をご覧ください。
ハードバウンス
"メールボックスは存在しません。" などの永続的な E メール配信障害。
ハードウェア VPN
ハードウェアベースのインターネット経由 IPsec VPN 接続。
API Version 2013-01-01
305
Amazon CloudSearch 開発者ガイド
ヘルスチェック
Auto Scaling (p. 288) グループ内の各インスタンスのヘルスステータスを
チェックするためのシステムコール。
高品質 E メール
受取人が有益であると考え、受け取りを希望する E メール。有益であるかど
うかは受取人によって異なり、その形式にはオファー、注文確認、領収書、
ニュースレターなどがあります。
highlights
Amazon CloudSearch (p. 283): 一致するドキュメントのテキスト内のどこに
検索語があるかを示す検索結果とともに返される抜粋。
ハイライトを有効化
Amazon CloudSearch (p. 283): フィールド内の一致がハイライトされるよう
にするインデックスフィールドオプション。
ヒット
検索リクエストで指定された条件に一致するドキュメント。検索結果とも呼ば
れます。
HMAC
ハッシュベースメッセージ認証コード。メッセージ認証コード (MAC) を計算
するための特定の仕組み。暗号化ハッシュ関数とシークレットキーを組み合わ
せて使用します。これを使用することにより、データの整合性とメッセージの
正統性を同時に検証できます。AWS は、SHA-256 などの標準的な暗号化ハッ
シュアルゴリズムを使用して HMAC を計算します。
ホストゾーン
Amazon Route 53 (p. 286) がホストする リソースレコード (p. 320) 設定の
集合。従来の DNS ゾーンファイルと同様に、ホストゾーンは単一のドメイン
名でまとめて管理されるレコードの集合を表します。
HVM 仮想化
ハードウェア仮想マシンの仮想化。ゲスト VM は、性能の向上のために準仮
想化 (PV) ネットワークおよびストレージドライバを使用している点を除き、
ネイティブハードウェアプラットフォームで動作しているかのように動作しま
す。
See Also PV 仮想化.
I
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
IAM
See AWS Identity and Access Management (IAM) .
IAM グループ
See グループ.
IAM ポリシーシミュレータ
See ポリシーシミュレータ.
IAM ロール
See ロール.
IAM ユーザー
See user.
Identity and Access
Management
See AWS Identity and Access Management (IAM) .
ID プロバイダー (IdP)
外部 ID プロバイダーに関するメタデータを保持する IAM (p. 290) エンティ
ティ。
IdP
See ID プロバイダー (IdP) .
イメージ
See Amazon マシンイメージ (AMI) .
インポート/エクスポートス
テーション
Amazon S3 (p. 286) との間でデータをアップロードまたはダウンロードする
マシン。
API Version 2013-01-01
306
Amazon CloudSearch 開発者ガイド
インポートログ
AWS Import/Export (p. 290) がどのようにデータを処理したかに関する詳細
を含んでいるレポート。
インデックス
See 検索インデックス.
インデックスフィールド
Amazon CloudSearch (p. 283) ドメインのインデックスに含まれている名前
と値のペア。インデックスフィールドには、テキストデータ、数値データ、日
付、または場所を含めることができます。
インデックスオプション
Amazon CloudSearch (p. 283) ドメインのインデックスフィールド、ドキュ
メントデータとインデックスフィールドのマッピング方法、およびインデック
スフィールドの使用方法を定義する設定。
インラインポリシー
単一の IAM user (p. 329)、グループ (p. 305)、ロール (p. 320) に埋め込ま
れた IAM (p. 290) ポリシー (p. 316)。
入力データ
Amazon Machine Learning: 機械学習モデルをトレーニングおよび評価して予
測を生成するために、Amazon Machine Learning に提供する監視。
インスタンス
AWS クラウド内の仮想サーバーとして実行する Amazon マシンイメージ
(AMI) (p. 285) の複製。
インスタンスファミリー
ストレージまたは CPU 処理能力のどちらかを使用する一般的なインスタンス
タイプ (p. 307)グループ。
インスタンスグループ
Hadoop (p. 305) クラスターには、1 個の マスターノード (p. 311) を含む 1
個のマスターインスタンスグループ、1 個以上の コアノード (p. 297) を含む
1 個のコアインスタンスグループ、および数に制限なくタスクノードを含むこ
とのできる任意指定の タスクノード (p. 327) インスタンスグループが含まれ
ています。
インスタンスプロファイル
起動時に IAM (p. 290) ロール (p. 320) 情報を EC2 インスタンス (p. 301)
に渡すコンテナ。
インスタンスストア
EC2 インスタンス (p. 301) のホストコンピュータに物理的にアタッチされ
ており、そのため存続期間がそのインスタンスと同じであるディスクストレー
ジ。インスタンスが削除されると、インスタンスストアのデータは失われま
す。
instance store-backed AMI
ルートデバイスとして インスタンスストア (p. 307) ボリューム (p. 330)
を使用する インスタンス (p. 307) がある Amazon マシンイメージ (AMI)
(p. 285) のタイプ。これに比べて、Amazon EBS (p. 283)-backed AMI から
起動されるインスタンスは、Amazon EBS ボリュームをルートデバイスとし
て使用します。
インスタンスタイプ
インスタンス (p. 307) のメモリ、CPU、ストレージ容量、および時間あたり
のコストを定義する指定。インスタンスタイプの中には、標準的なアプリケー
ション向けに設計されたものもあれば、CPU やメモリを大量に消費するアプ
リケーション向けに設計されたものもあります。
インターネットゲートウェイ
ネットワークをインターネットに接続します。VPC (p. 330) 外部の IP アド
レスのトラフィックをインターネットゲートウェイにルーティングすることが
できます。
インターネットサービスプロ
バイダー
加入者にインターネットへのアクセスを提供する会社。ISP の多くはメール
ボックスプロバイダー (p. 310)でもあります。メールボックスサービスしか
提供していないメールボックスプロバイダーが ISP と呼ばれることもありま
す。
組み込み関数
ランタイムまで使用できないプロパティに値を割り当てる AWS
CloudFormation (p. 289) テンプレートでの特別な操作。これらの関数
API Version 2013-01-01
307
Amazon CloudSearch 開発者ガイド
は、Fn::Attribute という形式に従います (Fn::GetAtt など)。組み込み関数の
引数には、他の組み込み関数のパラメータ、擬似パラメータ、または出力を指
定できます。
IP アドレス
インターネットプロトコル (IP) を使用して相互に通信するために使用する、
ネットワークに接続されたデバイスの数値アドレス (例: 192.0.2.44)。EC2 イ
ンスタンス (p. 301) にはいずれも、起動時にプライベート IP アドレス (RFC
1918 準拠) とパブリック IP アドレスの 2 つの IP アドレスが割り当てられ、こ
れらはネットワークアドレス変換 (NAT (p. 313)) によって直接相互に関連付
けられます。VPC (p. 286) 内部で起動されるインスタンスには、プライベー
ト IP アドレスのみが割り当てられます。デフォルトの VPC で起動されるイン
スタンスには、プライベート IP アドレスとパブリック IP アドレスの両方が割
り当てられます。
IP 一致の状態
AWS WAF (p. 292): ウェブリクエストの送信元となる IP アドレスまたは
IP アドレス範囲を指定する属性。指定された IP アドレスに基づいて AWS
WAF を構成して、Amazon CloudFront (p. 283) ディストリビューションなど
の、AWS リソース (p. 320) に対するウェブリクエストを許可またはブロッ
クできます。
ISP
See インターネットサービスプロバイダー.
発行者
リソース (p. 320) に対するアクセス許可についての ポリシー (p. 316) を
作成するユーザー。発行者は当然のこととして、リソースの所有者になりま
す。AWS では、Amazon SQS (p. 286) ユーザーは所有していないリソース
のポリシーを作成できません。たとえば、ジョンが自ら所有するリソースへの
アクセス許可を定義するポリシーを作成して提出した場合、AWS ではジョン
が本人であることが認証されます。
商品
他のすべての項目間で一意に識別可能な属性のグループ。Amazon
DynamoDB (p. 283) の項目は、多くの点で他のリレーショナルデータベース
システムの行、レコード、またはタプルに似ています。
J
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
ジョブフロー
Amazon EMR (p. 284): データに対して実行されるすべての機能を指定する 1
つ以上の ステップ (p. 325)。
ジョブ ID
出荷に含まれている AWS Import/Export (p. 290) ストレージ デバイスを一意
に識別する 5 文字の英数字文字列。AWS は、CREATE JOB E メールコマンド
に対する応答としてジョブ ID を発行します。
ジョブプレフィックス
同じ名前を持つオブジェクトとの競合を防ぐために AWS Import/
Export (p. 290) ログファイル名の先頭に追加できる、オプションの文字列。
See Also キープレフィックス.
JSON
JavaScript Object Notation。軽量のデータ交換形式。JSON について
は、http://www.json.org/ をご覧ください。
迷惑メールフォルダー
各種フィルタによって無益であると判定された E メールメッセージが収
集される場所。これらの E メールは 受取人 (p. 319) の受信箱には振り
分けられませんが、受取人がアクセスすることは可能です。これはスパ
ム (p. 324)フォルダーとも呼ばれます。
API Version 2013-01-01
308
Amazon CloudSearch 開発者ガイド
K USD
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
key
AWS に対して AWS アカウント (p. 282) または user (p. 329) を識別する
資格情報 (AWS シークレットアクセスキー (p. 322) など)。
Amazon Simple Storage Service (Amazon S3) (p. 286)、Amazon EMR
(Amazon EMR) (p. 284): bucket (p. 294) 内のオブジェクトの一意な
識別子。バケット内のすべてのオブジェクトは、厳密に 1 個のキーを持
ちます。バケットとキーの組み合わせによって各オブジェクトが一意に
識別されるため、Amazon S3 はバケット + キーとオブジェクト自体の基
本的なデータマップであると考えることができます。Amazon S3内のす
べてのオブジェクトは、ウェブサービスエンドポイント、バケット名、
およびキーによって場所を一意に指定できます。たとえば、http://
doc.s3.amazonaws.com/2006-03-01/AmazonS3.wsdl では、doc がバ
ケット名、2006-03-01/AmazonS3.wsdl がキーです。
AWS Import/Export (p. 290): Amazon S3 のオブジェクトの名前。これは一
連の Unicode 文字で、その UTF-8 エンコードは 1024 バイト以下である必要
があります。キー (たとえば、<ログプレフィックス> + import-log-<ジョ
ブ ID>) が 1024 バイトを超えていると、AWS Elastic Beanstalk (p. 290) が
InvalidManifestField エラーを返します。
IAM (p. 290): ポリシー (p. 316) の場合、アクセスを制限するための基準で
ある特定の特性 (現在の時刻、リクエスタの IP アドレスなど)。
リソースのタグ付け: より具体的なタグ値のカテゴリのように動作する、一般
的な tag (p. 327) ラベル。たとえば、Owner のタグキーと Jan のタグ値を持
つ EC2 インスタンス (p. 301) があるとします。最大 10 個のキーと値のペア
を使用して、AWS リソース (p. 320) にタグ付けすることができます。すべ
ての AWS リソースにタグを付けられるわけではありません。
キーペア
身元を電子的に証明するために使用する一連の資格情報。キーペアはパブリッ
クキーとプライベートキーで構成されます。
キープレフィックス
bucket (p. 294)内のオブジェクトの論理グループ。プレフィックス値は、バ
ケット内の同じディレクトリに同様のデータを保存するためのディレクトリ名
に似ています。
キビバイト
「キロバイナリバイト」の略。1 キビバイトは 2^10、つまり 1,024 バイトで
す。1 キロバイト (KB) は 10^3、つまり 1,000 バイトです。1,024 KiB はメビ
バイト (p. 311)です。
KMS
See AWS Key Management Service (AWS KMS) .
L
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
ラベル付きデータ
機械学習で、ターゲットまたは「正」の回答がすでに分かっているデータ。
起動設定
Auto Scaling (p. 288) アクティビティで新規 EC2 インスタンス (p. 301) を
作成するために使用される一連の記述的なパラメータ。
API Version 2013-01-01
309
Amazon CloudSearch 開発者ガイド
Auto Scaling グループ (p. 288)が新規 EC2 インスタンスを起動するた
めに使用するテンプレート。起動設定には、Amazon マシンイメージ
(AMI) (p. 285) ID、インスタンスタイプ、キーペア、セキュリティグルー
プ (p. 322)、ブロックデバイスマッピングなどの設定に関する情報が含まれ
ています。
起動許可
ユーザーが AMI を起動できるようにする Amazon マシンイメージ (AMI)
(p. 285) 属性。
ライフサイクル
Auto Scaling グループ (p. 288) に含まれている EC2 インスタンス (p. 301)
のライフサイクル状態。EC2 インスタンスは、その存続期間にわたって、保
留中、使用中、終了予定、終了済みなどのいくつかの状態に変化します。
ライフサイクルアクション
EC2 インスタンスの起動、終了など、Auto Scaling により停止されるアクショ
ン。
ライフサイクルフック
Auto Scaling が EC2 インスタンスを起動または終了した後に Auto Scaling を
停止できるようになります。これにより、インスタンスが稼働していない間に
カスタムアクションを実行できます。
VPC へのリンク
ClassicLink が有効な VPC (p. 330) に EC2-Classic インスタンス (p. 307)
をリンク (またはアタッチ) するプロセスです。
See Also ClassicLink, VPC からのリンクの解除.
ロードバランサー
アプリケーションで処理されるすべてのリクエストの宛先を提供する一
連のポートと組み合わされた DNS 名。ロードバランサーは、リージョ
ン (p. 319)内のすべての アベイラビリティーゾーン (p. 288) にわたる複数
のアプリケーションインスタンスにトラフィックを分散できます。ロードバラ
ンサーは、Amazon EC2 (p. 284) リージョン内の複数の Availability Zone に
配置することができますが、複数のリージョンに配置することはできません。
ローカルセカンダリインデッ
クス
テーブルと同じパーティションキーと、異なるソートキーを持つインデック
ス。ローカルセカンダリインデックスは、ローカルセカンダリインデックスの
すべてのパーティションの範囲が、同じパーティションキー値を持つテーブル
パーティションに限定されるという意味でローカルです。
See Also ローカルセカンダリインデックス.
論理名
リソース (p. 320)、マッピングを (p. 311)、パラメータ、または出力を識
別する AWS CloudFormation (p. 289) テンプレート内の大文字小文字の区別
がある一意の文字列。AWS CloudFormation テンプレートでは、各パラメー
タ、リソース (p. 320)、プロパティ、マッピング、および出力が一意の論理
名で宣言されている必要があります。Ref 関数を使用してこれらの項目の参照
解除を行うときには、論理名を使用します。
M
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
メール転送エージェント
(MTA)
クライアント/サーバーアーキテクチャを使用して 1 台のコンピュータから別
のコンピュータに E メールメッセージを転送するソフトウェア。
メールボックスプロバイダー
E メールメールボックスホスティングサービスを提供する組織。メールボック
スプロバイダーは、メールボックスサービスしか提供していない場合でも、イ
ンターネットサービスプロバイダー (p. 307)と呼ばれることがあります。
API Version 2013-01-01
310
Amazon CloudSearch 開発者ガイド
メールボックスシミュレー
ター
実際の受取人にメッセージを送信することなく Amazon SES (p. 286) ベー
スの E メール送信アプリケーションをテストするために使用できる一連の E
メールアドレス。各 E メールアドレスは、特定のシナリオ (バウンスや苦情な
ど) を表し、シナリオに固有の一般的な応答を生成します。
メインルートテーブル
新しい VPC (p. 330) サブネット (p. 326) がルーティングに使用するデフォ
ルトの ルートテーブル (p. 320)。別の適切なルートテーブルにサブネットを
関連付けることができます。メインルートテーブルを別のルートテーブルに変
更することもできます。
管理ポリシー
IAM アカウント (p. 282) 内の複数のuser (p. 329)、グルー
プ (p. 305)、ロール (p. 320) にアタッチできる、スタンドアロン
IAM (p. 290) ポリシー (p. 316)。管理ポリシーは AWS が管理するポシリー
(AWS が作成して管理) か、顧客が管理するポシリー (ユーザーが自身の AWS
アカウントで作成して管理) のいずれかです。
マニフェスト
インポート操作またはエクスポート操作を行うためにジョブ作成リクエストを
送信するとき、マニフェストと呼ばれるテキストファイルにジョブの説明を入
力します。マニフェストファイルは YAML 形式のファイルで、ストレージデ
バイスと AWS クラウドの間でデータを転送する方法を指定します。
マニフェストファイル
Amazon Machine Learning: バッチ予測を説明するために使用されるファイ
ル。マニフェストファイルは、各入力データファイルを、関係するバッチ予測
の結果に関連付けます。これは Amazon S3 出力場所に格納されます。
マッピングを
AWS CloudFormation (p. 289) テンプレートに条件パラメータ値を追加する
方法。テンプレートの任意指定の [Mappings] セクションでマッピングを指定
し、FN::FindInMap 関数を使用して適切な値を取得します。
マーカー
See ページ分割トークン.
マスターノード
Amazon マシンイメージ (AMI) (p. 285)で実行されている、そのコアノード
とタスクノードが完了した作業を追跡するプロセス。
上限価格
1 つ以上の スポットインスタンス (p. 324) を起動するために、ユーザーが支
払う最大価格。最大価格が現在の スポット価格 (p. 324) を超過して、ユー
ザーの制限を満たす場合、Amazon EC2 (p. 284) はユーザーの代わりにイン
スタンスを起動します。
最大送信レート
Amazon SES (p. 286) を使用して 1 秒間に送信できる E メールメッセージの
最大数。
メビバイト
「メガバイナリバイト」の略。1 メビバイトは 2^20、つまり 1,048,576 バイ
トです。1 メガバイト (MB) は 10^6、つまり 1,000,000 バイトです。1,024
MiB は (p. 305)です。
メンバーリソース
See リソース.
メッセージ ID
Amazon Simple Email Service (Amazon SES) (p. 286): 送信されるすべての
E メールメッセージに割り当てられる一意の識別子。
Amazon Simple Queue Service (Amazon SQS) (p. 286): メッセージを
キューに送信すると返される識別子。
メタデータ
他のデータまたはオブジェクトに関する情報。Amazon Simple Storage
Service (Amazon S3) (p. 286) および Amazon EMR (Amazon EMR)
(p. 284)では、メタデータは、オブジェクトを表す名前と値ペアの形式を採
用します。これには最終更新日などのデフォルトのメタデータや、ContentType などの標準 HTTP メタデータが含まれます。ユーザーは、オブジェクト
を保存するときにカスタムメタデータを指定することもできます。Amazon
Elastic Compute Cloud (Amazon EC2) (p. 284) では、インスタンスが自身
API Version 2013-01-01
311
Amazon CloudSearch 開発者ガイド
に関する情報 (インスタンスタイプ、IP アドレスなど) を特定するために取得
できる EC2 インスタンス (p. 301) に関するデータがメタデータに含まれま
す。
メトリクス
1 個の 名前空間 (p. 312)、1 個のメトリクス名、および 0 ~ 10 個のディメ
ンションの一意の組み合わせによって定義される時系列データのエレメント。
メトリクスとメトリクスから派生した統計は、Amazon CloudWatch (p. 283)
の基盤です。
メトリクス名
名前空間 (p. 312) および任意指定のディメンションと組み合わせて使用され
るメトリクスのプライマリ識別子。
MFA
See 多要素認証 (MFA) .
マイクロインスタンス
高 CPU アクティビティのバーストがたまに発生する環境で使用すると経済的
な EC2 インスタンス (p. 301)のタイプ。
MIME
See 多目的インターネットメール拡張 (MIME) .
ML モデル
機械学習 (ML) で、データにパターンを見出すことで予測を生成する数学モデ
ル。Amazon Machine Learning は、バイナリ分類、複数クラス分類、回帰の 3
つのタイプの ML モデルに対応しています。予測モデルとも呼ばれています。
See Also バイナリ分類のモデル, 複数クラスの分類モデル, 回帰モデル.
MTA
See メール転送エージェント (MTA) .
マルチ AZ 配置
別の アベイラビリティーゾーン (p. 288) に同期スタンバイレプリカがあるプ
ライマリ DB インスタンス (p. 299)。プライマリ DB インスタンスは、同期
的に Availability Zone 間でスタンバイレプリカにレプリケートされます。
複数クラスの分類モデル
制限され、事前定義された、一連の許可される値を予測する機械学習モデルた
とえば、「この製品は書籍、映画、衣類のいずれか?」
多要素認証 (MFA)
任意の AWS アカウント (p. 282) のセキュリティ機能。AWS MFA を有効に
すると、セキュリティで保護された AWS ウェブページまたは AWS マネジメ
ントコンソール (p. 290) にアクセスするたびに、サインインの認証情報に加
え 6 桁のワンタイムコードを入力する必要があります。物理的所有物の中に保
存されている認証デバイスから、このワンタイムコードを取得します。
See Also https://aws.amazon.com/mfa/.
複数の値を持つ属性
複数の値を持つ属性
マルチパートアップロード
単一のオブジェクトを一連のパートとしてアップロードすることができる機
能。
多目的インターネットメール
拡張 (MIME)
ASCII 以外のテキストおよびテキストではないエレメント (添付ファイルなど)
を含めるために E メールプロトコルの拡張するインターネット標準。
Multitool
大規模なデータセットを管理するためのシンプルなコマンドラインインター
フェイスを提供するカスケードアプリケーション。
N
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
名前空間
保持する項目 (名前、技術用語、または単語) のコンテキストを提供し、複数
の異なる名前空間に存在する同音異義語項目のあいまい性解消を可能にする抽
象的なコンテナ。
API Version 2013-01-01
312
Amazon CloudSearch 開発者ガイド
NAT
ネットワークアドレス変換。データパケットがトラフィックルーティングデバ
イス全体に伝送される間に 1 つ以上の IP アドレスを他方にマッピングする戦
略。これは、送信トラフィックを許可した状態でインターネット通信をプライ
ベートインスタンスに制限するために、よく使用されています。
See Also ネットワークアドレス変換とプロトコル変換, NAT ゲートウェイ,
NAT インスタンス.
NAT ゲートウェイ
AWS に管理されている NAT (p. 313) デバイス。インターネットのインバウ
ンドトラフィックを保護するため、非公開 サブネット (p. 326) でネットワー
クアドレス変換を実行します。NAT のゲートウェイは NAT およびポートアド
レス変換の両方を使用します。
See Also NAT インスタンス.
NAT インスタンス
ユーザーが設定した NAT (p. 313) デバイス。インターネットのインバウン
ドトラフィックを保護するため、VPC (p. 330)公開サブネット (p. 326) で
ネットワークアドレス変換を実行します。
See Also NAT ゲートウェイ.
ネットワーク ACL
サブネット (p. 326) のインバウンドトラフィックとアウトバウンドトラ
フィックを制御するためのファイアウォールとして機能する任意指定のセキュ
リティレイヤー。複数のサブネットを 1 つのネットワーク ACL (p. 281) に関
連付けることはできますが、1 つのサブネットを複数のネットワーク ACL に
関連付けることはできません。
ネットワークアドレス変換と
プロトコル変換
(NAT (p. 313)-PT) RFC 2766 で定義された、インターネットプロトコルの標
準。
See Also NAT インスタンス, NAT ゲートウェイ.
nグラムプロセッサ
nグラムの変換を実行するプロセス。
See Also nグラム変換.
nグラム変換
Amazon Machine Learning: テキスト文字列解析を支援する変換。n 単語サイ
ズのウィンドウをスライドすることで、nグラム変換は入力および出力の形式
にテキスト変数を使用します。n はテキスト上でユーザーにより指定され、n
とすべての小さいサイズの単語の各文字列を出力します。たとえば、Windows
のサイズ=2のnグラム変換を指定した場合、2 単語のすべての組み合わせと、1
つの単語すべてを返します。
ノード
Amazon Elasticsearch Service (Amazon ES) (p. 284): Elasticsearch インスタ
ンス。ノードは、データインスタンスまたは専用マスターインスタンスのどち
らかにすることができます。
See Also 専用マスターノード.
NoEcho
テンプレートパラメータの名前と値がデフォルトでレポートされることを
防ぐための、AWS CloudFormation (p. 289) パラメータのプロパティで
す。NoEcho プロパティを宣言すると、レポート内のパラメータ値はcfndescribe-stacks コマンドによってアスタリスクにマスクされる結果となり
ます。
NoSQL
可用性が高く、スケーラブルで、高パフォーマンス用に最適化された、
非リレーショナルデータベースシステム。NoSQL データベース (Amazon
DynamoDB (p. 283) など) は、リレーショナルモデルの代わりに、キーと値
のペアやドキュメントストレージなど、データ管理のための代替モデルを使用
します。
null オブジェクト
バージョン ID が null の、null オブジェクトです。バケットの バージョニン
グ (p. 329) が停止されると、Amazon S3 (p. 286) は bucket (p. 294) に
null オブジェクトを追加します。バケット内の各キーには null オブジェクトを
1 つだけ設定できます。
API Version 2013-01-01
313
Amazon CloudSearch 開発者ガイド
合格の数
Amazon Machine Learning が機械学習モデルをトレーニングするために、同じ
データレコードの使用を許可された回数。
O
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
オブジェクト
Amazon Simple Storage Service (Amazon S3) (p. 286): Amazon S3 に格納
される基本的なエンティティの種類。オブジェクトは、オブジェクトデータと
メタデータで構成されます。データ部分を Amazon S3 から見ることはできま
せん。
Amazon CloudFront (p. 283) は、HTTP または RTMP の 1 つのバージョンを
介してサービスが可能なすべてのエンティティです。
監視
Amazon Machine Learning: 予測する方法や、予測を生成する方法を機械学習
モデルをトレーニングするために、Amazon Machine Learning (Amazon ML)
が使用するデータの単一インスタンス。Amazon ML 入力データファイル内の
各行が監視です。
オンデマンドインスタンス x
Amazon EC2 (p. 284) 価格オプションは、コンピューティング容量を時間単
位で請求し、長期契約は不要です。
オペレーション
API 関数。アクションとも呼ばれます。
オプティミスティックロック
更新を実行する前に、更新する項目が他のユーザーにより変更されていないこ
とを確認する方法。Amazon DynamoDB (p. 283) では、オプティミスティッ
クロックサポートは、AWS SDK が提供します。
オリジンアクセスアイデン
ティティ
OAI とも呼ばれます。Amazon CloudFront (p. 283) を使用して Amazon
S3 (p. 286) bucket (p. 294) をオリジンとしてコンテンツを供給する場合、
ユーザーが Amazon S3 URL ではなく CloudFront URL を介してコンテンツに
アクセスする際に必要となる仮想 ID。一般的に、CloudFront プライベートコ
ンテンツ と使用します。
オリジンサーバー
CloudFront (p. 283) を介して配信するコンテンツの最終的なオリジナルバー
ジョンを含む、Amazon S3 (p. 286) bucket (p. 294) またはカスタムオリジ
ンです。
OSB 変換
直角のスパースなバイグラム変換。機械学習で、テキスト文字列分析で支援す
る変換。また、nグラム変換の代替にもなります。OSB 変換は、テキスト上で
n 単語サイズのウィンドウをずらし、ウィンドウの最初の単語を含む、各単語
ペアを出力することにより生成されます。
See Also nグラム変換.
出力場所
Amazon Machine Learning: バッチ予測が保管される Amazon S3 の場所。
P
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
ページ分割
小さく分けられた部分に、大きなレコードリストを返すことで、API リクエス
トに応答するプロセス。ページ分割は次の場合に発生する可能性があります。
API Version 2013-01-01
314
Amazon CloudSearch 開発者ガイド
• クライアントが、返されたレコードの最大数を、レコードの合計数を下回る
値に設定した場合。
• サービスに、返されたレコードの最大数がデフォルトで決められており、最
大数がレコードの合計数を下回る場合。
API 応答がページ分割される場合、サービスはレコードの大きなリストのサブ
セットと、より多くのレコードが利用できることを示すページ分割トークンを
送信します。クライアントはこのページ分割トークンを後続の API リクエスト
含め、サービスはレコードの次のサブセットを使用して応答します。これは、
サービスがレコードのサブセットを含むがページ分割トークンを含まずに、す
べてのレコードが送信されたことを示すよう応答するまで継続されます。
ページ分割トークン
API 応答にレコードの大きなリストが含まれていることを示すマーカー。サー
ビスがレコードのサブセットを含むがページ分割トークンを含まずに、すべて
のレコードが送信された旨を示すよう応答するまで、クライアントは後続の
API リクエストにこのマーカーを返し、レコードの次のサブセットを取得しま
す。
See Also ページ分割.
ペイド AMI
開発者が AWS Marketplace (p. 291) で他の Amazon EC2 (p. 284) ユーザー
に販売する Amazon マシンイメージ (AMI) (p. 285)。
準仮想化
See PV 仮想化.
パート
マルチパートアップロードのリクエストでの、オブジェクトのデータの連続す
る部分。
パーティションキー
1 つの属性で構成される、簡潔なプライマリキー (別名ハッシュ属性)。
See Also パーティションキー, ソートキー.
PAT
ポートアドレスの変換です。
ペビバイト
「ペタバイナリバイト」の略。1 ペビバイトは 2^50、つまり
1,125,899,906,842,624 バイトです。1 ペタバイト (PB) は 10^15、つまり
1,000,000,000,000,000 バイトです。1,024 PiB はエクスビバイト (p. 303)で
す。
期間
See サンプリング期間.
アクセス権限
特定の リソース (p. 320) へのアクセスを許可または拒否する ポリ
シー (p. 316) 内のステートメント。「A は、C に対して B を実行するアクセ
ス許可がある」などのあらゆるアクセス許可を宣言できます。たとえば、Jane
(A) は、John の Amazon SQS (p. 286); キュー (C) からメッセージを読み取
る (B) 権限があるとします。Jane が John のキューを使用するために Amazon
SQS にリクエストを送った時点で、Jane にアクセス許可があるかどうか、ま
たそのリクエストが John によってアクセス許可に定められた条件を満たして
いるかどうかが、サービスによってチェックされます。
永続的ストレージ
削除するまでデータがそのまま残る、データストレージ ソリュー
ション。Amazon S3 (p. 286)、Amazon RDS (p. 286)、Amazon
DynamoDB (p. 283) などの、AWS (p. 286) 内のオプション。
物理名
スタック (p. 325) 作成時に AWS CloudFormation (p. 289) が各 リ
ソース (p. 320) に割り当てたユニークなラベルです。一部の AWS
CloudFormation コマンドは、--physical-name パラメータを使用して物理
名を値として受け取ります。
パイプライン
AWS CodePipeline (p. 289): リリースプロセスを通したソフトウェアの変更
を定義するワークフローの構造。
API Version 2013-01-01
315
Amazon CloudSearch 開発者ガイド
プレーンテキストが使用され
ます
暗号化テキスト (p. 295) とは逆に、暗号化 (p. 302)されていない情報。
ポリシー
IAM (p. 290): ユーザー、グループ、またはロールに適用されるアクセス
許可を定義するドキュメント。アクセス許可は、ユーザーが AWS ででき
ることを決定します。ポリシーは通常、特定のアクションへのアクセスを
許可 (p. 282) し、オプションで、それらのアクションを EC2 インスタン
ス (p. 301) や Amazon S3 (p. 286) bucket (p. 294) などの特定の リソー
ス (p. 320) で実行することを許可することができます。また、ポリシーによ
り、アクセスを明示的に拒否 (p. 300)することもできます。
Auto Scaling (p. 288): Auto Scaling グループのインスタンスの起動と終了
に必要な情報を格納するオブジェクト。ポリシーを実行すると、インスタン
スが起動または終了します。Auto Scaling ポリシーを実行するために アラー
ム (p. 282) を設定できます。
Policy Generator
IAM (p. 290) AWS マネジメントコンソール (p. 290) 内のツールで、ユー
ザーが、利用可能なオプションの一覧から要素を選択して ポリシー (p. 316)
をビルドする際に役立ちます。
ポリシーシミュレータ
IAM (p. 290) AWS マネジメントコンソール (p. 290) 内のツールで、実際の
シナリオでのポリシー (p. 316)の効果を把握するために、ポリシーをテスト
し、トラブルシューティングするのに役立ちます。
Policy Validator
IAM (p. 290) AWS マネジメントコンソール (p. 290) のツールで、既存の
IAM アクセスコントロールポリシー (p. 316)を調べて、IAM ポリシーの文法
に準拠していることを確認します。
署名済み URL
クエリ文字列認証 (p. 318) を使用するウェブネットワークアドレス。
プレフィックス
See ジョブプレフィックス.
Premium Support
AWS インフラストラクチャサービスのサポートのために AWS のお客様がサ
ブスクライブ可能な、1 対 1 の迅速な対応のサポートチャネルです。
See Also https://aws.amazon.com/premiumsupport/.
プライマリキー
同じキーを持った 2 つの項目がないようにするため、Amazon
DynamoDB (p. 283) テーブルの各項目を一意に識別する 1 つまたは 2 つの属
性。
See Also パーティションキー, ソートキー.
プライマリシャード
See Also シャード.
プリンシパル
ポリシー (p. 316) で定義されたアクセス許可を受け取る user (p. 329)、
サービス、または アカウント (p. 282)。「A は、C に対して B を実行するア
クセス許可がある」というステートメントの場合、A がプリンシパルに相当し
ます。
プライベートコンテンツ
Amazon CloudFront (p. 283) を使用して Amazon S3 (p. 286)
bucket (p. 294) をオリジンとしてコンテンツを供給する場合、ユーザーに署
名済み URL の使用を要求することで、コンテンツへのアクセスを管理する方
法。署名付き URL は、現在の日時やリクエストの送信元である IP アドレスを
基に、ユーザーのアクセスを制限できます。
プライベート IP アドレス
インターネットプロトコル (IP) を使用して相互に通信するために使用
する、ネットワークに接続されたデバイスの非公開の数値アドレス (例:
192.0.2.44)。EC2 インスタンス (p. 301) にはいずれも、起動時にプライベー
トアドレス (RFC 1918 準拠) とパブリックアドレスの 2 つの IP アドレスが割
り当てられ、これらはネットワークアドレス変換 (NAT (p. 313)) によって直
接相互に関連付けられます。例外: Amazon VPC (p. 286) 内部で起動するイ
ンスタンスには、プライベート IP アドレスのみが割り当てられます。
API Version 2013-01-01
316
Amazon CloudSearch 開発者ガイド
プライベートサブネット
VPC (p. 330) サブネット (p. 326) の一種であり、そのインスタンスにはイ
ンターネットからアクセスできないもの。
製品コード
AWS Marketplace (p. 291) に製品を送信するときに AWS によって指定され
る ID。
プロパティ
See リソースプロパティ.
プロパティのルール
AWS CloudFormation (p. 289) テンプレートによる、プロパティ、マッピン
グ、出力値を宣言する、JSON (p. 308) に適合したマークアップ標準です。
プロビジョンド IOPS
高速、予測可能、整合性のある I/O パフォーマンスを実現するように設計され
たストレージオプションです。DB インスタンスの作成時に IOPS レートを指
定すると、DB インスタンスが有効な間、Amazon RDS (p. 286) はその IOPS
レートをプロビジョニングします。
擬似パラメータ
事前に定義されており、宣言しなくても AWS CloudFormation (p. 289) テン
プレートで利用できる設定。これには、AWS:StackName などがあります。擬
似パラメータは、通常のパラメータを使用できる場所であればどこででも使用
可能です。
パブリック AMI
あらゆる AWS アカウント (p. 282) が起動できる Amazon マシンイメージ
(AMI) (p. 285)。
パブリックデータセット
AWS クラウドベースアプリケーションにシームレスに統合できる、大量のパ
ブリック情報の集合。Amazon では、コミュニティには無料でパブリックデー
タセットを保管しています。ユーザーには、あらゆる AWS サービスと同じ
く、自らのアプリケーションで使用したコンピューティングとストレージに
ついてのみ支払いが発生します。このデータセットに収録されているデータの
ソースは、現時点では Human Genome Project、米国国勢調査、Wikipedia な
どがあります。
See Also https://aws.amazon.com/publicdatasets.
パブリック IP アドレス
インターネットプロトコル (IP) を使用して相互に通信するために使用
する、ネットワークに接続されたデバイスの公開の数値アドレス (例:
192.0.2.44)。EC2 インスタンス (p. 301) にはいずれも、起動時にプライベー
トアドレス (RFC 1918 準拠) とパブリックアドレスの 2 つの IP アドレスが割
り当てられ、これらはネットワークアドレス変換 (NAT (p. 313)) によって直
接相互に関連付けられます。例外: Amazon VPC (p. 286) 内部で起動するイ
ンスタンスには、プライベート IP アドレスのみが割り当てられます。
パブリックサブネット
サブネット (p. 326) の一種であり、そのインスタンスにインターネットから
アクセスできるもの。
PV 仮想化
準仮想化。完全なハードウェアおよび CPU 仮想化を実現する特別なサポート
拡張機能のないホストシステムでゲスト VM を実行することができます。PV
ゲストは、ハードウェアエミュレーションを使用しない変更されたオペレー
ティングシステムを実行するため、ネットワーク機能の強化や GPU サポート
などのハードウェア関連の機能は実現できません。
See Also HVM 仮想化.
Q
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
四分位ビニング変換
Amazon Machine Learning: 2 つの入力、数値の変数、2 進数を呼び出したパ
ラメータを使用して、カテゴリ変数を出力するプロセス。四分位ビニング変換
API Version 2013-01-01
317
Amazon CloudSearch 開発者ガイド
は、機械学習モデルを有効にして、変数のディストリビューション内の非直線
性を検出し、数値の変数分布の部分の重要性値を別に学習します。
Query
HTTP ベースのリクエストインターフェイスの一種。一般に、HTTP メソッド
の GET または POST と、パラメータを設定したクエリ文字列のみを使用しま
す。
See Also REST, REST クエリ.
クエリ文字列認証
AWS の機能の 1 つ。Authorization ヘッダーに代わって HTTP リクエスト
のクエリ文字列に認証情報を配置します。これにより、bucket (p. 294) 内の
オブジェクトへの URL ベースのアクセスが可能になります。
キュー
一時ストレージに保管され、送信または処理を待機している一連のメッセージ
またはジョブ。
キュー URL
キューを一意に識別するウェブアドレス。
quota
Amazon RDS (p. 286): 利用可能な DB インスタンス (p. 299) およびスト
レージの最大数。
Amazon ElastiCache (p. 284): 以下の項目の最大数。
• 各 AWS アカウント (p. 282) のキャッシュクラスターの数
• キャッシュクラスター 1 つあたりのキャッシュノードの数
• 1 つの AWS アカウントで作成された全キャッシュクラスターのキャッシュ
ノードの総数
R
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
レンジ GET
ダウンロード 1 回で取得するデータのバイト範囲を指定するリクエスト。オ
ブジェクトが大きい場合、取得するバイト範囲をそれぞれ別に指定したレンジ
GET リクエストを複数送信することによって、ダウンロードを小さい単位に
分割することができます。
raw Eメール
E メールのヘッダーや MIME の種類を指定できるタイプの sendmail リクエス
ト。
RDS
See Amazon Relational Database Service (Amazon RDS) .
リードレプリカ
Amazon RDS (p. 286): 他の DB インスタンスの実行中のコピー。ソース DB
インスタンスのデータに更新があると、MySQL 5.1 に内蔵されているレプリ
ケーション機能を使用してリードレプリカの DB インスタンスにレプリケート
されます。
リアルタイム予測
Amazon Machine Learning: 個々のデータ監視に対し、同期的に生成された予
測。
See Also バッチ予測.
受信ハンドル
Amazon SQS (p. 286): キューからメッセージを受信するときに取得する識別
子。この識別子は、キューからメッセージを削除する際や、メッセージの可視
性タイムアウトを変更する際に必要になります。
レシーバー
受取人 (p. 319) に対する E メール配信を管理するネットワークシステム、ソ
フトウェア、およびポリシーから成るエンティティ。
API Version 2013-01-01
318
Amazon CloudSearch 開発者ガイド
受取人
Amazon Simple Email Service (Amazon SES) (p. 286): E メールメッセージ
を受信する個人または団体。たとえば、メッセージの [宛先] フィールドに名前
がある人物が考えられます。
リファレンス
ある AWS リソース (p. 320) のプロパティをリソースに挿入する方法。たと
えば、Amazon EC2 (p. 284) セキュリティグループ (p. 322) のプロパティ
を Amazon RDS (p. 286) リソースに挿入できます。
リージョン
同じ地域にある AWS リソース (p. 320) のうち、指定されたもの。リージョ
ンは最小 2 個の アベイラビリティーゾーン (p. 288) で構成されます。
回帰モデル
Amazon Machine Learning: 機械学習モデルのパフォーマンスを細かく設定す
る一般的なデータ変換のために、事前にフォーマットされた指示。
回帰モデル
家の正確な購入金額など、数値を予測する機械学習モデルのタイプ。
正規化
高品質な機械学習 (ML) モデルを得るために調整できる、ML パラメータ。正
規化することで、ML モデルが、目にしたパターンを一般化する方法を学習す
る (別名 overfitting) 代わりにに、トレーニングデータの例を記憶しないように
できます。トレーニングデータがオーバーフィッティングされると、ML モデ
ルはトレーニングデータはうまく実行しますが、評価データや新規のデータは
うまく実行できません。
レプリカシャード
See Also シャード.
返信パス
返信 E メールが送られる E メールアドレス。リターンパス (p. 320) とは異
なります。
評価
1. Amazon SES (p. 286) のメトリクスの 1 つ。バウンス (p. 294)、苦
情 (p. 296) などのメトリクス要素に基づき、お客様が質の高いメールを送信
しているかどうかを判定します。
2. インターネットサービスプロバイダー (p. 307) などの主体が、受信してい
る E メールの送信元の IP アドレスが スパム (p. 324) の発信元でないかどう
かを判定する測定指標。
リクエスタ
特定のアクションを実行するために AWS にリクエストを送信するユーザー
(またはアプリケーション)。AWS は、リクエストを受け取ると、まずリクエ
スタのアクセス許可を評価し、リクエスタがリクエストアクションを (該当す
る場合、リクエスト対象の リソース (p. 320) に対して) 実行できるかどうか
を確認します。
リクエスタ支払い
Amazon S3 (p. 286) の機能の 1 つ。バケット所有者 (p. 294) は、この機能
を使えば、特定の bucket (p. 294) にあるオブジェクトへのアクセスをリクエ
ストしたユーザー全員に対して、データ転送およびリクエストの費用の支払い
を求めることができます。
リザベーション
同じ起動リクエストで起動される EC2 インスタンス (p. 301) の集合。リ
ザーブドインスタンス (p. 319) と混同しないようにご注意ください。
リザーブドインスタンス
特別なパラメータを満たすインスタンスのオンデマンド (p. 314)使用料を割
引する、EC2 インスタンス (p. 301) の料金オプション。顧客は、インスタン
スの使用方法にかかわらず、インスタンスの期間全体を通じて支払います。
リザーブドインスタンスマー
ケットプレイス
予約済みの容量で不要になった部分を売りたい人物と、追加の容量の購入を希
望する人物とが、互いに相手を見つけることができる、オンライン交換。サー
ドパーティの販売者から購入する リザーブドインスタンス (p. 319) は、残り
の期間が標準期間より短いため、異なる前払い料金で販売されることがありま
す。使用料金または定期的に支払う料金は、リザーブドインスタンスを最初に
購入したときに設定された料金と同じ金額です。AWS から購入できるリザー
ブドインスタンスの完全な標準期間は、1 年間または 3 年間です。
API Version 2013-01-01
319
Amazon CloudSearch 開発者ガイド
リソース
ユーザーが AWS で使用できる EC2 インスタンス (p. 301)、Amazon
DynamoDB (p. 283) テーブル、Amazon S3 (p. 286)
bucket (p. 294)、IAM (p. 290) ユーザー、AWS OpsWorks (p. 291) スタッ
ク (p. 325) などのエンティティ。
リソースプロパティ
AWS CloudFormation (p. 289) スタック (p. 325) に AWS リソー
ス (p. 320) を入れるときに必要になる値。各リソースには、プロパティが関
連付けられていることがあります。たとえば、AWS::EC2::Instance リソー
スには UserData プロパティがあります。AWS CloudFormation テンプレート
では、リソースにプロパティがない場合であっても、リソースでプロパティセ
クションの宣言が必要です。
リソースレコード
リソースレコードセットともいいます。ドメインネームシステム (DNS) 内の
基本的な情報要素。
See Also Wikipedia のドメインネームシステム.
REST
HTTP ベースのリクエストインターフェイスの一種。一般に、HTTP メソッド
の GET または POST と、パラメータを設定したクエリ文字列のみを使用しま
す。Query (p. 318) と呼ばれることもあります。REST インターフェイスの
実装によっては、GET および POST 以外の HTTP 動詞を使用することもあり
ます。
REST クエリ
Query (p. 318) または HTTP クエリともいいます。HTTP リクエストの一
種であり、一般に HTTP メソッドの GET または POST と、パラメータを設
定したクエリ文字列のみを使用します。REST (p. 320) と比べてみてくだ
さい。REST は、 (GET、DELETE、POST などの) あらゆる HTTP メソッ
ド、リソース (p. 320)、HTTP ヘッダーに加えて、場合によりパラメータを
設定したクエリ文字列を使用する HTTP リクエストです。
値を返す
Amazon CloudSearch (p. 283): のインデックスフィールドのオプションの一
種。フィールドの値が検索結果で返されるようになります。
リターンパス
バウンスとなったメールが返されるメールアドレス。このパスは、元の E
メールのヘッダーで指定します。返信パス (p. 319) とは異なります。
revision
AWS CodePipeline (p. 289): ソースアクション内で構成されている、ソー
スに加えられた変更。GitHub リポジトリにプッシュされたコミットや、バー
ジョニングされた Amazon S3 (p. 286) bucket (p. 294) のファイルに対する
更新など。
ロール
AWS アカウント (p. 282) の AWS リソース (p. 320) への一時アクセスを付
与するツール。
ロールバック
AWS CloudFormation (p. 289) スタック (p. 325) などのオブジェクトを作
成できなかった場合に、以前の状態に戻すこと。失敗に終わった処理に関連
付けられている リソース (p. 320) はすべて、ロールバック時に削除されま
す。AWS CloudFormation では、コマンドラインで --disable-rollback オ
プションを使用することによってこの処理をオーバーライドできます。
ルート認証情報
AWS アカウント (p. 282) 所有者に関連付けられる認証情報。
ルートデバイスボリューム
インスタンス (p. 307) の起動に使用されるイメージが格納されている ボ
リューム (p. 330)。インスタンスストア (p. 307) をルートデバイスとする
AMI (p. 285) からインスタンスを起動した場合には、Amazon S3 (p. 286)
に格納されているテンプレートから作成されるインスタンスストア ボリュー
ム (p. 330) がこれに該当します。Amazon EBS (p. 283) をルートデバイ
スとする AMI からインスタンスを起動した場合には、Amazon EBS スナップ
ショットから作成される Amazon EBS ボリュームがこれに該当します。
ルートテーブル
関連付けられている サブネット (p. 326) からのトラフィックを制御するため
のルーティング規則。ルートテーブルにはサブネットをいくつも関連付けるこ
API Version 2013-01-01
320
Amazon CloudSearch 開発者ガイド
とができるものの、1 つのサブネットは 1 度に 1 つのルートテーブルにしか関
連付けることができません。
行識別子
行 ID。Amazon Machine Learning: 監視と予測の関連付けを簡単にするために
出力される、評価または予測に含めることができる入力データの属性。
ルール
AWS WAF (p. 292): Amazon CloudFront (p. 283) ディストリビューション
など、AWS リソース (p. 320) にウェブリクエストで AWS WAF が検索する
一連の条件。ウェブ ACL (p. 330) にルールを追加し、各ルールに基づいて
ウェブリクエストを許可するかブロックするかを指定します。
S
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
S3
See Amazon Simple Storage Service (Amazon S3) .
サンプリング期間
Amazon CloudWatch (p. 283) が 統計 (p. 325) を計算する期間として定め
た時間 (1 分間など)。
サンドボックス
本稼働環境に影響を与えることなくアプリケーションの機能をテストすること
ができる場所。無料で利用でき、商品を購入する必要もありません。
Amazon SES (p. 286): 開発者がサービスをテストおよび評価できるように
設計された環境。サンドボックスでは、Amazon SES API のすべてにアクセ
スが可能ですが、メッセージの送信先に指定できるのは、検証済みの E メー
ルアドレスとメールボックスシミュレーターのみとなります。サンドボックス
を終了するには、本稼働環境へのアクセスを申請する必要があります。サンド
ボックスのアカウントは、送信制限 (p. 322) が本稼働アカウントよりも少な
くなっています。
スケールイン
EC2 インスタンスを Auto Scaling グループ (p. 288) から削除します。
スケールアウト
EC2 インスタンスを Auto Scaling グループ (p. 288) に追加します。
スケーリングポリシー
需要の増減に応じて、Auto Scaling が自動的に Auto Scaling グルー
プ (p. 288) を拡張する方法の説明。
規模の拡大や縮小
インスタンスを起動または終了することによって、Auto Scaling グルー
プ (p. 288) のサイズ、設定、または構成を変更するプロセス。
スケジューラー
task (p. 327) を コンテナインスタンス (p. 297) に配置するために使われる
方法。
schema
Amazon Machine Learning: 機械学習モデルが入力データを解釈するために必
要な情報。属性の名前と割り当てられたデータタイプ、特殊な属性などがあり
ます。
スコアの切り捨て値
Amazon Machine Learning: バイナリ分類モデルは、0 から 1 の範囲のスコア
を出力します。監視が 1 または 0 のどちらに分類されるかを決定するには、
分類しきい値を選択するか切り捨てて、Amazon ML はそのしきい値に対して
スコアを比較します。切り捨てよりもスコアを持つ監視は 1 に等しいターゲッ
トとして予測されます。切り捨て値より低いスコアを持つ監視は 0 に等しい
ターゲットとして予測されます。
検索 API
Amazon CloudSearch (p. 283): 検索ドメイン (p. 322)に検索リクエストを
送信するときに使用する API。
API Version 2013-01-01
321
Amazon CloudSearch 開発者ガイド
検索ドメイン
Amazon CloudSearch (p. 283): 検索リクエストを処理する検索インスタンス
と検索可能データをカプセル化したもの。通常は、検索するデータの集合それ
ぞれに対して、別個の Amazon CloudSearch ドメインを設定します。
検索ドメイン設定
Amazon CloudSearch (p. 283): ドメインのインデックス作成オプション、分
析スキーム (p. 287)、expression (p. 304)、サジェスタ (p. 326)、アクセ
スポリシー、スケーリング、用性オプション。
検索を有効にする
Amazon CloudSearch (p. 283): のインデックスフィールドのオプションの一
種。フィールドのデータを検索対象にすることができます。
検索エンドポイント
Amazon CloudSearch (p. 283): 検索ドメインに検索リクエストを送信すると
きに接続する URL。各 Amazon CloudSearch ドメインには固有の検索エンド
ポイントがあり、ドメインの存続期間中にこれが変更されることはありませ
ん。
検索インデックス
Amazon CloudSearch (p. 283): データの取得の速度と精度を向上するために
検索可能データを一定の形式で表現したもの。
検索インスタンス
Amazon CloudSearch (p. 283): データにインデックスを付け、検索リク
エストを処理するためのコンピューティング リソース (p. 320)。Amazon
CloudSearch ドメインには検索インスタンスが 1 つ以上あり、それぞれに一定
量の RAM および CPU リソースが割り当てられています。データ量が増える
につれて、インデックスが付いたデータを格納するために配置する検索インス
タンスの数とサイズが大きくなっていきます。インデックスは、必要に応じて
複数のインスタンス間で自動的にパーティション分割されます。リクエストの
ボリュームや複雑さが増えると、処理能力の追加のため、各検索パーティショ
ンが自動的にレプリケートされます。
検索リクエスト
Amazon CloudSearch (p. 283): Amazon CloudSearch の検索エンドポイント
に送信されるリクエストの一種。インデックスから特定の検索条件に合致する
文書を取得します。
検索結果
Amazon CloudSearch (p. 283): 検索リクエストに合致する文書。検索ヒッ
トとも呼ばれます。
シークレットアクセスキー
プログラムによる AWS リクエストへの暗号を使用した署名に、アクセスキー
ID (p. 281) とともに使用されるキー。リクエストに署名することで支払人を
特定し、リクエストが変更されるのを防ぎます。AWS アカウント (p. 282)、
個々の IAM user (p. 329)、一時セッションのシークレットアクセスキーを生
成できます。
セキュリティグループ
あるインスタンスに対して許可されている受信方向のネットワーク接続
(Amazon VPC (p. 286) のセキュリティグループにはほかにも、送信方向の
接続のサポートが含まれます)。各セキュリティグループはプロトコル、ポー
ト、および IP アドレスの範囲を示した一覧で構成されます。セキュリティグ
ループは複数のインスタンスに適用できます。また、1 つのインスタンスを複
数のグループによる規制の対象にすることもできます。
支払人
E メールでメッセージを送信する個人または団体。
送信者 ID
Microsoft 社が管理するバージョンの SPF (p. 324)。E メールの認証となりす
ましの防止の機能を備えたシステム。送信者 ID について詳しくは、Wikipedia
の送信者 ID を参照してください。
送信制限
各 Amazon SES (p. 286) アカウントに関連付けられている 送信クォー
タ (p. 322) および 最大送信レート (p. 311)。
送信クォータ
24 時間に Amazon SES (p. 286) を使って送信できる E メールメッセージの
最大数。
API Version 2013-01-01
322
Amazon CloudSearch 開発者ガイド
サーバー側の暗号化 (SSE)
データのサーバーレベルの暗号化 (p. 302)。Amazon S3 (p. 286) はサー
バー側の 3 つのタイプの暗号化をサポートします。Amazon S3 がキーを管理
する SSE-S3、顧客がキーを管理する SSE-C、AWS Key Management Service
(AWS KMS) (p. 290) がキーを管理する SSE-KMS があります。
service
See Amazon ECS サービス.
サービスエンドポイント
See エンドポイント.
サービス状態ダッシュボード
AWS のサービスの可用性に関する最新情報を表示するウェブページ。ダッ
シュボードは http://status.aws.amazon.com/ にあります。
サービスロール
AWS リソース (p. 320) にアクセスできるよう、AWS サービスにアクセス許
可を付与する IAM (p. 290) ロール (p. 320)。サービスロールにアタッチす
るポリシーによって、どの AWS リソースにアクセスできるかと、リソースに
対してできることが決まります。
SES
See Amazon Simple Email Service (Amazon SES) .
session
AWS Security Token Service (AWS STS) (p. 292) が提供する一時的なセ
キュリティ認証情報が ユーザーの AWS アカウントへのアクセスを許可する期
間。
SHA
Secure Hash Algorithm の略。SHA1 はこのアルゴリズムの以前のバージョン
であり、AWS では現在使用していません。現在は、SHA256 を使用していま
す。
シャード
Amazon Elasticsearch Service (Amazon ES) (p. 284): インデックスのデー
タのパーティション。インデックスを複数のシャードに分割できます。この
シャードには、プライマリシャード (元のシャード) とレプリカシャード (プラ
イマリシャードの複製) を含むことができます。レプリカシャードはフェイル
オーバーを提供します。つまり、クラスタノードにプライマリシャードフェイ
ルが含まれる場合、レプリカシャードはプライマリシャードに昇格します。レ
プリカシャードは、リクエストを処理することもできます。
共有 AMI
ある開発者が別の開発者も使用できるように構築し、公開している Amazon
マシンイメージ (AMI) (p. 285)。
シャットダウンアクション
Amazon EMR (p. 284): ジョブフローを終了する前に一連のコマンドを並行
して実行するスクリプトを起動する、事前定義されたブートストラップアク
ション。
署名
デジタル署名のこと。デジタルメッセージの正統性を確認するための数学的な
手段です。AWS では、ウェブサービスに送信するリクエストを認証するため
に署名を使用します。詳細は、https://aws.amazon.com/security を参照してく
ださい。
SIGNATURE ファイル
AWS Import/Export (p. 290): ストレージ デバイスのルートディレクトリにコ
ピーするファイル。このファイルにはジョブ ID、マニフェストファイル、お
よび署名が含まれています。
署名バージョン 4
インバウンド API がすべての AWS リージョンの AWS サービスにリクエスト
できるよう、認証するプロトコル。
Simple Mail Transfer Protocol
See SMTP.
Simple Storage Service
See Amazon Simple Storage Service (Amazon S3) .
Single-AZ DB インスタンス
1 つの アベイラビリティーゾーン (p. 288) にデプロイされている標準 (マル
チ AZ ではない) DB インスタンス (p. 299)。別のアベイラビリティーゾーン
にスタンバイレプリカはありません。
API Version 2013-01-01
323
Amazon CloudSearch 開発者ガイド
See Also マルチ AZ 配置.
あいまいフレーズ検索
ある用語が別の用語と一致すると判定されるためには互いにどの程度似ていな
ければならないかを指定して実行する検索。
SMTP
Simple Mail Transfer Protocol の略。インターネットホスト間のメールメッ
セージのやり取りで、ルーティングと配信を目的として使用されている規格で
す。
スナップショット
Amazon Elastic Block Store (Amazon EBS) (p. 283): Amazon S3 (p. 286)
に格納する ボリューム (p. 330) のバックアップ。このスナップショットは、
新しい Amazon EBS ボリュームの開始点として使用できるほか、データを長
期保存のために保護するのにも利用できます。
See Also DB スナップショット.
SNS
See Amazon Simple Notification Service (Amazon SNS) .
Snowball
データを転送するようにAmazonが所有する雪玉アプライアンスを使用する
AWS Import/Export (p. 290) 機能。
See Also https://aws.amazon.com/importexport.
ソフトバウンス
受信箱がいっぱいになった結果もたらされるような、一時的なメール配信障
害。
ソフトウェア VPN
インターネット経由のソフトウェアアプライアンスベースの VPN 接続。
ソートを有効にする
Amazon CloudSearch (p. 283): フィールドを使用して検索結果をソートでき
るようにするインデックスフィールドオプション。
ソートキー
復号プライマリキーにある、パーティションキーの順番の並べ替えに使用され
る属性 (別名範囲属性)。
See Also パーティションキー, プライマリキー.
送信元/送信先チェック
EC2 インスタンス (p. 301) が、送信したすべてのトラフィックの送信元であ
ることと、受信したすべてのトラフィックの最終的な送信先であること (つま
り、インスタンスがトラフィックをリレーしていない) ことを検証するセキュ
リティ手段。送信元/送信先チェックはデフォルトで有効になっています。
ゲートウェイとして機能するインスタンス (VPC (p. 330) NAT (p. 313) イ
ンスタンスなど) については、送信元/送信先チェックを無効にする必要があり
ます。
スパム
未承諾一括 E メール。
スパムトラップ
未承諾 E メールを監視する目的でアンチスパム (p. 324)エンティティによっ
て設定される E メールアドレス。実際のやり取りには使われません。ハニー
ポットとも呼ばれます。
SPF
Sender Policy Framework。E メール認証の標準の 1 つです。
See Also http://www.openspf.org.
スポットインスタンス
EC2 インスタンス (p. 301) の一種。未使用の Amazon EC2 (p. 284) キャパ
シティを、お客様が価格を指定して利用することができます。
スポット価格
任意の時点での スポットインスタンス (p. 324) の価格。お客様の上限価格が
スポット価格を超えており、かつお客様の制約が満たされていれば、Amazon
EC2 (p. 284) によって自動的にインスタンスが起動されます。
SQL のインジェクション一致
の状態
AWS WAF (p. 292): ウェブリクエストの部分を特定する属性。AWS WAF が
疑わしい SQL コードを調べる、ヘッダーやクエリ文字列など。指定された条
件に基づいて、AWS WAF を構成して Amazon CloudFront (p. 283) ディスト
リビューションなどの、AWS リソース (p. 320) に対するウェブリクエスト
を許可またはブロックできます。
API Version 2013-01-01
324
Amazon CloudSearch 開発者ガイド
SQS
See Amazon Simple Queue Service (Amazon SQS) .
SSE
See サーバー側の暗号化 (SSE) .
SSL
Secure Sockets Layer
See Also Transport Layer Security.
スタック
AWS CloudFormation (p. 289): 単一のユニットとして作成および削除する
AWS リソース (p. 320) のコレクション。
AWS OpsWorks (p. 291): まとめて管理するインスタンスのセット。通常
は、PHP アプリケーションの提供のように共通の用途があります。スタック
はコンテナとして機能し、アプリケーションとクックブックの管理など、イン
スタンスのグループ全体に適用されるタスクを処理します。
ステーション
AWS CodePipeline (p. 289): 1 つ以上のアクションが実行される、パイプラ
インワークフローの一部。
ステーション
AWS Import/Export データをストレージデバイスから送受信する AWS ファシ
リティ上の場所。
統計
特定の サンプリング期間 (p. 321) に送信される値の 5 つの関数のいずれか。
これらの関数は Maximum、Minimum、Sum、Average、SampleCount です。
語幹
関連する一連の単語に共通する基本部分または部分文字列。
語幹解釈
関連する単語を共通の語幹に対応付けるプロセス。これにより、単語の
バリエーションの照合が可能になります。たとえば "horse" が検索された
ときに、horse 以外に horses、horseback、horsing を返すことができま
す。Amazon CloudSearch (p. 283) は、辞書ベースの語幹解釈とアルゴリズ
ムによる語幹解釈の両方をサポートしています。
ステップ
Amazon EMR (p. 284): ジョブフロー (p. 308) のデータに適用される 1 つの
関数。すべてのステップを合わせることで、ジョブフローが構成されます。
ステップタイプ
Amazon EMR (p. 284): ステップで実行される作業のタイプ。Amazon
S3 (p. 286) から Amazon EC2 (p. 284)、または Amazon EC2 から Amazon
S3 へのデータの移動など、ステップ タイプの数には制限があります。
スティッキーセッション
Elastic Load Balancing (p. 302) ロードバランサーの機能の 1 つで、ユーザー
のセッションを特定のアプリケーションインスタンスにバインドし、セッショ
ン中にユーザーから受信したすべてのリクエストが同じアプリケーションイン
スタンスに送信されるようにします。デフォルトではこれとは対照的な処理が
行われ、ロードバランサーは負荷が最小になるように各リクエストを個別にア
プリケーションインスタンスにルーティングします。
停止
インデックスまたは検索リクエストからストップワードをフィルタリングする
プロセス。
ストップワード
あまりに一般的であるため対象にすると不要な一致が大量に生じる、重要では
ないなどの理由で、検索リクエストから自動的に除外される単語。インデック
スも作成されません。ストップワードは、言語固有です。
ストリーミング
Amazon EMR (Amazon EMR) (p. 284): Hadoop (p. 305) に付属している
ユーティリティの 1 つ。Java 以外の言語で MapReduce 実行可能ファイルを
作成できるようになります。
Amazon CloudFront (p. 283): メディアファイルをリアルタイムに使用する機
能。メディアファイルはサーバーから安定的に送信されます。
ストリーミングディストリ
ビューション
リアルタイムメッセージングプロトコル (RTMP) 接続によってストリームされ
たメディアファイルを処理する特殊な ディストリビューション (p. 300)。
API Version 2013-01-01
325
Amazon CloudSearch 開発者ガイド
Streams
See Amazon Kinesis Streams.
署名対象の文字列
HMAC (p. 306) 署名を計算する前に、必要なコンポーネントを正規順序でア
センブルします。事前に暗号化された文字列は署名対象の文字列です。
文字列の一致の状態
AWS WAF (p. 292): ヘッダーの値やクエリ文字列など、AWS WAF がウェ
ブリクエストを検索する文字列を指定する属性。指定された文字列に基づい
て AWS WAF を構成して、CloudFront (p. 283) ディストリビューションなど
の、AWS リソース (p. 320) に対するウェブリクエストを許可またはブロッ
クできます。
強力な整合性のある読み込み
リージョンにかかわらず、成功した以前のすべての書き込みオペレーションか
らの更新が反映された最新データの応答を返す読み込みプロセス。
See Also データの整合性, 最終的な一貫性, 結果的に整合性のある読み込み.
構造化クエリ
Amazon CloudSearch (p. 283) 構造化クエリ言語を使用して指定された検索
条件。構造化クエリ言語を使用すると、高度な検索オプションが使用され、
ブール演算子で複数の検索条件が組み合わされた複合クエリを構成できます。
STS
See AWS Security Token Service (AWS STS) .
サブネット
EC2 インスタンス (p. 301) をアタッチできる VPC (p. 330) の IP アドレス
範囲の一部分。セキュリティと運用上の必要に応じて、サブネットを作成し、
インスタンスをグループ分けできます。
サブスクリプションボタン
お客様に基本料金を簡単に課金できるようにする HTML コードのボタン。
サジェスタ
Amazon CloudSearch (p. 283): あいまい一致を有効にしたり、候補の並べ替
え方法を制御したりするオプションと、オートコンプリートの候補を取得する
ために使用するインデックスフィールドを指定します。
提案
サジェスタ (p. 326) で指定されたフィールドの部分検索文字列に一致する文
字列を含むドキュメント。Amazon CloudSearch (p. 283) の候補には、一致
する各ドキュメントのドキュメント ID とフィールド値が含まれます。文字列
がフィールドの先頭から始まるコンテンツと一致した場合に、"一致" と見なさ
れます。
サポートされる AMI
ペイド AMI (p. 315) と同様の Amazon マシンイメージ (AMI) (p. 285)。た
だし、お客様が独自の AMI とともに使用する追加のソフトウェアまたはサー
ビスについて、所有者から課金される点は異なります。
SWF
See Amazon Simple Workflow Service (Amazon SWF) .
対称暗号化
プライベートキーのみを使用する暗号化 (p. 302)。
See Also 非対称暗号化.
同期バウンス
バウンス (p. 294) の一種。支払人 (p. 322) と レシーバー (p. 318) の E
メールサーバーがアクティブに通信する際に発生します。
シノニム
インデックスが作成された単語とまったく同じか、ほぼ同じ単語であり、検
索リクエストで指定された場合に結果が同じになります。たとえば、"Rocky
Four" または "Rocky 4" で検索すると、Rocky の第 4 作目が返されます。four
と 4 が IV のシノニムとして指定されているときに、この結果になります。シ
ノニムは言語固有です。
&console; では、
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
API Version 2013-01-01
326
Amazon CloudSearch 開発者ガイド
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
table
データの収集。他のデータベース管理システムと同様、DynamoDB はデータ
をテーブルに保存します。
tag
EC2 インスタンス (p. 301) など、定義して AWS リソース (p. 320) に割り
当てることができるメタデータ。すべての AWS リソースにタグを付けられる
わけではありません。
タグ付け
リソースにタグを付ける: AWS リソース (p. 320) には、tag (p. 327) を適用
します。
Amazon SES (p. 286): ラベリングとも呼ばれます。リターンパス (p. 320)
E メールアドレスをフォーマットする手段です。これにより、メッセー
ジの受信者ごとに異なるリターンパスを指定できます。タグ付けによ
り、VERP (p. 329) をサポートできます。たとえば、アンドリューが
メーリングリストを管理しているとすると、アンドリューは、andrew
[email protected][email protected] というリターン
パスを使用して、バウンスされる E メールを特定できます。
ターゲットの属性
Amazon Machine Learning (Amazon ML) : 「正」の応答を含む入力データ属
性。Amazon ML は、ターゲット属性を使用して、新しいデータで予想を作成
する方法を学習します。たとえば、家の販売価格を予測するモデルをビルドす
る場合、ターゲット属性は「ターゲット販売価格 (米ドル) 」となります。
ターゲットリビジョン
AWS CodeDeploy (p. 289): リポジトリにアップロードされたアプリケーショ
ンの最新のリビジョンで、デプロイグループ内のインスタンスにデプロイさ
れるもの。つまり、現在デプロイの対象としているアプリケーションリビジョ
ン。これは、自動デプロイにプルされるリビジョンでもあります。
task
コンテナインスタンス (p. 297) で実行中の タスク定義 (p. 327) のインスタ
ンス化。
タスク定義
タスクの設計図。task (p. 327)、リビジョン、コンテナの定義 (p. 297)、ボ
リューム (p. 330) 情報を指定します。
タスクノード
マップを実行し、タスクを減らす EC2 インスタンス (p. 301)。データは保存
しません。Hadoop (p. 305)タスクノードは、ノードに Hadoop タスクを割
り当て、ステータスをモニタリングする マスターノード (p. 311) によって管
理されます。ジョブフローの実行中、タスクノードは増やすことも減らすこと
もできます。タスクノードはデータが格納されず、ジョブフローへの追加、削
除ができるので、容量を増やすことでピークロードに対応し、後から減らすな
ど、ジョブフローで使用される EC2 インスタンス容量を管理するために使用
できます。
タスクノードは、TaskTracker Hadoop デーモンのみを実行します。
「テラバイナリバイト」の略。1 テビバイトは 2^40、つまり
1,099,511,627,776 バイトです。1 テラバイト (TB) は 10^12、つまり
1,000,000,000,000 バイトです。1,024 TiB はペビバイト (p. 315)です。
テンプレート形式バージョン
AWS CloudFormation (p. 289) テンプレートデザインのバージョ
ン。これにより利用可能な機能が決まります。テンプレートから
AWSTemplateFormatVersion セクションを省略すると、最新バージョンの
形式と判断されます。
テンプレートの検証
AWS CloudFormation (p. 289) テンプレートで JSON (p. 308) コードの使
用を確認するプロセス。cfn-validate-template コマンドを使用して、任
意の AWS CloudFormation テンプレートを検証できます。
API Version 2013-01-01
327
Amazon CloudSearch 開発者ガイド
一時的な認証情報
STS API アクションを呼び出す際に AWS STS (p. 292) に提供さ
れる認証情報。アクセスキー ID (p. 281)、シークレットアクセス
キー (p. 322)、session (p. 323) トークン、有効期限が含まれています。
スロットリング
1 つ以上の制限に基づく、プロセスの自動制限または遅延。例: アプリケー
ション (または同じストリームで動作するアプリケーションのグループ)
がシャードからデータを、シャードの限界より高速に取得しようとする
と、Amazon Kinesis Streams (p. 285) は対応するオペレーションを調整しま
す。Amazon API Gateway (p. 282) は単一アカウントの一定リクエスト率を
制限するために、スロットリングを使用します。Amazon SES (p. 286) は 送
信制限 (p. 322) を超える E メール送信の試行を拒否するために、スロットリ
ングを使用します。
時系列データ
メトリックの一部として提供されるデータ。時間の値は、それが生じた時点
と想定されます。メトリックは Amazon CloudWatch (p. 283) の基本的概念
で、時系列に並んだデータポイントのセットを表しています。メトリックデー
タポイントを CloudWatch にパブリッシュし、後でそのデータポイントに関す
る統計情報を時系列に並んだデータセットとして取得することができます。
タイムスタンプ
ISO 8601 形式の日付/時間文字列。
TLS
See Transport Layer Security.
トークン分割
スペースやハイフンなど、検出可能な境界で個別のトークンにテキストのスト
リームを分割するプロセス。
トピック
メッセージを送信し、通知を受信する通信チャネル。発行者と受信者が相互に
意思疎通するためのアクセスポイントを提供します。
トレーニングデータソース
Amazon Machine Learning が機械学習モデルの予測作成をトレーニングするた
めに使用するデータを含む、データソース。
移行
AWS CodePipeline (p. 289): ワークフローの、ある段階から次へと継続する
パイプラインにおける、1 つのリビジョンの操作
Transport Layer Security
インターネット経由の通信のセキュリティを提供する暗号化プロトコル。その
前のバージョンが Secure Sockets Layer (SSL) です。
信頼ポリシー
IAM ロール (p. 320) の固有の部分である IAM (p. 290) ポリ
シー (p. 316)。信頼ポリシーはどの プリンシパル (p. 316) がロールを使用
するかを指定します。
信頼された署名者
CloudFront (p. 283) ディストリビューション所有者がディストリビューショ
ンのコンテンツに対して署名付き URL を作成する権限を付与した AWS アカ
ウント (p. 282)。
チューニング
ジョブフローが最大限の効率で実行されるように、AMI (p. 285) の数とタイ
プを選択すること。Hadoop (p. 305)
トンネル
インターネットを使用してプライベートネットワークのノードに接続すると
き、プライベートネットワークのトラフィックを送信するルート。トンネルは
暗号化や、PPTP などのセキュリティで保護されたプロトコルを使用して、パ
ブリックのルーティングノードを通過するときにトラフィックが攻撃されるの
を防ぎます。
子
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
API Version 2013-01-01
328
Amazon CloudSearch 開発者ガイド
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
unbounded
潜在的な発生数は、設定された数で制限されません。この値は、ウェブサービ
ス記述言語 (p. 330) で、リスト (たとえば、maxOccurs="unbounded") の
データ型を定義するときによく使用されます。
単位
メトリクスデータとして Amazon CloudWatch (p. 283) に送信された値の基
準となる大きさ。単位には、秒、パーセント、バイト、ビット、カウント、バ
イト/秒、ビット/秒、カウント/秒、なし、があります。
VPC からのリンクの解除
ClassicLink が有効な VPC (p. 330) から EC2-Classic インスタンス (p. 307)
をリンク解除 (またはデタッチ) するプロセスです。
See Also ClassicLink, VPC へのリンク .
使用状況レポート
特定の AWS サービスの使用率を詳しく記述する AWS レコード。使用状況レ
ポートは、https://aws.amazon.com/usage-reports/ から生成してダウンロード
できます。
user
AWS 製品に対して API 呼び出しを実行する必要がある、アカウン
ト (p. 282) に属する人やアプリケーション。各ユーザーには、AWS アカウ
ント内で一意の名前が付いており、認証情報の一連は、他のユーザーと共有し
ません。これらの認証情報は、AWS アカウントの認証情報とは異なります。
各ユーザーは、1 つだけの AWS アカウントと関連付けられます。
V
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
検証
See テンプレートの検証.
値
スプレッドシートのセルなど、項目の属性 (p. 288)のインスタンス。属性は
複数の値を持っている可能性があります。
リソースのタグ付け: タグカテゴリ (キー) の記述子として機能する特定の
tag (p. 327) ラベル。たとえば、Owner のタグキーと Jan のタグ値を持つ
EC2 インスタンス (p. 301) があるとします。最大 10 個のキーと値のペアを
使用して、AWS リソース (p. 320) にタグ付けすることができます。すべて
の AWS リソースにタグを付けられるわけではありません。
可変エンベロープリターンパ
ス
See VERP.
検証
E メールアドレスまたはドメインを所有して、確実に E メールを送受信できる
ようにするプロセス。
VERP
可変エンベロープリターンパス。E メールを送信するアプリケーションが、受
信者ごとに異なる リターンパス (p. 320) を使用して、バウンス (p. 294) し
た E メールと、バウンスの原因となった配信不能のアドレスを一致させる方
法。VERP は、通常メーリングリストに使用されます。VERP では、受信者の
E メールアドレスがリターンパスのアドレスに組み込まれ、そこにバウンス
した E メールが返されます。これにより、コンテンツが異なるバウンスメッ
セージを開く必要はなく、バウンスした E メールの処理を自動的に行うこと
ができます。
バージョニング
Amazon S3 (p. 286) 内の各オブジェクトにはキーとバージョン ID があり
ます。同じキーのオブジェクトは、バージョン ID が異なっていても、同じ
API Version 2013-01-01
329
Amazon CloudSearch 開発者ガイド
bucket (p. 294) に格納できます。バージョニングは、バケット層で有効
で、PUT Bucket のバージョニングを使用します。
仮想化
複数のゲスト仮想マシン (VM) をホストオペレーティングシステム上で実行で
きます。ゲスト VM は、仮想化タイプに応じて、ホストハードウェアより 1 つ
またはそれ以上のレベルで実行できます。
See Also PV 仮想化, HVM 仮想化.
virtual private cloud
See VPC.
仮想プライベートゲートウェ
イ
See VPG.
可視性タイムアウト
あるアプリケーションコンポーネントによってキューからメッセージが取得さ
れた後、他のアプリケーションからメッセージにアクセスできない期間。可視
性タイムアウトの間、メッセージを受信したコンポーネントは、通常メッセー
ジを処理してキューから削除します。これにより、複数のコンポーネントが同
じメッセージを処理するのを防ぐことができます。
ボリューム
インスタンス (p. 307) のストレージの固定量。コンテナが実行しなくなる場
合、コンテナ (p. 296) 間でボリュームデータを共有し、コンテナインスタン
ス (p. 297) でデータを保持できます。
VPC
Virtual Private Cloud。インフラストラクチャ、プラットフォーム、および共通
のセキュリティと相互接続を共有するアプリケーションサービスによって追加
される伸縮性のあるネットワーク。
VPC エンドポイント
NAT (p. 313)、 インスタンス、VPN 接続 (p. 330)、または AWS Direct
Connect (p. 290) 経由でのアクセスを使用せずに、VPC (p. 330) と別の
AWS サービスとの間でプライベート接続を作成できる機能です。
VPG
仮想プライベートゲートウェイ。接続を保持している、VPN 接続 (p. 330) の
Amazon 側。仮想プライベートゲートウェイの内部インターフェイスは、VPN
のアタッチメントを介して自身の VPC (p. 330) に接続し、外部インターフェ
イスは、VPN に接続すると カスタマーゲートウェイ (p. 298) につながりま
す。
VPN CloudHub
See AWS VPN CloudHub.
VPN 接続
アマゾン ウェブ サービス (AWS) (p. 286): 企業のデータセンター、ホーム
ネットワーク、コロケーション設備など、VPC (p. 330) と他のネットワーク
との IPsec 接続。
W
Numbers and Symbols (p. 281) | A (p. 281) | B (p. 293) | C (p. 294) | D (p. 298) | E (p. 301) |
F (p. 304) | G (p. 305) | H (p. 305) | I (p. 306) | J (p. 308) | K (p. 309) | L (p. 309) | M (p. 310) |
N (p. 312) | O (p. 314) | P (p. 314) | Q (p. 317) | R (p. 318) | S (p. 321) | T (p. 326) | U (p. 328) |
V (p. 329) | W (p. 330) | X, Y, Z (p. 331)
WAM
See Amazon WorkSpaces Application Manager (Amazon WAM) .
ウェブアクセスコントロール
リスト
AWS WAF (p. 292): Amazon CloudFront (p. 283) ディストリビューション
など、AWS WAF が AWS リソース (p. 320) へのウェブリクエストを検索す
る条件を定義する、一連のルール。ウェブアクセスコントロールリスト (ウェ
ブ ACL) はリクエストを許可、ブロック、カウントするかどうかを指定しま
す。
ウェブサービス記述言語
ウェブサービスが実行できるアクションと、アクションリクエストとアクショ
ンレスポンスの構文を記述するために使用される言語。SOAP または他のツー
API Version 2013-01-01
330
Amazon CloudSearch 開発者ガイド
ルキットが WSDL ファイルを解析し、アプリケーションがウェブサービスで
提供されるアクションにアクセスできるようになります。ほとんどのツール
キットで、アプリケーションは、ツールキットにより提供または生成された
ルーチンとクラスを使用してサービスオペレーションを呼び出します。
X, Y, Z
X.509 証明書
証明書 (p. 295) に記載されているエントリに所属するパブリックキーを検証
するため、X.509 パブリックキーインフラ (PKI) を使用するデジタル文書。
ヨビバイト
「ヨタバイナリバイト」の略。1 ヨビバイトは 2^80、つまり
1,208,925,819,614,629,174,706,176 バイトです。1 ヨタバイト (YB) は
10^24、つまり 1,000,000,000,000,000,000,000,000 バイトです。
ゼビバイト
「ゼタバイナリバイト」の略。1 ゼビバイトは 2^70、つまり
1,180,591,620,717,411,303,424 バイトです。1 ゼタバイト (ZB) は 10^21、
つまり 1,000,000,000,000,000,000,000 バイトです。1,024 ZiB はヨビバイ
ト (p. 331)です。
ゾーン対応
Amazon Elasticsearch Service (Amazon ES) (p. 284): 同じリージョン内で
2 つの アベイラビリティーゾーン (p. 288) を通して、クラスター内のノー
ドを分散するする設定。ノードとデータに関する障害が発生した際、ゾーン
対応はデータロスを防ぎ、ダウンタイムを最小限に抑えるために役立ちま
す。ゾーン対応を有効にする場合、Elasticsearch クラスターのデータを複製
するために、インスタンス数に偶数のデータインスタンスを持ち、Amazon
Elasticsearch Service 設定 API を使用する必要があります。
API Version 2013-01-01
331