关于EXPLAIN ROUTE命令,以下说法正确的是【单选】

正确答案:C

答案解析

  • 选项 A(错误)EXPLAIN ROUTE 并非用于查看 SQL 执行后的全链路 Trace 信息。Trace 信息通常由数据库的慢查询日志、性能监控工具或专门的追踪系统(如 OpenTelemetry)提供,与 EXPLAIN ROUTE 的功能无关。
  • 选项 B(错误):该选项描述的是标准 EXPLAIN 命令的功能,即在 SQL 执行前或执行后(配合 ANALYZE)查看其实际或预估的执行计划。而 EXPLAIN ROUTE 的核心是“路由”,关注的是请求被分发到哪个节点或实例,而非具体的表扫描、索引使用等执行细节。
  • 选项 C(正确)EXPLAIN ROUTE 是 OceanBase 分布式数据库特有的诊断命令。它的作用是在 SQL 语句执行之前,模拟 ODP (OceanBase Database Proxy) 的路由逻辑,向用户展示该 SQL 将被路由到哪个 OBServer 节点、哪个分区以及路由的依据(如主键、分区键等)。这对于排查分布式环境下的性能问题、数据倾斜或路由异常至关重要。
  • 选项 D(错误):虽然 EXPLAIN ROUTE 也是在执行前运行,但它关注的不是“执行计划”(Execution Plan),而是“路由信息”(Routing Information)。执行计划是关于如何在单个节点上高效地访问数据(如选择哪个索引、如何连接表),而路由信息是关于如何将请求发送到正确的物理节点。两者属于不同层面的优化和诊断。
2 个赞