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

MaxCompute:Proxima CE パッケージのインストール

最終更新日:Jun 23, 2026

ベクトル計算機能を使用する前に、Proxima CE パッケージをインストールする必要があります。このドキュメントでは、Proxima CE の環境準備、インストールパッケージの入手方法、アップロード、および入力データの準備プロセスについて説明します。

前提条件

環境準備が完了していることを確認してください。

Proxima CE インストールパッケージの入手

Proxima CE パッケージをクリックしてインストールパッケージをダウンロードしてください。

Proxima CE インストールパッケージには、主に Proxima CE の実行可能 JAR が含まれています。これを MaxCompute リソースとして MaxCompute プロジェクトにアップロードし、実行可能 JAR を呼び出して Proxima CE タスクを実行できます。

インストールパッケージの MaxCompute リソースとしてのアップロード

MaxCompute クライアント (odpscmd) または DataWorks を使用して、ダウンロードしたインストールパッケージを MaxCompute プロジェクトにアップロードできます。このドキュメントでは、DataWorks を例に、リソースをアップロードしてデプロイする方法を説明します。odpscmd を使用したリソースのアップロード方法については、「Manage resources」をご参照ください。

  1. DataWorks の データ開発 ページで、GUI を使用してインストールパッケージを JAR リソースとしてアップロードします。

    説明

    DataWorks の GUI で作成またはアップロードされたリソース:

    • リソースが MaxCompute (ODPS) クライアントを使用してアップロードされていない場合は、[ODPS リソースとしてアップロード] を選択します。リソースがすでに MaxCompute (ODPS) クライアントを使用してアップロードされている場合は、[ODPS リソースとしてアップロード] の選択を解除してください。そうしないと、アップロードに失敗します。

    • アップロード中に [ODPS リソースとしてアップロード] を選択すると、リソースは DataWorks と MaxCompute の両方に保存されます。後でコマンドを使用して MaxCompute からリソースを削除しても、DataWorks 内のリソースは存在し続け、正常に表示されます。

    • リソース名は、アップロードされたファイルの名前と一致する必要はありません。

    [新建资源] ダイアログボックスで、[文件来源][本地] を選択し、[点击上传] をクリックしてインストールパッケージファイルをアップロードします。リソースタイプが JAR の場合、名前にサフィックス .jar を追加する必要があります。

  2. リソースをコミットし、デプロイします。

    リソースを作成した後、リソース設定ページのツールバーにある Commit アイコンをクリックして、リソースを開発環境にコミットします。

    説明

    本番タスクがこのリソースを使用する場合、リソースを本番環境にもデプロイする必要があります。詳細については、「タスクの公開」をご参照ください。

入力テーブルの準備

実行する前に、以下の 2 つの入力テーブルを準備する必要があります:

  • doc テーブル:ベースデータテーブル。

  • query テーブル:ユーザークエリテーブル。

テーブル作成コマンド

-- doc テーブルの作成
CREATE TABLE doc_table_float_smoke(pk STRING,vector STRING <,category BIGINT>) PARTITIONED BY (pt STRING);
-- query テーブルの作成
CREATE TABLE query_table_float_smoke(pk STRING,vector STRING <,category BIGINT>) PARTITIONED BY (pt STRING);

入力テーブルのフォーマット要件

  • テーブル名

    • 入力テーブルの名前に文字列 tmp_ を含めることはできません。含まれていると、タスクの実行が失敗します。

    • 入力テーブルの名前とパーティション値の文字長は 64 を超えることはできません。超えた場合、タスクの実行が失敗します。

  • フィールド

    説明

    入力テーブルには、以下の固定フィールドを含める必要があり、フィールド名は完全に一致している必要があります。

    固定フィールド

    フィールドの説明

    フィールドのデータ型

    pk

    クエリ時の pk 値フィールド (主キー)。

    デフォルトは STRING 型です。

    • pk 列の場合:具体的な値は、数値または文字列 (例:文字列型の 1.nid,2.nid,3.nid,... や INT64 数値型の 123,456,789,...) にすることができます。

    • pk 列の場合:すべて INT64 数値が格納されている場合、列の型を BIGINT 型に指定できます。同時に、起動パラメーター -pk_type を INT64 に指定すると、パフォーマンスが向上します。

    vector

    ベクトルフィールド。

    デフォルトは STRING 型です。

    category

    複数カテゴリ検索用のカテゴリフィールド。

    このフィールドは、複数カテゴリ検索の場合にのみ必要です。

    デフォルトは BIGINT 型です。

    pt

    パーティションフィールド。

    デフォルトは STRING 型です。

