【常见问题】解决 Doris 大数据量排序丢失数据问题


Administrator
飞致云 发布于 2022-10-18 / 448 阅读 / 0 评论 /
1 问题现象如图,按照字段【月】设置文本下拉组件,月份是有很多值的然后将【月】配置为降序此时下拉框中只有两个月份了,其他月份都丢了2 解决方案在 DataEase 安装目录的 conf/be.conf 文件中添加如下参数即可。enable_spilling = true注意:从 DataEase V

1 问题现象

如图,按照字段【月】设置文本下拉组件,月份是有很多值的
image-1666061356068

然后将【月】配置为降序
image-1666061364743

此时下拉框中只有两个月份了,其他月份都丢了
image-1666061369565

2 解决方案

在 DataEase 安装目录的 conf/be.conf 文件中添加如下参数即可。

enable_spilling = true

image-1666061379683

注意:

从 DataEase V1.13.1 版本开始 DataEase 已默认配置了此参数,无需修改。但如果之前安装的版本是 V1.13.0 或更早的版本,即使升级到最新版本此参数也不会生效,需要连接 Doris 数据库修改此参数,步骤如下:

docker exec -it doris-fe mysql -uroot -P9030 -h127.0.0.1
SET GLOBAL enable_spilling = true;

修改后可通过如下命令检查参数设置是否成功:

show variables like 'enable_spilling';

image-1666061412206

3 enable_spilling 参数说明

来源于官网文档:变量 - Apache Doris

用于设置是否开启大数据量落盘排序。默认为 false,即关闭该功能。当用户未指定 ORDER BY 子句的 LIMIT 条件,同时设置 enable_spilling 为 true 时,才会开启落盘排序。该功能启用后,会使用 BE 数据目录下 doris-scratch/ 目录存放临时的落盘数据,并在查询结束后,清空临时数据。

该功能主要用于使用有限的内存进行大数据量的排序操作。

注意,该功能为实验性质,不保证稳定性,请谨慎开启。



是否对你有帮助?