查询配置

更新时间:
复制 MD 格式

简介

集群配置中的查询配置主要为用户提供自定义查询配置的功能

在左侧导航选择配置管理 > 查询配置,页面顶部包含在线配置查询配置cava 配置三个 Tab 页签。选择查询配置页签后,可查看查询配置版本列表,包含版本号、备注、状态(使用中/未使用)、创建时间和操作列。对使用中的版本可执行查看编辑操作,对未使用的版本还可执行删除操作。

添加查询配置

查看/编辑查询配置,选择配置中心>集群配置>查询配置

1.选择需要编辑的查询配置。

2.用户需先编辑/查看版本,再编辑/查看查询配置中的具体文件。选择后进入查询配置 V1 版本的编辑页面,查询配置文件列表中包含 zones 文件夹(操作栏为查看)和 qrs.json 配置文件(操作栏为编辑)。

3.找到需要调整的参数,点击右侧操作栏的编辑按钮进行修改。打开具体配置文件后,页面以表格展示配置参数,包含描述类型操作五列。参数包括 algo_model_config_pathdist_uniq_max_groupdist_uniq_thresholdprimary_table_nameqrs_connection_timeoutqrs_request_compressqrs_result_compressqrs_rule 等,每行均可单击编辑修改对应值。

4.编辑完成后点击发布就会产生一个新的版本。修改完成后,单击页面顶部的发布新版本按钮发布配置。

5.调整后需前往「集群管理-配置更新页面」,点击更新并选择版本后生效。点击页面右侧的更新按钮,将新版本配置推送生效。

6.生成后可在功能扩展>变更中查看配置生效进度。更新触发后,可在左侧导航栏功能扩展 > 变更历史页面查看变更进度。推送在线配置的变更流程包含以下子步骤:

  1. 参数检查

  2. 创建任务

  3. 配置合并

  4. 提交到在线集群

  5. 等待配置生效

每个子步骤显示执行状态(成功或进行中),可展开查看节点详情。

删除查询配置

状态为”未使用”的查询配置版本,可以直接在配置中心 > 查询配置界面删除。

参数说明

查询配置文件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:

  • no_compress ,不压缩

  • default_compress , zlibZ_DEFAULT_COMPRESSION默认压缩

  • z_speed_compress , zlibZ_BEST_SPEED压缩

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住的querylatency越大,cache对性能提升的效果越明显。单位时ms,默认值是1ms。

searcher_degrade_rank_size

5000

命中的文档数

searcher_degrade_rerank_size

100

参与精排个数

注意事项

  • 所有版本一旦发布后,不再支持变更配置内容

  • 已发布的版本支持编辑并生成新版本

  • 基于已有版本编辑,系统会保存唯一的一份最新草稿

  • 只有未使用的版本支持删除,使用中的版本不支持删除