排序脚本在opensearch中的生命周期描述如下:
创建排序脚本,创建脚本时需要指定应用名称、对应的版本ID和脚本名称,为了区分脚本名称不要和在opensearch控制台上创建的表达式名称相同。
上传脚本代码,脚本是使用opensearch提供的编程语言cava编写的代码,可以为未发布的脚本反复上传脚本代码。
编译脚本,上传脚本内容之后,可以通过编译指令查看是否有语法错误,用户可以对未发布的脚本进行反复编译。
发布脚本,脚本编译成功之后,如果需要应用到线上,即可对脚本进行发布操作,脚本发布之后不能再次上传代码和编译,只能删除。
删除脚本,对不需要的脚本可以进行删除,删除之前请确保查询不再使用相关排序脚本,否则查询会报错。
查看脚本,在上述各种操作过程中可以随时查看脚本状态。
sortscript是一个python命令行工具(python版本大于2.7),方便用户创建、维护、发布、删除排序脚本,用户可以通过访问获取。sortscript在使用sortscript之前需要用户在tools_conf.py中配置自己的AK与secret等信息。
使用sortscript创建排序脚本示例:
1.创建脚本
2.上传脚本代码,目录中有BasicSimilarityScorer.cava 和 IntelligenceAlgorithm.cava,cava具体的语法规则可以。
3.编译脚本,编译过程中可以能报一些语法错误,请根据提示进行修改。
4.发布脚本,确定脚本不需要再做修改之后,即可进行发布。
5.查看脚本,如果指定scriptName表名需要查看某个脚本,否则会list出版本下的所有脚本。
6.查看文件内容。
7.删除文件。
8.删除脚本,确定查询中没有在使用脚本时,在进行删除。
首先确定脚本已经发布。
在查询中设置second_rank_name为脚本名称,为了区分脚本名称不要和在opensearch控制台上创建的表达式名称相同。
在查询中设置second_rank_type为cava_script。