简介
高级配置中的查询配置主要为用户提供自定义查询配置的功能
系统默认为用户提供四个查询配置版本,后缀为_online_config_v1、_online_config_v2、_online_config_v3的查询配置版本由系统默认创建,初始状态默认使用_online_config_v3版本
查询配置文件qrs.json
|
键 |
值 |
描述 |
|
__cluster_name |
general |
自定义 |
|
primary_table_name |
$primary_table_name |
主表表名 |
|
qrs_connection_timeout |
750 |
查询超时时间(毫秒) |
|
qrs_request_compress_type |
z_speed_compress |
配置Qrs向各个子节点发送request是否压缩以及压缩的类型,可以不配置,默认情况下是不压缩。 compress_type表示压缩类型,目前支持三种类型,默认取值为no_compress:
|
|
qrs_return_hits_limit |
5000 |
查询返回文档数 |
查询配置文件:zones/general/default_biz.json
|
键 |
值 |
描述 |
|
cava_alloc_size_limit |
40 |
cava query级别能分配的最大内存(单位:MB) |
|
cava_compile_thread_num |
1 |
默认值 |
|
cava_loop_and_func_limit |
10000 |
默认值 |
|
cava_max_variable_count |
10000 |
默认值 |
|
cava_module_cache_size |
256 |
缓存query里面传递source code的个数,超过则开始LRU淘汰 |
|
default_index |
$default_index |
默认进行查询的索引名称,如果在query中未指明查询的索引名称时,将在该索引中查找;比方说query=nid:1 指定了在nid索引下查找, query='mp3'未指定索引名称,会使用默认的index |
|
default_rank_size |
1000000 |
默认命中的文档数 |
|
default_rerank_size |
200 |
默认参与精排个数 |
|
early_termination_min_wait_time |
100 |
默认值 |
|
early_termination_trigger_result_percent |
0.85 |
默认值 |
|
early_termination_wait_time_factor |
2 |
默认值 |
|
enable_cava |
false |
是否启用cava |
|
filter_field |
||
|
hash_mode |
$hash_mode |
例:"hash_mode": { "hash_field" : "nid", "hash_function" : "HASH" } 表示根据nid 字段使用HASH 方法计算hash值,进行分partition |
|
latency_upper_limit_ms |
60 |
默认值 |
|
latency_upper_limit_percent |
2 |
默认值 |
|
main_online_index |
$main_online_index |
默认值 |
|
primary_table_name |
$primary_table_name |
主表表名 |
|
probe_percent |
0.05 |
为了满足内存非lock等需要预热的场景,配置probe_percent为大于0.05的值 |
|
return_hit_rewrite_ratio |
1.2 |
为了尽量不有损效果,searcher上实际排序出来的条数以及序列化之后的条数,(start+hit)/partition之后的值会按照业务场景乘以一个大于1的系数限制条件: return_hit_rewrite_ratio 合理取值范围是(1,partition_count);对于类似inshop 路由到单列的查询, 会自动不做这个优化处理; |
|
return_hit_rewrite_threshold |
500 |
start + hit 大于这个阈值时, 开启这个优化 |
|
searcher_cache_latency_limit_ms |
1 |
Searcher Cache只会缓存 (rank_latency + rerank_latency) > latency_limit 的query的查询结果,因为被cache住的query的latency越大,cache对性能提升的效果越明显。单位时ms,默认值是1ms。 |
|
searcher_degrade_rank_size |
5000 |
命中的文档数 |
|
searcher_degrade_rerank_size |
100 |
参与精排个数 |
后缀为_online_config_edit的查询配置版本可由用户进行“编辑”,添加新分词词条后,点击“发布”,系统会自动生成一个新的高级配置版本,后缀依次递增,如第二次发布时高级配置版本名称后缀为_online_config_v4。各个查询配置版本之间可由备注显示区分用途。
添加查询配置
-
创建/修改查询配置,选择配置中心>高级配置>查询配置
1.1.在高级配置中,增加查询配置,设置方法与原词典配置相同
截图展示配置中心 > 高级配置 > 查询配置页面,页面中列出已有的查询配置版本,可通过操作栏进行编辑、查看或删除等操作。
1.2.用户需先编辑/查看版本,再编辑/查看查询配置中的具体文件
查询配置文件列表中包含 zones 目录和 qrs.json 文件,单击 qrs.json 右侧的编辑进入配置编辑页面。
1.3.找到需要调整的参数,点击右侧操作栏的编辑按钮进行修改
以 qrs.json 文件为例,配置项以表格形式呈现,包含 qrs_request_compress_type、qrs_connection_timeout、primary_table_name、qrs_return_hits_limit、__cluster_name 等键值对,类型分为默认值和自定义。
1.4.编辑完成后点击发布就会产生一个新的版本
发布成功后,高级配置列表中将新增一个查询配置版本,版本名称后缀依次递增(如_online_config_v4),状态显示为"未使用"。
-
在线生效
在运维管理界面点击配置更新,选择在线配置,找到刚发布的查询配置版本,选择目标集群,点击确定
注意:查询配置版本必选,默认选择最新的查询配置版本;目标集群必选,可多选,默认不选
-
运维管理
在运维管理列表页我们可以查看当前的查询配置生效版本、查询配置最新版本以及词典配置生效版本、词典配置最新版本
删除查询配置
状态为“未使用”的查询配置版本,可以直接在高级配置 > 查询配置界面删除
查询配置列表中,状态为"未使用"的版本在操作栏显示删除按钮,单击删除即可删除该查询配置版本。
状态为“使用中”的查询配置版本,只可进行“查看”,若需删除,请在运维中心>运维管理>配置更新中选择“查询配置版本”时引用其他查询配置版本,点击确定,当该“词典配置版本”处于“未使用”的状态时即可删除。
注意事项
-
线上使用的版本只可查看,无法删除。