Doris查询历史查询执行情况:
SELECT
time AS '操作时间',
user AS '执行用户',
client_ip AS '客户端IP',
db AS '数据库',
query_time AS '执行时长(ms)',
scan_bytes AS '扫描数据量',
state AS '执行状态',
stmt AS 'SQL语句'
FROM __internal_schema.audit_log
WHERE stmt LIKE '%delete from%'
AND state = 'UNKNOWN'
AND time >= '2025-12-14 00:00:00'
AND time < '2025-12-15 08:00:00'
ORDER BY time DESC;
查看tablet使用情况:
show tablets from XXXtable\G;
show tablet XXXtabletid\G;
show tablet diagnosis XXXtabletid\G; #分析tablet
查看数据使用情况:
show data;
show data from XXdb.XXtable;
show data order by ReplicaCount desc, Size asc;
资源配置
存储:
alter database test set data quota XXX; #数据量配额
alter database test set replica quota XXX; #副本数配额
计算:
show workload groups
show workload groups like 'test_group%'
alter workload group test_group properties ( 'cpu_hard_limit'='5%' );
cpu_share:CPU软限模式下生效,代表WG可获得CPU时间的权重,值越大可获得的CPU时间越多。
memory_limit:当前WG最大可用内存百分比,默认值代表不限制内存。所有WG的memory_limit累加值不可以超过100%。
如果一个机器的内存为64G,WG的memory_limit配置为50%,那么实际物理内存=64G*90%*50%=28.8G,这里的90%是BE进程可用内存配置的默认值。
enable_memory_overcommit:用于控制当前WG的内存限制是硬限还是软限(true-软限,false-硬限)。
硬限-系统检测到WG内存使用超出限制后,将立即cancel组内内存占用最大的若干个任务,以释放超出的内存。
软限-如果系统有空闲内存资源则该WG在超出memory_limit的限制后可继续使用系统内存,
在系统总内存紧张时会cancel组内内存占用最大的若干个任务,释放部分超出的内存以缓解系统内存压力。
cpu_hard_limit:CPU硬限制模式下生效,WG最大可用CPU百分比,WG的最大CPU用量都不能超过cpu_hard_limit,所有WG的cpu_hard_limit累加值不能超过100%。
max_concurrency:最大查询并发数,默认不限制。运行中的查询数量达到最大并发时,新来的查询会进入排队的逻辑。
max_queue_size:查询排队队列的长度,当排队队列已满时,新来的查询会被拒绝。默认值为0,含义是不排队。当排队队列已满时,新来的查询会直接失败。
queue_timeout:查询在排队队列中的最大等待时间,单位为毫秒。如果查询在队列中的排队时间超过这个值,那么就会直接抛出异常给客户端。默认值为0,含义是不排队,查询进入队列后立即返回失败。
scan_thread_num:当前WG用于scan的线程个数。当该属性为 -1,含义是不生效,此时在BE上的实际取值为BE配置中的doris_scanner_thread_pool_thread_num。
max_remote_scan_thread_num:读外部数据源的scan线程池的最大线程数。当该属性为-1时,实际的线程数由BE自行决定,通常和核数相关。
min_remote_scan_thread_num:读外部数据源的scan线程池的最小线程数。当该属性为-1时,实际的线程数由BE自行决定,通常和核数相关。
read_bytes_per_second:含义为读Doris内表时的最大IO吞吐,默认值为-1,不限制IO带宽。
需要注意的是这个值并不绑定磁盘,而是绑定文件夹。如Doris配置了2个文件夹用于存放内表数据,每个文件夹的最大读IO不会超过该值。
remote_read_bytes_per_second:含义为读Doris外表时的最大IO吞吐,默认值为 -1,不限制IO带宽。
权限配置
查看所有授权:
show all grants
SHOW GRANTS FOR test@'%';
授权WG:
grant usage_priv on workload group 'test_group' to role 'test'; #角色
grant usage_priv on workload group 'test_group' to 'test'; #用户
取消授权
revoke usage_priv on workload group 'test_group' from role 'test'; #角色
revoke usage_priv on workload group 'test_group' from 'test'; #用户
库表授权:
GRANT SELECT_PRIV,LOAD_PRIV,ALTER_PRIV,CREATE_PRIV,DROP_PRIV ON internal.test.* TO 'test'@'%';