【判断题】WR和ASH的数据来源机制都是一样的,不需要特殊处理,实时读取视图数据。
1 个赞
错误 。
详细解析:
在 OceanBase 中,WR(Workload Repository) 和 ASH(Active Session History) 虽然都用于性能诊断,但它们的数据来源机制、采集方式和存储策略完全不同 ,并非“都一样”或“实时读取视图数据”。
ASH(Active Session History):
- 机制 :基于内存采样 。
- 每秒对活跃会话(正在执行 SQL 的 session)进行采样,记录如 SQL ID、等待事件、执行计划等信息。
- 数据保存在 内存环形缓冲区 中,部分可刷入磁盘,但主要供近实时查询 (如通过
GV$ACTIVE_SESSION_HISTORY视图)。 - 接近实时 ,但仍是采样历史 ,不是直接读当前运行状态。
WR(Workload Repository):
- 机制 :基于定期快照(Snapshot) 。
- 默认每隔一定时间(如 30 分钟)对系统性能视图(如
GV$SYSSTAT、GV$SQL等)做一次快照,并将数据持久化存储到内部系统表 中(如__all_virtual_wr_snapshot等)。 - 用于长期性能趋势分析、对比、报告生成 。
- 不是实时数据 ,也不直接读当前视图,而是读历史快照。
2 个赞