StarRocks系统表

sql 复制代码
-- 查看 statistics_ 数据库下的所有表
USE _statistics_;
SHOW TABLES;

-- 查看 information_schema 数据库下的所有表
USE information_schema;
SHOW TABLES;

StarRocks 系统表详解

一、_statistics_ 数据库(统计信息)

表名 用途 说明
column_statistics 列级统计信息 存储表中列的统计信息,如NDV、NULL值数量等
external_column_statistics 外部表列统计 外部数据源(如Hive、Iceberg)的列统计信息
external_histogram_statistics 外部表直方图统计 外部数据源的直方图统计信息
histogram_statistics 直方图统计 数据分布的直方图统计,用于查询优化
pipe_file_list 管道文件列表 记录PIPE导入的文件信息
table_statistic_v1 表统计信息V1 表级别的统计信息(旧版本)
task_run_history 任务运行历史 统计信息收集任务的历史记录

二、information_schema 数据库(元数据和系统信息)

1. 集群信息表

表名 用途
schemata 所有数据库信息
tables 所有表的基本信息
columns 所有表的列信息
partitions 表分区信息
views 视图信息
materialized_views 物化视图信息

2. 权限相关表

表名 用途
user_privileges 用户权限信息
schema_privileges 数据库权限
table_privileges 表权限
column_privileges 列权限

3. BE(后端节点)监控表

表名 用途
be_metrics BE性能指标
be_tablets BE上的tablet信息
be_threads BE线程信息
be_logs BE日志信息
be_configs BE配置信息
be_bvars BE内部变量
be_txns BE事务信息
be_compactions BE压缩信息
be_cloud_native_compactions 云原生压缩信息
be_datacache_metrics 数据缓存指标

4. FE(前端节点)监控表

表名 用途
fe_metrics FE性能指标
fe_tablet_schedules FE tablet调度信息

5. 任务和作业表

表名 用途
loads 导入作业信息
stream_loads 流式导入作业
routine_load_jobs 例行导入作业
task_runs 任务运行信息
tasks 任务定义
load_tracking_logs 导入跟踪日志

6. 配置和变量表

表名 用途
global_variables 全局系统变量
session_variables 会话变量
verbose_session_variables 详细的会话变量

7. 约束和关系表

表名 用途
table_constraints 表约束(主键、唯一键)
key_column_usage 键列使用情况
referential_constraints 外键约束

8. 管道和外部表

表名 用途
pipes 数据管道定义
pipe_files 管道文件信息

9. 其他系统表

表名 用途
character_sets 字符集信息
collations 排序规则
engines 存储引擎信息
events 事件信息
routines 存储过程和函数
triggers 触发器
statistics 优化器统计信息
tables_config 表配置信息
temp_tables 临时表信息

三、实用查询示例

1. 查看数据库和表信息

sql 复制代码
-- 查看所有数据库
SELECT * FROM information_schema.schemata;
sql 复制代码
-- 查看所有表和类型
SELECT table_schema AS '数据库',
       table_name   AS '表名',
       table_type   AS '类型',
       engine       AS '引擎',
       table_rows   AS '行数',
       create_time  AS '创建时间'
FROM information_schema.tables
WHERE table_schema NOT IN ('_statistics_', 'information_schema')
ORDER BY table_schema, table_name;

2. 监控BE状态

sql 复制代码
-- 查看BE性能指标
SELECT * FROM information_schema.be_metrics LIMIT 10;
复制代码
sql 复制代码
-- 查看BE上的tablet分布
SELECT be_id, COUNT(*) AS tablet_count
FROM information_schema.be_tablets
GROUP BY be_id;

3. 查看导入作业

sql 复制代码
-- 查看最近的导入作业
SELECT job_id,
       label,
       state,
       progress,
       create_time
FROM information_schema.loads
ORDER BY create_time DESC
LIMIT 10;

4. 查看统计信息

sql 复制代码
-- 查看表的统计信息
SELECT db_id,
       table_id,
       column_name,
       row_count,
       ndv,
       null_count
FROM _statistics_.column_statistics
LIMIT 10;

5. 查看系统变量

sql 复制代码
-- 查看重要系统变量
SELECT *
FROM information_schema.global_variables
WHERE variable_name LIKE '%timeout%'
   OR variable_name LIKE '%parallel%';

四、重要系统表的用途总结

用于监控和运维:

  1. be_metrics / fe_metrics - 性能监控

  2. be_logs / load_tracking_logs - 故障排查

  3. be_tablets - 数据分布监控

用于查询优化:

  1. _statistics_.column_statistics - 查询计划优化

  2. information_schema.statistics - 优化器统计

用于元数据管理:

  1. tables / columns - 数据结构查看

  2. partitions - 分区管理

  3. user_privileges - 权限管理

用于作业管理:

  1. loads / stream_loads - 导入作业监控

  2. task_runs - 任务执行情况

这些系统表是管理和监控 StarRocks 集群的重要工具,特别是对于性能调优、故障排查和日常运维非常有帮助。

相关推荐
上海云盾-小余13 小时前
应用层漏洞实战防护:SQL 注入、XSS、文件上传漏洞一站式加固方案
数据库·sql·xss
鸽芷咕13 小时前
从语法兼容到语义一致:深度解析金仓如何“无感”承接MySQL复杂业务
数据库·mysql
新缸中之脑13 小时前
AI智能体评估指南
数据库·人工智能·oracle
add45a13 小时前
Python类型提示(Type Hints)详解
jvm·数据库·python
曾阿伦13 小时前
SQL 用法详解:从基础操作到进阶实战的全场景指南
数据库·sql
NCU_wander13 小时前
操作系统/数据库和业务应用/中间件/硬件之间的关系
数据库·中间件
Navicat中国13 小时前
如何从0到1完成函数设计 | Navicat 教程
数据库·函数·navicat
jnrjian13 小时前
Oracle tablespace 对象迁移
数据库·oracle
chushiyunen13 小时前
人工智能-function calling(函数调用)
数据库·ai编程
TDengine (老段)13 小时前
TDengine IDMP 0-阅读指南
大数据·数据库·人工智能·时序数据库·tdengine·涛思数据