概要
スコア計算中、ドキュメントのフィールド値に基づいてドキュメントに異なるスコアが与えられます。スコアは検索結果の並べ替えに使用されます。 OpsDoc クラスは、ドキュメントからフィールドを取得するために使用できる特定のインターフェースをカプセル化します。 OpsDoc オブジェクトを使用すると、OpenSearch コンソールで設定され、事前に宣言されている属性フィールドのみを取得できます。これらのフィールドを宣言するには、ソートプラグインの init 関数で OpsDoc クラスの requireAttribute 関数を呼び出す必要があります。 OpsDoc オブジェクトはシステムによって自動的に作成されるため、直接使用できます。
ソート式とは異なり、Cava を使用して記述されたソートスクリプトでは、トレース情報を表示するためにトレース関数を手動で呼び出す必要があります。 OpsDoc クラスは、さまざまな種類のトレース情報を表示できる一連のトレース関数をカプセル化します。 OpsDoc クラスによってカプセル化されたトレース関数で使用されるパラメーターを変更することはできません。複数の変数の結果を表示する必要がある場合は、trace メソッドを複数回呼び出す必要があります。トレース情報は、検索テストページでのみ表示できます。通常の検索リクエストはトレース機能をサポートしていません。 Cava を使用して単一の要求を処理するためのメモリは限られており、多数のトレースは実行時のメモリを大量に占有します。したがって、トレース関数は必要な場合にのみ呼び出すことをお勧めします。
関数
関数 | 説明 |
boolean requireAttribute(CString fieldName) | スコア計算中に使用する必要がある属性フィールドを宣言します。 |
long docFieldLong(CString fieldName) | INT 型のフィールドの値を取得します。 |
float docFieldFloat(CString fieldName) | FLOAT 型のフィールドの値を取得します。 |
double docFieldDouble(CString fieldName) | DOUBLE 型のフィールドの値を取得します。 |
CString docFieldLiteral(CString fieldName) | LITERAL 型のフィールドの値を取得します。 |
long[] docFieldLongArray(CString fieldName) | INT_ARRAY 型のフィールドの値を取得します。 |
float[] docFieldFloatArray(CString fieldName) | FLOAT_ARRAY 型のフィールドの値を取得します。 |
double[] docFieldDoubleArray(CString fieldName) | DOUBLE_ARRAY 型のフィールドの値を取得します。 |
CString[] docFieldLiteralArray(CString fieldName) | LITERAL_ARRAY 型のフィールドの値を取得します。 |
OpsGeoPoint docFieldGeoPoint(CString fieldName) | GEO_POINT 型のフィールドの値を取得します。 |
OpsTimestamp docFieldTimestamp(CString fieldName) | TIMESTAMP 型のフィールドの値を取得します。 |
boolean declareLongVariable(CString variableName, boolean needSerialize) | LONG 型の変数を宣言します。変数は、スコア計算プラグインで使用したり、ドキュメントで返すことができます。 |
boolean declareDoubleVariable(CString variableName, boolean needSerialize) | DOUBLE 型の変数を宣言します。変数は、スコア計算プラグインで使用したり、ドキュメントで返すことができます。 |
void setLongVariable(CString variableName, long value) | LONG 型の変数の値を設定します。変数は宣言済みである必要があります。 |
void setDoubleVariable(CString variableName, double value) | DOUBLE 型の変数の値を設定します。変数は宣言済みである必要があります。 |
long getLongVariable(CString variableName) | LONG 型の変数の値を取得します。変数の値は設定済みである必要があります。 |
double getDoubleVariable(CString variableName) | DOUBLE 型の変数の値を取得します。変数の値は設定済みである必要があります。 |
void trace(byte value) | スコア計算中に BYTE 型のトレース情報を表示します。 |
void trace(CString prefix, byte value) | スコア計算中に BYTE 型のトレース情報を表示します。 |
void trace(short value) | スコア計算中に SHORT 型のトレース情報を表示します。 |
void trace(CString prefix, short value) | スコア計算中に SHORT 型のトレース情報を表示します。 |
void trace(int value) | スコア計算中に INT 型のトレース情報を表示します。 |
void trace(CString prefix, int value) | スコア計算中に INT 型のトレース情報を表示します。 |
void trace(long value) | スコア計算中に LONG 型のトレース情報を表示します。 |
void trace(CString prefix, long value) | スコア計算中に LONG 型のトレース情報を表示します。 |
void trace(float value) | スコア計算中に FLOAT 型のトレース情報を表示します。 |
void trace(CString prefix, float value) | スコア計算中に FLOAT 型のトレース情報を表示します。 |
void trace(double value) | スコア計算中に DOUBLE 型のトレース情報を表示します。 |
void trace(CString prefix, double value) | スコア計算中に DOUBLE 型のトレース情報を表示します。 |
void trace(CString value) | スコア計算中に CString 型のトレース情報を表示します。 |
void trace(CString prefix, CString value) | スコア計算中に CString 型のトレース情報を表示します。 |
関数の詳細
boolean requireAttribute(CString fieldName)
スコア計算中に使用する必要がある属性フィールドを宣言します。この関数は、スコア計算の初期化中にのみ呼び出すことができます。初期化中にフィールドが宣言されていない場合、スコア計算中にドキュメントからフィールドの値を正しく取得できません。 パラメーター: fieldName: 属性フィールドの名前。名前は定数である必要があります。 戻り値: フィールドが宣言されている場合は true が返されます。それ以外の場合は false が返されます。ほとんどの場合、宣言されたフィールドが属性フィールドではないため、false が返されます。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
CString field1;
boolean ret = params.getDoc().requireAttribute(field1); // field1 は定数である必要があります。
ret = params.getDoc().requireAttribute("price"); //ok
return ret;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
float floatValue = doc.docFieldFloat("price");
return floatValue;
}
}long docFieldLong(CString fieldName)
INT 型のフィールドの値を取得します。戻り値は long 整数です。フィールドが FLOAT または DOUBLE 型の場合、戻り値はフィールドの値が丸められる最も近い整数です。フィールドが LITERAL または ARRAY 型の場合、0 が返されます。 パラメーター: fieldName: 属性フィールドの名前。名前は定数である必要があります。 戻り値: フィールドの値が返されます。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
boolean ret = params.getDoc().requireAttribute("count");
return ret;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
long count = doc.docFieldLong("count");
return (double)count;
}
}float docFieldFloat(CString fieldName)
FLOAT 型のフィールドの値を取得します。戻り値は浮動小数点数です。 パラメーター: fieldName: 属性フィールドの名前。名前は定数である必要があります。 戻り値: フィールドの値が返されます。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
boolean ret = params.getDoc().requireAttribute("count");
return ret;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
float count = doc.docFieldFloat("count");
return (double)count;
}
}double docFieldDouble(CString fieldName)
DOUBLE 型のフィールドの値を取得します。戻り値は倍精度浮動小数点数です。 パラメーター: fieldName: 属性フィールドの名前。名前は定数である必要があります。 戻り値: フィールドの値が返されます。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
boolean ret = params.getDoc().requireAttribute("count");
return ret;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
double count = doc.docFieldDouble("count");
return count;
}
}CString docFieldLiteral(CString fieldName)
LITERAL 型のフィールドの値を取得します。戻り値は CString 型です。 パラメーター: fieldName: 属性フィールドの名前。名前は定数である必要があります。 戻り値: フィールドの値が返されます。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
boolean ret = params.getDoc().requireAttribute("tag");
return ret;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
CString tag = doc.docFieldLiteral("tag");
if (tag.equals("abc")) {
return 100.0;
}
return 0;
}
}long[] docFieldLongArray(CString fieldName)
INT_ARRAY 型のフィールドの値を取得します。 パラメーター: fieldName: 属性フィールドの名前。名前は定数である必要があります。 戻り値: フィールドの値が返されます。フィールドが存在しない場合、フィールドの型を変換できない場合、またはフィールドが ARRAY 型でない場合は、null が返されます。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
boolean ret = params.getDoc().requireAttribute("tags");
return ret;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
long[] tags = doc.docFieldLongArray("tags");
if (tags != null) {
if (tags.length > 0) {
return (double)tags[0];
}
}
return 0;
}
}float[] docFieldFloatArray(CString fieldName)
FLOAT_ARRAY 型のフィールドの値を取得します。 パラメーター: fieldName: 属性フィールドの名前。名前は定数である必要があります。 戻り値: フィールドの値が返されます。フィールドが存在しない場合、フィールドの型を変換できない場合、またはフィールドが ARRAY 型でない場合は、null が返されます。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
boolean ret = params.getDoc().requireAttribute("tags");
return ret;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
float[] tags = doc.docFieldFloatArray("tags");
if (tags != null) {
if (tags.length > 0) {
return (double)tags[0];
}
}
return 0;
}
}double[] docFieldDoubleArray(CString fieldName)
DOUBLE_ARRAY 型のフィールドの値を取得します。 パラメーター: fieldName: 属性フィールドの名前。名前は定数である必要があります。 戻り値: フィールドの値が返されます。フィールドが存在しない場合、フィールドの型を変換できない場合、またはフィールドが ARRAY 型でない場合は、null が返されます。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
boolean ret = params.getDoc().requireAttribute("tags");
return ret;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
double[] tags = doc.docFieldDoubleArray("tags");
if (tags != null) {
if (tags.length > 0) {
return (double)tags[0];
}
}
return 0;
}
}CString[] docFieldLiteralArray(CString fieldName)
LITERAL_ARRAY 型のフィールドの値を取得します。 パラメーター: fieldName: 属性フィールドの名前。名前は定数である必要があります。 戻り値: フィールドの値が返されます。フィールドが存在しない場合、フィールドの型を変換できない場合、またはフィールドが ARRAY 型でない場合は、null が返されます。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
boolean ret = params.getDoc().requireAttribute("tags");
return ret;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
CString[] tags = doc.docFieldLiteralArray("tags");
if (tags != null) {
if (tags.length > 0 && tags[0].equals("abc")) {
return 100.0;
}
}
return 0;
}
}OpsGeoPoint docFieldGeoPoint(CString fieldName)
GEO_POINT 型のフィールドの値を取得します。 OpsGeoPoint オブジェクトを参照する必要があります。 パラメーター: fieldName: 属性フィールドの名前。名前は定数である必要があります。 戻り値: フィールドの値が返されます。フィールドが存在しないか、フィールドの型が無効な場合は、null が返されます。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
import com.aliyun.opensearch.cava.framework.OpsGeoPoint;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
boolean ret = params.getDoc().requireAttribute("location");
return ret;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
OpsGeoPoint location = doc.docFieldGeoPoint("location");
double longitude = location.getLongitude();
if (longitude < 0 || longitude > 180.0) {
return 0;
}
return 1.0;
}
}OpsTimestamp docFieldTimestamp(CString fieldName)
TIMESTAMP 型のフィールドの値を取得します。 OpsTimestamp オブジェクトを参照する必要があります。 パラメーター: fieldName: 属性フィールドの名前。名前は定数である必要があります。 戻り値: フィールドの値が返されます。フィールドが存在しないか、フィールドの型が無効な場合は、null が返されます。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
import com.aliyun.opensearch.cava.framework.OpsTimestamp;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
boolean ret = params.getDoc().requireAttribute("timestamp");
return ret;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
OpsTimestamp timestamp = doc.docFieldTimestamp("timestamp");
return (double)timestamp.getValue();
}
}boolean declareLongVariable(CString variableName, boolean needSerialize)
LONG 型の変数を宣言します。変数は、複数のプラグイン間で情報を渡す必要がある場合、または結果に変数の値を返す場合に使用します。この関数は、スコア計算の初期化中にのみ呼び出すことができます。プラグインでは最大 30 個の変数を宣言できます。制限を超えると、エラーが返されます。
パラメーター:
variableName: 変数の名前。名前は定数である必要があります。
needSerialize: ドキュメントに変数を返すかどうかを指定します。値は定数である必要があります。有効な値: true および false。
戻り値:
変数が宣言されている場合は true が返されます。それ以外の場合は false が返されます。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsRequest;
import com.aliyun.opensearch.cava.framework.OpsDoc;
import com.aliyun.opensearch.cava.framework.OpsGeoPoint;
import com.aliyun.opensearch.cava.framework.OpsTimestamp;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
return params.getDoc().declareLongVariable("v_int64", true);
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
doc.setLongVariable("v_int64", 100);
long longValue = doc.getLongVariable("v_int64");
doc.trace("long value1: ", longValue);
return 0;
}
}boolean declareDoubleVariable(CString variableName, boolean needSerialize)
DOUBLE 型の変数を宣言します。変数は、複数のプラグイン間で情報を渡す必要がある場合、または結果に変数の値を返す場合に使用します。この関数は、スコア計算の初期化中にのみ呼び出すことができます。プラグインでは最大 30 個の変数を宣言できます。制限を超えると、エラーが返されます。
パラメーター:
variableName: 変数の名前。名前は定数である必要があります。
needSerialize: ドキュメントに変数を返すかどうかを指定します。値は定数である必要があります。有効な値: true および false。
戻り値:
変数が宣言されている場合は true が返されます。それ以外の場合は false が返されます。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsRequest;
import com.aliyun.opensearch.cava.framework.OpsDoc;
import com.aliyun.opensearch.cava.framework.OpsGeoPoint;
import com.aliyun.opensearch.cava.framework.OpsTimestamp;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
return params.getDoc().declareDoubleVariable("v_double", true);
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
doc.setDoubleVariable("v_double", 100);
long doubleValue = doc.getDoubleVariable("v_double");
doc.trace("double value1: ", doubleValue);
return 0;
}
}void setLongVariable(CString variableName, long value)
LONG 型の変数の値を設定します。この関数は、スコア計算中に呼び出す必要があります。変数は初期化中に宣言する必要があります。
パラメーター:
variableName: 変数の名前。
value: 変数の値。
void setDoubleVariable(CString variableName, long value)
DOUBLE 型の変数の値を設定します。この関数は、スコア計算中に呼び出す必要があります。変数は初期化中に宣言する必要があります。
パラメーター:
variableName: 変数の名前。
value: 変数の値。
long getLongVariable(CString variableName)
LONG 型の変数の値を返します。この関数は、スコア計算中に呼び出す必要があります。変数は初期化中に宣言する必要があります。
パラメーター:
variableName: 変数の名前。
戻り値:
変数の値が返されます。変数が宣言されていないか、変数の値が設定されていない場合は、デフォルトで 0 が返されます。
double getDoubleVariable(CString variableName)
DOUBLE 型の変数の値を返します。この関数は、スコア計算中に呼び出す必要があります。変数は初期化中に宣言する必要があります。変数が宣言されていないか、変数の値が設定されていない場合は、デフォルトで 0 が返されます。
パラメーター:
variableName: 変数の名前。
戻り値:
変数の値が返されます。変数が宣言されていないか、変数の値が設定されていない場合は、デフォルトで 0 が返されます。
void trace(byte value)
BYTE 型のトレース情報を表示します。トレース情報はドキュメントに表示でき、検索テスト中にのみ表示できます。 パラメーター: value: 表示するコンテンツ。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
return true;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
byte value = 1;
doc.trace(value);
return 0.0;
}
}void trace(CString prefix, byte value)
BYTE 型のトレース情報を表示します。トレース情報はドキュメントに表示でき、検索テスト中にのみ表示できます。 パラメーター: prefix: 検索を容易にするトレースプレフィックス。 value: 表示するコンテンツ。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
return true;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
byte value = 1;
doc.trace("byte value: ", value); // バイト値:
return 0.0;
}
}void trace(short value)
SHORT 型のトレース情報を表示します。トレース情報はドキュメントに表示でき、検索テスト中にのみ表示できます。 パラメーター: value: 表示するコンテンツ。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
return true;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
short value = 1;
doc.trace(value);
return 0.0;
}
}void trace(CString prefix, short value)
SHORT 型のトレース情報を表示します。トレース情報はドキュメントに表示でき、検索テスト中にのみ表示できます。 パラメーター: prefix: 検索を容易にするトレースプレフィックス。 value: 表示するコンテンツ。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
return true;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
short value = 1;
doc.trace("short value: ", value); // short 値:
return 0.0;
}
}void trace(int value)
INT 型のトレース情報を表示します。トレース情報はドキュメントに表示でき、検索テスト中にのみ表示できます。 パラメーター: value: 表示するコンテンツ。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
return true;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
int value = 1;
doc.trace(value);
return 0.0;
}
}void trace(CString prefix, int value)
INT 型のトレース情報を表示します。トレース情報はドキュメントに表示でき、検索テスト中にのみ表示できます。 パラメーター: prefix: 検索を容易にするトレースプレフィックス。 value: 表示するコンテンツ。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
return true;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
int value = 1;
doc.trace("int value: ", value); // int 値:
return 0.0;
}
}void trace(long value)
LONG 型のトレース情報を表示します。トレース情報はドキュメントに表示でき、検索テスト中にのみ表示できます。 パラメーター: value: 表示するコンテンツ。
サンプルコード:
package users.scorer;import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
return true;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
long value = 1;
doc.trace(value);
return 0.0;
}
}void trace(CString prefix, long value)
LONG 型のトレース情報を表示します。トレース情報はドキュメントに表示でき、検索テスト中にのみ表示できます。 パラメーター: prefix: 検索を容易にするトレースプレフィックス。 value: 表示するコンテンツ。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
return true;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
long value = 1;
doc.trace("long value: ", value); // long 値:
return 0.0;
}
}void trace(float value)
FLOAT 型のトレース情報を表示します。トレース情報はドキュメントに表示でき、検索テスト中にのみ表示できます。 パラメーター: value: 表示するコンテンツ。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
return true;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
float value = 1;
doc.trace(value);
return 0.0;
}
}void trace(CString prefix, float value)
FLOAT 型のトレース情報を表示します。トレース情報はドキュメントに表示でき、検索テスト中にのみ表示できます。 パラメーター: prefix: 検索を容易にするトレースプレフィックス。 value: 表示するコンテンツ。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
return true;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
float value = 1.0;
doc.trace("float value: ", value); // float 値:
return 0.0;
}
}void trace(double value)
DOUBLE 型のトレース情報を表示します。トレース情報はドキュメントに表示でき、検索テスト中にのみ表示できます。 パラメーター: value: 表示するコンテンツ。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
return true;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
double value = 1;
doc.trace(value);
return 0.0;
}
}void trace(CString prefix, double value)
DOUBLE 型のトレース情報を表示します。トレース情報はドキュメントに表示でき、検索テスト中にのみ表示できます。 パラメーター: prefix: 検索を容易にするトレースプレフィックス。 value: 表示するコンテンツ。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
return true;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
double value = 1.0;
doc.trace("double value: ", value); // double 値:
return 0.0;
}
}void trace(CString value)
CString 型のトレース情報を表示します。トレース情報はドキュメントに表示でき、検索テスト中にのみ表示できます。 パラメーター: value: 表示するコンテンツ。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
return true;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
CString value = "abc";
doc.trace(value);
return 0.0;
}
}void trace(CString prefix, CString value)
CString 型のトレース情報を表示します。トレース情報はドキュメントに表示でき、検索テスト中にのみ表示できます。 パラメーター: prefix: 検索を容易にするトレースプレフィックス。 value: 表示するコンテンツ。
サンプルコード:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsDoc;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
return true;
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
CString value = "abc";
doc.trace("CString value: ", value); // CString 値:
return 0.0;
}
}