Doris 功能介绍-Proc 系统
三寸九州 发布于2021-05 浏览:7543 回复:0
0
收藏

## Proc 系统

Proc 系统是 Doris 的一个比较有特色的功能。使用过 Linux 的同学可能比较了解这个概念。在 Linux 系统中,proc 是一个虚拟的文件系统,通常挂载在 /proc 目录下。用户可以通过这个文件系统来查看系统内部的数据结构。比如可以通过 /proc/pid 查看指定 pid 进程的详细情况。

和 Linux 中的 proc 系统类似,Doris 中的 proc 系统也被组织成一个类似目录的结构,根据用户指定的“目录路径(proc 路径)”,来查看不同的系统信息。

proc 系统被设计为主要面向系统管理人员,方便其查看系统内部的一些运行状态。如表的tablet状态、集群均衡状态、各种作业的状态等等。是一个非常实用的功能。

 

### 查看 Proc 系统

Doris 中有两种方式可以查看 proc 系统。

通过 SHOW PROC 命令

 

mysql> show proc "/";
+---------------------------+
| name                      |
+---------------------------+
| statistic                 |
| brokers                   |
| frontends                 |
| routine_loads             |
| auth                      |
| jobs                      |
| resources                 |
| monitor                   |
| transactions              |
| colocation_group          |
| backends                  |
| cluster_balance           |
| current_queries           |
| dbs                       |
| load_error_hub            |
| current_backend_instances |
| tasks                     |
+---------------------------+
17 rows in set (0.00 sec)
​
mysql> show proc "/dbs";
+-------+------------------------------------+----------+-------------+--------------------------+--------------+
| DbId  | DbName                             | TableNum | Quota       | LastConsistencyCheckTime | ReplicaQuota |
+-------+------------------------------------+----------+-------------+--------------------------+--------------+
| 0     | default_cluster:information_schema | 17       | 1024.000 GB | NULL                     | 1073741824   |
| 10003 | default_cluster:db1                | 3        | 1024.000 GB | NULL                     | 1073741824   |
| 10013 | default_cluster:doris_audit_db__   | 1        | 1024.000 GB | NULL                     | 1073741824   |
+-------+------------------------------------+----------+-------------+--------------------------+--------------+
3 rows in set (0.00 sec)

 

通过 MySQL 客户端连接 Doris 后,可以执行 SHOW PROC 语句查看指定 proc 目录的信息。proc 目录是以 "/" 开头的绝对路径。

show proc 语句的结果以二维表的形式展现。而通常结果表的第一列的值为 proc 的下一级子目录。如 "/dbs" 展示所有数据库,而 "/dbs/10003" 展示 id 为 10003 的数据库下的所有表。 

mysql> show proc "/dbs";
+-------+------------------------------------+----------+-------------+--------------------------+--------------+
| DbId  | DbName                             | TableNum | Quota       | LastConsistencyCheckTime | ReplicaQuota |
+-------+------------------------------------+----------+-------------+--------------------------+--------------+
| 0     | default_cluster:information_schema | 17       | 1024.000 GB | NULL                     | 1073741824   |
| 10003 | default_cluster:db1                | 3        | 1024.000 GB | NULL                     | 1073741824   |
| 10013 | default_cluster:doris_audit_db__   | 1        | 1024.000 GB | NULL                     | 1073741824   |
+-------+------------------------------------+----------+-------------+--------------------------+--------------+
3 rows in set (0.00 sec)
​
mysql> show proc "/dbs/10003";
+---------+-----------+----------+---------------------+--------------+--------+------+--------------------------+--------------+
| TableId | TableName | IndexNum | PartitionColumnName | PartitionNum | State  | Type | LastConsistencyCheckTime | ReplicaCount |
+---------+-----------+----------+---------------------+--------------+--------+------+--------------------------+--------------+
| 10063   | tbl1      | 1        | NULL                | 1            | NORMAL | OLAP | NULL                     | 1            |
| 10069   | tbl2      | 1        | k2                  | 2            | NORMAL | OLAP | NULL                     | 2            |
| 11007   | tbl3      | 1        | k1                  | 2            | NORMAL | OLAP | NULL                     | 2            |
+---------+-----------+----------+---------------------+--------------+--------+------+--------------------------+--------------+
3 rows in set (0.00 sec)

我们可以通过层级目录的方式,递进的查看子目录中更详细的信息。通过 FE Web UI

Doris FE 的前端 Web UI 也能查看 proc 信息。你可以在浏览器打开:

http://fe_host:http_port/

​在顶部导航栏中点击 "System" 标签。

 

Web 页面的 proc 信息和 SHOW PROC 语句的完全一致,只是提供了一个可视化的页面展示功能。大部分情况下,我们可以点击结果表的第一列,进入下一级目录,如点击 "dbs" 后进入:

 

页面上显示的 "Current path: //dbs" 即当前 proc 目录。我们可以复制这个路径拼接为 SHOW PROC 语句在命令行执行。


Web 页面可以提供排序和筛选功能,这个是使用命令行工具所不具备的。如我们可以通过点击列名对结果表按照该列值做升序或者降序排列。也可以点击右上角的漏斗图标弹出搜索框,按照关键词进行结果查找。

> 受限于前端的渲染能力,在 Web 页面查看 proc 信息时,默认仅显示前 2000 条结果。因此,在某些结果集较大的 proc 目录层级中(如查看一个表的 tablet 信息),在 Web 页面是无法查看到完整结果的,必须通过 SHOW PROC 命令在命令行查看完整结果。

 

 

 

——未完待续——

 

 

Proc 系统有助于管理员查看系统运行状态,是一个非常常用的功能。我们会在后续的文章中分别介绍 proc 系统中各个目录的含义。

 

 

 

 

相关链接:


Apache Doris官方网站:

http://doris.incubator.apache.org

Apache Doris Github:

https://github.com/apache/incubator-doris

Apache Doris 开发者邮件组:

dev@doris.apache.org

 

收藏
点赞
0
个赞
快速回复
TOP
切换版块