ソートスクリプトのライフサイクル
OpenSearchにおけるソートスクリプトのライフサイクルについて以下に説明します。
ソートスクリプトを作成します。このプロセスでは、アプリケーションの名前とバージョンID、およびソートスクリプトの名前を指定する必要があります。識別を容易にするために、ソートスクリプトの名前は、OpenSearchコンソールで作成された式の名称とは異なる名前にすることをお勧めします。
スクリプトコードをアップロードします。ソートスクリプトは、OpenSearchが提供するプログラミング言語であるCavaを使用して記述されます。未公開のソートスクリプトのスクリプトコードは繰り返しアップロードできます。
ソートスクリプトをコンパイルします。スクリプトコードをアップロードした後、コンパイルコマンドを実行して構文を確認できます。未公開のソートスクリプトは繰り返しコンパイルできます。
ソートスクリプトを公開します。ソートスクリプトのコンパイル後、オンラインアプリケーションにソートスクリプトを適用する場合は、ソートスクリプトを公開できます。ソートスクリプトが公開されると、スクリプトコードのアップロードやソートスクリプトの再コンパイルはできなくなります。ソートスクリプトを削除することのみ可能です。
ソートスクリプトを削除します。不要になったソートスクリプトは削除できます。ソートスクリプトを削除する前に、クエリでソートスクリプトが使用されていないことを確認してください。使用されている場合は、クエリエラーが返されます。
ソートスクリプトを表示します。上記のいずれのプロセスにおいても、ソートスクリプトのステータスをいつでも表示できます。
sortscript
SortScriptは、バージョン2.7以降のPythonベースのコマンドラインツールです。このツールを使用すると、ソートスクリプトを簡単に作成、維持、公開、および削除できます。ダウンロードできます。SortScriptを使用する前に、tools_conf.pyファイルでAccessKey IDとAccessKeyシークレットを設定する必要があります。
SortScriptを使用してソートスクリプトを作成する例を以下に示します。
1. ソートスクリプトを作成します。
python ./sortscript create --appName script_test --appVersionId 12345678 --scriptName script1
2. BasicSimilarityScorer.cavaファイルとIntelligenceAlgorithm.cavaファイルを含むスクリプトコードをアップロードします。Cavaの構文の詳細については、Cavaガイドを参照してください。
python ./sortscript updatecontent --appName script_test --appVersionId 12345678 --scriptName script1 --scriptFileName BasicSimilarityScorer.cava --localFile ./BasicSimilarityScorer.cava
python ./sortscript updatecontent --appName script_test --appVersionId 12345678 --scriptName script1 --scriptFileName IntelligenceAlgorithmScorer.cava --localFile ./IntelligenceAlgorithmScorer.cava
3. ソートスクリプトをコンパイルします。ソートスクリプトをコンパイルすると、特定の構文エラーが返される場合があります。プロンプトに基づいてソートスクリプトを修正してください。
python ./sortscript compile --appName script_test --appVersionId 12345678 --scriptName script1
4. ソートスクリプトを公開します。これ以上変更する必要がないことを確認したら、ソートスクリプトを公開します。
python ./sortscript release --appName script_test --appVersionId 12345678 --scriptName script1
5. ソートスクリプトを表示します。scriptNameパラメータを設定して特定のソートスクリプトを表示できます。設定しない場合は、現在のアプリケーションバージョン内のすべてのソートスクリプトが一覧表示されます。
python ./sortscript list --appName script_test --appVersionId 12345678 --scriptName script1
python ./sortscript list --appName script_test --appVersionId 12345678
6. コードファイルの詳細を表示します。
python ./sortscript getcontent --appName script_test --appVersionId 12345678 --scriptName script1 --scriptFileName BasicSimilarityScorer.cava
python ./sortscript getcontent --appName script_test --appVersionId 12345678 --scriptName script1 --scriptFileName IntelligenceAlgorithmScorer.cava
7. コードファイルを削除します。
python ./sortscript deleteScriptFile --appName script_test --appVersionId 12345678 --scriptName script1 --scriptFileName BasicSimilarityScorer.cava
python ./sortscript deleteScriptFile --appName script_test --appVersionId 12345678 --scriptName script1 --scriptFileName IntelligenceAlgorithmScorer.cava
8. ソートスクリプトを削除します。ソートスクリプトを削除する前に、クエリでソートスクリプトが使用されていないことを確認してください。
python ./sortscript delete --appName script_test --appVersionId 12345678 --scriptName script1
クエリでソートスクリプトを使用して結果をソートする
ソートスクリプトが公開されていることを確認します。
クエリのsecond_rank_nameパラメータをソートスクリプトの名前に設定します。識別を容易にするために、ソートスクリプトの名前は、OpenSearchコンソールで作成された式の名称とは異なる名前にすることをお勧めします。
クエリのsecond_rank_typeパラメータをcava_scriptに設定します。
クエリ結果を表示します。ソートスクリプトが存在しない場合、クエリ結果は返されますが、エラーも返されます。