跳转到内容
Telemetry
数据库可靠性 SQL查询示例

按区域测量数据库副本的陈旧程度

按区域比较应用程序观察到的副本重播延迟、陈旧读取和故障转移结果。

高级database_replica_read_events已审核 2026-07-28测试用 阿帕奇 DataFusion 45.2.0

审阅者 Telemetry产品团队 . SQL 兼容性、事件契约、合成输出和操作注意事项. 审查标准和所有权

问题已回答

哪些副本区域正在提供过时或失败的读取?

基础设施复制滞后并不总是等于应用程序可见的陈旧性。读取事件可以保留选定的副本角色、重播延迟和一致性结果。

活动合约

查询期望的字段

字段类型为什么存在
timestamp_utcTimestamp副本读取完成时间。
regionUtf8应用区域。
replica_roleUtf8主目标、副本目标或故障转移目标。
replay_lag_msFloat64观察到或报告的重播延迟。
consistency_outcomeUtf8新鲜的、陈旧的、失败的或未知的。
operation_nameUtf8受控的应用程序读取操作。
DataFusion SQL

复制查询

sql
SELECT
  region,
  replica_role,
  operation_name,
  COUNT(*) AS reads,
  approx_percentile_cont(replay_lag_ms, 0.95) AS p95_replay_lag_ms,
  SUM(CASE WHEN consistency_outcome = 'stale' THEN 1 ELSE 0 END)
    AS stale_reads,
  SUM(CASE WHEN consistency_outcome = 'failed' THEN 1 ELSE 0 END)
    AS failed_reads
FROM database_replica_read_events
WHERE timestamp_utc >= now() - INTERVAL '24 hours'
GROUP BY region, replica_role, operation_name
ORDER BY stale_reads DESC, p95_replay_lag_ms DESC;

此只读查询是针对空类型表计划和执行的 阿帕奇 DataFusion 45.2.0。确定性样本输出是综合的并单独审查;根据您自己的数据验证字段类型、阈值和业务定义。 阅读测试方法。

查询结果

副本区域的陈旧读取

ap-southeast 订阅读取具有最高的观察到的陈旧性和重播滞后尾部。

regionreplica_roleoperation_namereadsp95_replay_lag_msstale_readsfailed_reads
ap-southeastreplicasubscription-status18,4004,82021418
eu-westreplicaproject-list42,100740312

综合示例输出。在将其用于操作决策之前,针对您自己的事件架构和阈值运行查询。

Stale reads by replica region:来自 Measure Database Replica Staleness by Region 示例结果的合成 stale_reads 值的静态图表
确定性示例输出的可索引 SVG。下载它以获取带有归属的文章、操作手册或设计评论。

重现示例

下载公共装置

JSON 包包含类型化事件契约, illustrative 输入行、确切的 SQL、预期输出、审阅注释和引擎版本。 CSV 包含显示的结果。

SQL 是如何工作的

  1. 1副本角色和区域标识读取路径。
  2. 2应用程序一致性结果将用户可见的陈旧性与报告的延迟分开记录。
  3. 3操作名称显示哪些工作流程需要更强的写后读行为。

需要决定的边缘情况

  • 一致性结果需要进行可防御的应用程序检查。
  • 重播延迟单位因数据库和收集器而异。
  • 数据库本机复制和故障转移工具仍然是服务器诊断的来源。

推荐仪表板

  • 酒吧:stale_reads(按地区)
  • 趋势:p95_replay_lag_ms(按角色)
  • 表:按操作读取失败

警报指导

当关键操作提供的过时或失败的读取超出其审查的一致性目标时发出警报。

读取警报设置

让查询示例发挥作用

相关埋点和指南

继续分析

在真实事件中运行它

创建表,调整字段并保存结果

免费开始,发送结构化事件,并将查询结果用作图表、共享仪表板小部件或警报输入。

获取 API 密钥