基于湖库一体架构,统一管理结构化、半结构化与非结构化等多模态数据,一个系统承载事务处理、实时分析与 AI 工作负载。
性能视图总览
更新时间:2025-01-06 14:20:45
本文根据性能视图的功能,详细地罗列了 OceanBase 数据库的性能视图。
事件相关
| 视图名 | 功能描述 |
|---|---|
| gv$session_event | 用于展示集群内所有 OBServer 的 Session 级别等待事件。 |
| gv$session_wait | 该视图用于展示所有服务器上所有 Session 的当前或者上一次等待事件的一些信息,包括等待事件名称、等待耗时等。 |
| gv$session_wait_history | 用于展示所有服务器上所有 Session 的最近 10 次等待事件的信息。 |
| gv$system_event | 展示集群所有租户级别的等待事件。 |
| gv$sesstat | 所有 OBServer 的 Session 级别的统计事件信息。 |
| gv$sysstat | 展示所有 OBServer 的租户级别的统计事件信息。 |
| v$statname | 用于展示所有统计事件的相关定义。 |
| v$event_name | 当前 OBServer 上所有统计事件的相关定义。 |
| v$session_event | 统计每一个 Session 发生的等待事件。 |
| v$session_wait | 每个 Session 当前等待事件明细,按照约定,每个等待事件会有三个参数,各自会记录对应的值。 |
| v$session_wait_history | 每个 Session 当前等待事件明细,最近 10 次等待事件。 |
| v$sesstat | 展示 Session 级别的统计事件概况。 |
| v$sysstat | 租户级别的统计事件概况。 |
| v$system_event | 租户级别的等待事件统计。 |
SQL 相关
| 视图名 | 功能描述 |
|---|---|
| gv$sql_audit | 用于展示所有 Server 上每一次 SQL 请求的来源、执行状态等统计信息。 |
| gv$sql | 所有热更新的 SQL 相关统计信息,记录每个 Plan 上的统计信息,汇总单个 Plan 多次执行的统计信息;每个 Plan 都会在表中有一行。 |
| gv$sql_plan_monitor | 展示所有 OBServer 慢查询的 Plan 层面的统计,每个慢查询都会有一条统计信息,同时记录该 Plan 的 Trace 信息。 |
| v$sql_audit | 用于展示当前 Server 的每一次 SQL 请求的来源、执行状态等统计信息。 |
| v$sql | 热更新的 SQL 相关统计信息;记录每个 Plan 上统计信息,汇总单个 Plan 多次执行的统计信息;每个 Plan 都会在表中有一行。 |
| v$sql_plan_monitor | 慢查询的 Operation 层面的统计,每个 Operation 会有一条统计信息。 |
| v$sql_monitor_statname | 本表用于解释 GV$SQL_PLAN_MONITOR 的 OTHERSTAT_X_ID字段中数字的含义。 |
内存相关
| 视图名 | 功能描述 |
|---|---|
| gv$memory | 用于展示租户级别的内存统计信息。 |
| gv$memstore | 用于展示所有服务器上所有租户的 MEMTable 的内存使用状况。 |
| gv$memstore_info | 用于展示所有服务器上所有租户的所有分区的 MEMTable 的详细信息。 |
| gv$server_memstore | 用于展示集群中每个 Server 中 MEMStore 的内存使用情况。 |
| gv$tenant_memstore_allocator_info | 展示了所连接 OBServer 上的 MEMTable 的若干信息,主要用于排查租户 MEMStore 内存长时间未释放的问题。 |
| gv$sstable | 用于展示租户的 SSTable 信息。 |
| v$memory | 用于展示租户级别的内存统计信息。 |
| v$memstore | 用于展示租户级别的 MEMStore 统计信息。 |
| v$memstore_info | 用于展示所有服务器上所有租户的所有分区的 MEMTable 的一些明细信息。 |
| v$tenant_memstore_allocator_info | 展示了所连接 OBServer 上的 MEMTable 的若干信息,主要用于排查租户 MEMStore 内存长时间未释放的问题。 |
| v$sstable | 用于展示租户的 SSTable 信息。 |
| gv$tenant_memory_info | 用于展示集群上每个租户的内存使用状况。 |
| v$tenant_memory_info | 用于展示当前 observer 进程中每个租户的内存使用状况。 |
缓存相关
| 视图名 | 功能描述 |
|---|---|
| gv$plan_cache_stat | 展示当前租户的 Outline 信息,主要用于 Outline 的迁移。 |
| v$plan_cache_stat | 记录当前租户在所有 Server 上的每个计划缓存整体的状态。 |
| gv$plan_cache_plan_stat | 记录了当前租户在所有 Server 上的计划缓存中缓存的每一个缓存对象的状态。 |
| v$plan_cache_plan_stat | 记录了当前租户在当前 Server 上的计划缓存中缓存的每一个缓存对象的状态。 |
| gv$plan_cache_plan_explain | 用于展示缓存在全部的 Server 中的计划缓存中的物理执行计划。 |
| v$plan_cache_plan_explain | 用于展示缓存在当前 Server 的计划缓存中的物理执行计划。 |
| gv$ps_stat | 监控 PS Cache 的整体状态,包括命中率、内存占用、缓存的 item 数目。 |
| v$ps_stat | 监控 PS Cache 的整体状态,包括命中率、内存占用、缓存的 item 数目。 |
| gv$ps_item_info | 用于给 prepared statement 提供监控功能,包含 PS Cache 中所有 prepare statement 的基本信息。 |
| v$ps_item_info | 用于给 prepared statement 提供监控功能,包含 PS Cache 中所有 prepare statement 的基本信息。 |
RPC
| 视图名 | 功能描述 |
|---|---|
| gv$obrpc_outgoing | 所有 OBServer 的 RPC 的发送统计信息。 |
| gv$obrpc_incoming | 用于展示所有 OBServer 收到 RPC 请求的统计信息。 |
| v$obrpc_outgoing | 统计 OBServer 上不同租户所有不同 RPC Packet Code 的 RPC 数据发送情况。 |
| v$obrpc_incoming | 用于统计 OBServer 上不同租户所有的不同 RPC Packet Code 的 RPC 数据接收情况。 |
Outline
| 视图名 | 功能描述 |
|---|---|
| gv$outline | 展示当前租户的 Outline 信息,主要用于 Outline 的迁移。 |
数据库统计信息
| 视图名 | 功能描述 |
|---|---|
| gv$unit_load_balance_event_history | 记录整个集群中副本迁移的结果。 |
| gv$tenant | 展示系统租户整个集群的信息。 |
| gv$database | 展示集群中所有数据库的 Meta 信息。 |
| gv$table | 展示整个集群中所有表的 Meta 信息。 |
| gv$unit | 用于展示集群中所有 Unit 的 Meta 信息。 |
| gv$partition | 展示集群中所有的 Partition Meta 信息。 |
| gv$server_schema_info | 展示所有 Server 上的 Schema 信息。 |
| v$unit | 展示当前机器 Unit 的 Meta 信息。 |
| v$partition | 当前机器 Partition 的 Meta 信息。 |
| v$ob_cluster | 用于展示当前集群的基本信息。 |
| v$ob_standby_status | 如果是主集群,则 v$ob_standby_status 显示所有备集群的状态和配置信息;如果是备集群,则显示为空。 |
| v$ob_cluster_stats | 展示本集群所有租户的统计项。 |
| v$ob_cluster_event_history | 用于显示本集群主备库相关的事件历史,用于跟踪主备库运维、切换流程详细信息,报错日志等,方便诊断问题。 |
| v$ob_timestamp_service | 展示系统中各租户使用的时钟源和对应的值。 |
| v$server_schema_info | 展示所有 Server 上的 Schema 信息。 |
| v$restore_point | 显示有关还原点的信息。 |
| v$ob_cluster_failover_info | 用于展示每一次每个租户的 Failover 信息。 |
| v$ob_all_clusters | 用于展示主备库配置中所有集群的信息。 |
| gv$concurrent_limit_sql | 展示当前租户的所有限流信息。 |
| gv$sql_plan_statistics | 展示整个集群中物理执行计划的统计信息。 |
| v$sql_plan_statistics | 展示当前 OBServer 的物理执行计划统计信息。 |
行锁
| 视图名 | 功能描述 |
|---|---|
| gv$lock_wait_stat | 整个集群中行锁的状态。 |
| gv$lock | 展示 OceanBase 数据库的行锁信息。 |
| v$lock_wait_stat | 当前 OBServer 上行锁的状态。 |
| v$lock | 展示 OceanBase 数据库的行锁信息。 |
索引
| 视图名 | 功能描述 |
|---|---|
| gv$session_longops | 展示集群 DDL 操作的执行状态和进度。 |
| v$session_longops | 展示当前 OBServer 上 DDL 操作的执行状态和进度。 |
转储相关
| 视图名 | 功能描述 |
|---|---|
| gv$minor_merge_info | 展示集群内部每个 Server 中不同租户级的转储起始时间。 |
| gv$merge_info | 展示 OceanBase 集群已经完成的合并或转储相关的统计信息。 |
| gv$ob_trans_table_status | 用于展示每次冻结后产生的脏事务的详细信息。 |
| v$merge_info | 展示 OceanBase 集群已经完成的合并或转储相关的统计信息。 |
| v$ob_trans_table_status | 用于展示当前租户每次冻结后产生的脏事务的详细信息。 |
线程
| 视图名 | 功能描述 |
|---|---|
| gv$tenant_px_worker_stat | 在并行执行场景中,查看每个线程的执行信息。 |
| v$tenant_px_worker_stat | 在并行执行场景中,查看每个线程的执行信息。 与 gv$tenant_px_worker_stat相比,该视图仅能看到当前租户本机的线程。 |
分区
| 视图名 | 功能描述 |
|---|---|
| gv$partition_audit | 提供分区级别的统计信息,用于分区的性能统计。 |
| v$partition_audit | 提供分区级别的统计信息,用于分区的性能统计。 |
Workarea
| 视图名 | 功能描述 |
|---|---|
| gv$sql_workarea | 之前受 SQL 自动内存管理负责执行的所有 Operator 的 Workarea 统计信息。 |
| gv$sql_workarea_histogram | 展示之前所有 Workarea执行的统计信息,如在区间 1 M~2 M 之间全 in-memory 处理的次数、one-pass 次数等。 |
| gv$ob_sql_workarea_memory_info | 用于查询 SQL Workarea 总体的一些信息,如最大可用内存、当前使用内存、当前 hold 内存等。 |
| v$sql_workarea | 之前受 SQL 自动内存管理负责执行的所有 Operator 的 Workarea 统计信息。 |
| v$sql_workarea_active | 展示当前活跃 Operator 的 Workarea 信息。 |
| v$sql_workarea_histogram | 展示之前所有 workarea 执行的统计信息,如在区间1M~2M之间全 in-memory 处理的次数、one-pass 次数等。 |
| v$ob_sql_workarea_memory_info | 用于查询 SQL workarea 总体的一些信息,包括最大可用内存、当前使用内存、当前 hold 内存等。 |
加密表
| 视图名 | 功能描述 |
|---|---|
| v$encrypted_tables | 用于展示开启加密功能的表的加密状态。 |
| v$encrypted_tablespaces | 用于展示开启加密功能的表空间的加密状态。 |