功能
引入工作线程分组功能后,
VIEW_RESOURCE_TAG_THREAD_INFO视图用于实时监控工作线程级别的任务队列状态。该视图展示了每个工作线程的任务积压情况,帮助用户深入了解系统内部任务调度和负载分布。字段说明
字段名 | 类型 | 描述 |
attribute | varchar(64) | 业务类型标识 system:系统默认分组。pq:并行查询(Parallel Query)业务分组。duckdb:DuckDB 引擎相关业务分组。 |
tag | int unsigned | 系统内部使用的分组唯一标识符,由系统自动分配和管理。 此为系统内部标识,用户无需关注或修改。日常使用中请通过业务类型名称(attribute 字段)识别不同分组。 |
thread_id | varchar(64) | 工作线程的线程标识,可与日志中的线程标识对应,便于问题排查。 |
rq_size | bigint unsigned | 当前工作线程本地队列中等待处理的任务数量。 处理机制:工作线程优先处理此队列中的任务,采用后进先出(LIFO)策略。 |
remote_rq_size | bigint unsigned | 当前工作线程远端队列中等待处理的任务数量。 处理机制: 1. 本地队列(rq)工作线程始终优先处理其本地队列中的任务。 2. 自身远端队列(remote_rq)当本地队列为空时,工作线程开始处理自身远端队列中的任务。 3. 如果自身远端队列也为空,线程会从同组其他工作线程的远端队列中获取任务来处理,以实现组内负载均衡。 |
示例
tdsql > SELECT * FROM information_schema.VIEW_RESOURCE_TAG_THREAD_INFO where attribute = 'system' and rq_size <> 0 or remote_rq_size <> 0;+-----------+-----+----------------+---------+----------------+| attribute | tag | thread_id | rq_size | remote_rq_size |+-----------+-----+----------------+---------+----------------+| system | 0 | 0x7f19d47ff700 | 45 | 0 || system | 0 | 0x7f19ac9ff700 | 235 | 1 || system | 0 | 0x7f19a5bfe700 | 128 | 0 || system | 0 | 0x7f19c47fe700 | 78 | 0 || system | 0 | 0x7f19bfbff700 | 115 | 0 |+-----------+-----+----------------+---------+----------------+