すべてのプロダクト
Search
ドキュメントセンター

:OSSデータソース

最終更新日:Dec 28, 2024

OSSを有効にする

image.png

  1. オブジェクトストレージサービス(OSS)を有効にする.

  2. OSSコンソールでバケットを作成する.

  3. OSSバケットにオブジェクトをアップロードする.

OSSデータソースを設定する

  1. OpenSearchコンソールにログインします。左上隅で、OpenSearch Vector Search Editionを選択します。[インスタンス]ページで、管理するインスタンスを見つけ、[アクション]列の[管理]をクリックします。

  2. 左側のペインで、構成センター > データソースを選択します。[データソース]ページで、データソースを追加をクリックします。[データソースを追加]パネルで、[データソースの種類]パラメータをOSSに設定し、データソース名OSSパス、およびバケットパラメータを設定します。次に、検証をクリックします。

パラメータ:

  • データソース名: OSSデータソースのカスタム名。名前は文字で始まり、文字、数字、およびアンダースコア(_)を含めることができます。

  • OSSパス: OSSオブジェクトへのアクセスに使用されるパス。

  • バケット: OSSバケットの名前。

注:

  • 指定されたOSSパスにはopensearchが含まれている必要があり、等号(=)、アンパサンド(&)、および疑問符(?)などの特殊文字を含めることはできません。そうしないと、データを読み取ることができません。

  • OSSパスを作成するには、次の操作を実行します。OSSコンソールの[バケット]ページに移動し、バケットリストで作成されたOSSバケットの名前をクリックしてから、[ディレクトリの作成]をクリックします。[ディレクトリの作成]パネルで、[ディレクトリ名]パラメータを設定します。この例では、/opensearch_index_data/が作成されます。

image.png

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

image.png

  1. インデックステーブルを作成する

    1. OSSデータソースを設定した後、左側のペインで構成センター > インデックススキーマを選択します。[インデックススキーマ]ページで、[インデックステーブルの作成]をクリックします。

    2. 構成ページで、カスタムインデックステーブル名を入力し、構成したOSSデータソースを選択します。

この例では、pkフィールドとembeddingsフィールドが設定されています。サンプルデータの詳細については、oss_test.txtを参照してください。

CMD=add
pk=999000
embeddings=0.00.0039257140.0098142860.0039257140.00
pk=999000
embeddings=0.00.0039257140

インデックススキーマの詳細については、このトピックの「インデックス作成用のデータファイル」セクションを参照してください。

  1. 左側のペインで、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^_

このデータファイルには、追加コマンドと削除コマンドが含まれています。各コマンドは複数の行で構成され、各行はキーと値のペアです。コマンドは「^^\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

  • コマンド形式

    • 追加コマンド形式

      追加コマンドは、インデックススキーマにデータを追加するために使用されます。

      追加コマンドの最初の行はCMD=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^_
^^

  • 削除コマンド形式

    削除コマンドは、インデックススキーマからデータを削除するために使用されます。

    削除コマンドの最初の行はCMD=deleteである必要があり、その後にインデックススキーマでプライマリキーフィールドとして定義されているフィールドとハッシュパーティションに使用されるフィールドが続きます。2つのフィールドが同じ場合は、1つのフィールドのみを指定する必要があります。

CMD=delete^_
PK=12345321^_
^^CMD=delete^_
PK=12345321^_
^^

OSSデータソースを削除する

データソースページで、削除するデータソースを見つけて、アクション列の削除をクリックします。

:

  • データソースを削除すると、復元できません。慎重に行ってください。

  • 削除するOSSデータソースのインデックステーブルが作成されている場合は、OSSデータソースを削除する前に、インデックステーブルを削除する必要があります。

使用上の注意:

  • 購入したOpenSearch Vector Search Editionインスタンスと同じリージョンでOSSを有効にする必要があります。

  • OpenSearch Vector Search Editionは、Anywhere OSSバケットをサポートしていません。

  • OSSデータソースを設定すると、AliyunServiceRoleForSearchEngineという名前のサービスリンクロールが自動的に作成されます。サービスリンクロールがすでに存在する場合は、別のロールは作成されません。OpenSearchはこのロールを使用してクラウド リソースにアクセスし、関連機能を実装します。