doris运维命令

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’@‘%’;

### Apache Doris 运维必备知识与技能点总结 #### 1. **Doris 的基本架构理解** 要掌握 Doris运维工作,首先需要熟悉其核心组件及其功能。Doris 主要分为两个部分:FE(Frontend)和 BE(Backend)。FE 负责元数据管理和查询计划生成;BE 则负责具体的存储和计算任务[^1]。 #### 2. **高可用集群配置** 在 Kubernetes (K8s) 环境下部署 Doris 高可用集群是一项重要技能。这包括以下几个方面: - 使用 `ConfigMap` 实现自定义配置文件的管理。 - 创建并应用 `Secret` 来安全地存储敏感信息,例如数据库密码或其他认证凭证。 - 定义 `Service` 将内部服务暴露到外部网络,通常通过 `NodePort` 或其他方式实现。 - 正确部署 FE 和 BE 组件,并确保它们之间的通信正常。 - 初始化用户权限和其他必要的环境设置[^2]。 #### 3. **监控与日志分析** 监控系统的健康状态以及及时排查问题是日常运维的重要环节。可以利用 Prometheus、Grafana 等工具来收集指标数据,并建立告警机制以便快速响应异常情况。此外还需要关注以下几点: - 查看系统运行状况的日志记录,定位潜在错误源。 - 设置合理的阈值范围用于检测性能瓶颈或者资源耗尽的风险。 #### 4. **备份恢复策略** 数据的安全性和可靠性至关重要,因此制定完善的备份方案必不可少。可以通过定期导出快照或将增量更新保存至远程存储等方式保护关键数据免受丢失威胁。当发生意外删除或损坏时能够迅速还原最新版本的数据集[^2]。 #### 5. **升级维护流程** 当新版本发布后,了解如何平稳过渡现有生产环境非常重要。具体操作可能涉及停机时间最小化的滚动重启方法论或是蓝绿部署模式的选择等技术细节处理[^3]。 #### 6. **容器化部署能力** 掌握基于 Docker 的单节点或多节点伪分布式的安装过程有助于简化本地开发调试阶段的工作量。同时学习编写标准镜像描述文档(Dockerfile),组合多个关联服务实例(docker-compose.yml)[^3]也是不可或缺的一部分。 ```bash docker run --name doris-be -d apache/doris:latest /path/to/be/startup.sh ``` 以上命令展示了启动一个 Backend 容器的例子。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值