运维
本主题提供了一些与运维相关问题的解答。
可以清理 trash 目录吗?
您可以配置 FE 参数 catalog_trash_expire_second 来指定文件在 FE trash 目录中保留的时间(默认:24 小时)。
BE 参数 trash_file_expire_time_sec 控制 BE 垃圾清理间隔(默认:24 小时)。
在执行 DROP TABLE 或 DROP DATABASE 后,数据首先进入 FE 垃圾箱并保留一天,在此期间可以通过 RECOVER 恢复。之后,它会移动到 BE 垃圾箱,也会保留 24 小时。
tablet 是否有主从关系?如果一些副本丢失,会对查询产生什么影响?
如果表属性 replicated_storage 设置为 true,写入使用主从机制:数据首先写入主副本,然后同步到其他副本。多个副本通常对 查询性能没有重大影响。
可以通过监控界面测量任务的 CPU 和内存使用情况吗?
您可以查看 fe.audit.log 中的 cpucostns 和 memcostbytes 字段。
在更新表上创建物化视图时返回错误 "The aggregation type of column[now_time] must be same as the aggregate type of base column in aggregate table"。更新表支持物化视图吗?
该错误表明物化视图的聚合类型必须与基表的聚合类型匹配。对于更新表,您只能通过物化视图来调整它们的排序键顺序。
例如,如果基表 tableA 有列 k1、k2、k3,其中 k1 和 k2 为排序键。当您的查询包含 WHERE k3=x 子句并需要加速前缀索引时,您可以创建一个以 k3 为第一列的物化视图:
CREATE MATERIALIZED VIEW k3_as_key AS
SELECT k3, k2, k1
FROM tableA;
如何获取具有精确时间戳的导入量指标?query_latency 是平均响应时间的指标吗?
表级导入指标可以从以下地址获取:http://user:password@fe_host:http_port/metrics?type=json&with_table_metrics=all。
集群级数据可以从以下地址获取:http://fe_host:http_port/api/show_data(增量必须手动计算)。
query_latency 提供百分位查询响应时间。
SHOW PROC '/backends' 和 SHOW BACKENDS 有什么区别?
SHOW PROC '/backends' 从当前 FE 检索元数据,可能会有延迟。而 SHOW BACKENDS 从 Leader FE 检索元数据,是权威的。
StarRocks 有超时机制吗?为什么一些客户端连接会持续很长时间?
有。您可以配置系统变量 wait_timeout(默认:8 小时)来调整连接超时。
示例:
SET GLOBAL wait_timeout = 3600;
可以在一个语句中授权多个表吗?
不可以。不支持类似 GRANT <priv> on db1.tb1, db1.tb2 的语句。
当授予了 ALL TABLES 权限时,可以撤销特定表的权限吗?
不支持子集撤销。建议在数据库或表级别授予权限。
StarRocks 支持表级和行级权限吗?
支持表级访问控制。开源版不支持行级和列级访问控制。
如果主键表没有分区,冷热数据分离仍然有效吗?
不。冷热分离基于分区。
如果数据错误地放置在根目录,可以更改数据存储路径吗?
可以。更新 be.conf 中的 storage_root_path 以添加新磁盘,并使用分号分隔路径。
如何检查 FE 的 StarRocks 版本?
运行 SHOW FRONTENDS; 并检查 Version 字段。
StarRocks 支持带 有嵌套子查询的 DELETE 吗?
从 v2.3 开始,主键表支持完整的 DELETE WHERE 语法。 详情请参见 Reference - DELETE。
对于动态分区,如果不希望旧分区自动清理,可以简单省略 dynamic_partition.start 吗?
不可以。需要将其设置为一个非常大的值。
如果 BE 机器内存故障需要维护,该怎么办?
Decommission 该 BE。修复后,将其重新添加到集群。