OSSを有効にする

OSSデータソースを設定する
OpenSearchコンソールにログオンします。左上隅で、OpenSearch Retrieval Engine Edition を選択します。[インスタンス] ページで、管理するインスタンスを見つけ、[アクション] 列の [管理] をクリックします。
左側のペインで、構成センター > データソースを選択します。[データソース] ページで、データソースを追加をクリックします。[データソースを追加] パネルで、[データソースの種類] パラメーターを OSS に設定し、データソース名、OSSパス、および バケット パラメーターを設定します。次に、検証をクリックします。
パラメーター:
データソース名: OSSデータソースのカスタム名。名前は文字で始まり、文字、数字、アンダースコア(_)を含めることができます。
OSSパス: OSSオブジェクトにアクセスするために使用されるパス。
バケット: OSSバケットの名前。
指定されたOSSパスには opensearch が含まれている必要があり、等号 (=)、アンパサンド (&)、疑問符 (?) などの特殊文字を含めることはできません。そうしないと、データを読み取ることができません。
OSSパスを作成するには、次の操作を実行します。OSSコンソールの [バケット] ページに移動し、バケットリストで作成されたOSSバケットの名前をクリックし、[ディレクトリの作成] をクリックします。[ディレクトリの作成] パネルで、[ディレクトリ名] パラメーターを設定します。この例では、/opensearch_index_data/ が作成されます。

作成されたOSSバケットの名前を取得するには、次の操作を実行します。OSSコンソールの [バケット] ページに移動し、[バケット名] 列でバケット名を確認します。

インデックステーブルを作成する。
OSSデータソースを設定した後、左側のペインで 構成センター > インデックススキーマ を選択します。[インデックススキーマ] ページで、[インデックステーブルの作成] をクリックします。
構成ページで、カスタムインデックステーブル名を入力し、構成したOSSデータソースを選択します。
この例では、pkフィールドとembeddingsフィールドが設定されています。サンプルデータの詳細については、oss_test.txtを参照してください。
CMD=add
pk=999000
embeddings=0.00.0039257140.0098142860.0039257140.00
pk=999000
embeddings=0.00.0039257140インデックススキーマの詳細については、このトピックの「インデックス作成用のデータファイル」セクションを参照してください。
左側のペインで、O&Mセンター > O&M管理を選択します。[O&M管理] ページで、再インデックスをクリックします。[再インデックス] パネルで、パラメーターを設定してOSSデータソースの再インデックスをトリガーします。
再インデックスが完了したら、クエリテストを実行できます。
インデックス作成用のデータファイル
ファイルはインデックス作成のデータソースとして機能します。ファイルはUTF-8形式でエンコードされている必要があります。このセクションでは、インデックス作成用のデータファイルの標準入力形式について説明します。
次の情報は、standard_sample.dataという名前の完全なデータファイルの内容を示しています。
CMD=add^_
PK=12345321^_
url=http://www.aliyun.com/index.html^_
title=Alibaba Cloud Computing Co., Ltd.^_
body=xxxxxx xxx^_
time=3123423421^_
multi_value_field=1234^]324^]342^_
bidwords=mp3^\price=35.8^Ptime=13867236221^]mp4^\price=32.8^Ptime=13867236221^_
^^
CMD=delete^_
PK=12345321^_CMD=add^_
PK=12345321^_
url=http://www.aliyun.com/index.html^_
title=Alibaba Cloud Computing Co., Ltd.^_
body=xxxxxx xxx^_
time=3123423421^_
multi_value_field=1234^]324^]342^_
bidwords=mp3^\price=35.8^Ptime=13867236221^]mp4^\price=32.8^Ptime=13867236221^_
^^
CMD=delete^_
PK=12345321^_このデータファイルには、addコマンドとdeleteコマンドが含まれています。各コマンドは複数の行で構成され、各行はキーと値のペアです。 コマンドは '^^\n' で区切られ、キーと値のペアは '^_\n' で区切られ、値は '^]' で区切られます。次の表とリストは、ファイル区切り文字とコマンド形式について説明しています。
ファイル区切り文字
C++ エンコーディング | ASCII コード 16進表記 | 説明 | EmacsまたはViでの表示パターン | Emacsでの入力方法 | Viでの入力方法 |
"\x1F\n" | 1F0A | キーと値のペアの区切り文字。 | ^_ (改行あり) | C-q C-7 | C-v C-7 |
"\x1E\n" | 1E0A | コマンドの区切り文字。 | ^^ (改行あり) | C-q C-6 | C-v C-6 |
"\x1D" | 1D | 複数値の区切り文字。 | ^] | C-q C-5 | C-v C-5 |
"\x1C" | 1C | セクションの重み識別子。 | ^\ | C-q C-4 | C-v C-4 |
"\x1D" | 1D | セクションの区切り文字。 | ^] | C-q C-5 | C-v C-5 |
"\x03" | 03 | 子ドキュメントのフィールド区切り文字。 | ^C | C-q C-c | C-v C-c |
コマンド形式
add
addコマンドは、インデックススキーマにデータを追加するために使用されます。
addコマンドの最初の行はCMD=addである必要があり、その後にドキュメントのフィールドが続きます。フィールドの順序は、インデックススキーマのフィールドの順序と同じにすることができます。addコマンドに表示されるすべてのフィールドは、インデックススキーマで指定する必要があります。
CMD=add^_
PK=12345321^_
url=http://www.aliyun.com/index.html^_
title=Alibaba Cloud Computing Co., Ltd.^_
body=xxxxxx xxx^_
time=3123423421^_
multi_value_field=1234^]324^]342^_
bidwords=mp3^\price=35.8^Ptime=13867236221^]mp4^\price=32.8^Ptime=13867236221^_
^^CMD=add^_
PK=12345321^_
url=http://www.aliyun.com/index.html^_
title=Alibaba Cloud Computing Co., Ltd.^_
body=xxxxxx xxx^_
time=3123423421^_
multi_value_field=1234^]324^]342^_
bidwords=mp3^\price=35.8^Ptime=13867236221^]mp4^\price=32.8^Ptime=13867236221^_
^^delete
deleteコマンドは、インデックススキーマからデータを削除するために使用されます。
deleteコマンドの最初の行はCMD=deleteである必要があり、その後にインデックススキーマでプライマリキーフィールドとして定義されているフィールドと、
ハッシュパーティションに使用されるフィールドが続きます。2つのフィールドが同じ場合は、1つのフィールドのみを指定する必要があります。
CMD=delete^_
PK=12345321^_
^^CMD=delete^_
PK=12345321^_
^^OSSデータソースを削除する
データソースページで、削除するデータソースを見つけ、アクション列の削除をクリックします。
注:
データソースを削除すると、復元できません。慎重に行ってください。
削除するOSSデータソースのインデックステーブルが作成されている場合は、OSSデータソースを削除する前に、インデックステーブルを削除する必要があります。
使用上の注意
購入したOpenSearch Retrieval Engine Editionインスタンスと同じリージョンでOSSを有効にする必要があります。
OpenSearch Retrieval Engine EditionはAnywhere OSSバケットをサポートしていません。
OSSデータソースを設定すると、システムはAliyunServiceRoleForSearchEngineという名前のサービスリンクロールを自動的に作成します。サービスリンクロールがすでに存在する場合は、システムは別のロールを作成しません。OpenSearchはこのロールを使用してクラウド リソースにアクセスし、関連機能を実装します。