入力テーブルの例

  • doc テーブル

    pk

    vector

    pt

    id1

    0~1~1~5

    20190322

    id2

    0~1~1~2

    20190322

    id3

    3~2~1~1

    20190322

    ...

    ...

    ...

  • query テーブル

    pk

    vector

    pt

    id8

    0~1~1~5

    20190322

    id9

    0~1~1~2

    20190322

    id10

    3~2~1~1

    20190322

    ...

    ...

    ...

次のステップ:ベクトル検索機能の使用

シナリオ

主な機能

リファレンス

基本的なベクトル検索

数百万のデータレコードから上位 K 件の結果の検索をサポートします。

基本的なベクトル検索

複数カテゴリ検索

クエリテーブルとドキュメントテーブルが異なるカテゴリに属するシナリオや、単一のクエリテーブルが複数のカテゴリに属するシナリオなど、複数カテゴリのシナリオをサポートします。

複数カテゴリ検索

クラスターシャーディング

クラスターシャーディングに基づいてインデックスを作成できます。この方法を使用すると、計算されるデータ量を削減し、インデックスベースのクエリを高速化できます。

クラスターシャーディング

内積とコサイン距離

内積とコサイン距離検索をサポートします。

内積とコサイン距離

コンバーター

コンバーターを使用できます。ほとんどの場合、コンバーターはパフォーマンスを向上させ、インデックスサイズを小さくするのに役立ちます。検索の損失は、実際の状況によって異なります。

コンバーター

ベクトル検索を使用すると、出力テーブルが自動的に生成され、MaxCompute テーブルに保存されます。ユーザーが作成する必要はなく、Proxima CE コードを実行する際の -output_table パラメーターでテーブル名を指定するだけで使用できます。生成される出力テーブルのフォーマットについては、後述の「出力テーブルのフォーマット説明」をご参照ください。

出力テーブルのフォーマット説明

ベクトル検索を実行すると、出力テーブルが自動的に生成され、MaxCompute テーブルに保存されます。生成される出力テーブルのフォーマットは以下のとおりです。

  • テーブル名:Proxima CE コードの実行時に指定した出力テーブルの名前です。

    • 出力テーブルの名前に半角のピリオド (.) を使用することはできません。これは MaxCompute の特殊文字であり、MaxCompute テーブルの解析に失敗する原因となります。

    • 出力テーブルの名前に文字列 tmp_ を含めることはできません。含まれていると、タスクの実行が失敗します。

    • 出力テーブルの名前とパーティション名の文字長は 64 を超えることはできません。超えた場合、タスクの実行が失敗します。

  • フィールド

    固定フィールド

    フィールドの説明

    フィールドのデータ型

    pk

    query テーブル内の各クエリに対応する pk 値です。

    デフォルトは STRING 型です。

    • pk 列の具体的な値は、数値または文字列 (例:文字列型の 1.nid,2.nid,3.nid,... や INT64 数値型の 123,456,789,...) にすることができます。

    • pk 列にすべて INT64 数値が格納されている場合、列の型を BIGINT 型に指定できます。同時に、起動パラメーター -pk_type を INT64 に指定すると、パフォーマンスが向上します。

    knn_result

    クエリによってリコールされた doc テーブル内の pk 値です。

    デフォルトは STRING 型です。

    score

    リコールされた doc に対応する類似度スコアです。

    デフォルトは STRING 型です。Proxima CE の出力結果は、常に類似度が最も高い順 (降順) でソートされます。

    説明

    使用する距離アルゴリズムによって、score 値が表す「距離」と「類似度」の関係が異なります。Proxima CE はこの違いを吸収し、常に類似度が最も高い結果が先頭になるようにソートします。

    • inner_product/mips_squared_euclidean 距離の場合:距離が大きいほど類似度が高いため、score 値の降順でソートされます。

    • その他の距離の場合:距離が小さいほど類似度が高いため、score 値の昇順でソートされます。

    category

    複数カテゴリ検索用のカテゴリフィールド。

    このフィールドは、複数カテゴリ検索の場合にのみ必要です。

    デフォルトは BIGINT 型です。

    pt

    パーティションフィールド。

    デフォルトは STRING 型です。

出力テーブルの例

pk

knn_result

score

pt

id8

id1

0.1

20190322

id8

id2

0.2

20190322

id9

id1

0.1

20190322

id9

id3

0.3

20190322

...

...

...

...