旁路导入为什么没被记录在__all_ddl_operation里

【 使用环境 】生产环境
【 OB or 其他组件 】OB
【 使用版本 】4.3.5
【问题描述】如题,既然旁路导入的本质是DDL,为什么在oceanbase.__all_ddl_operation里搜不到?

2 个赞
  • 标准 DDL:修改的是数据库的 Schema(元数据)。这类操作必须记录在 __all_ddl_operation 中,以便进行状态跟踪、多版本 Schema 维护以及集群范围内的元数据同步。
  • 旁路导入:本质上仍然是 DML(数据操纵)。即便它绕过了传统的 SQL 引擎处理流程,它的最终目标是灌入用户数据,而不改变表结构。
2 个赞

点赞~~

1 个赞

666!!

有答案了吗

为什么

等回答

全量旁路导入的实现机制类似于DDL,在执行时锁全表,表只读
增量旁路导入的实现机制类似于DML,在执行时不锁全表,表可读写

旁路导入的核心动作是写入数据 ,而不是修改表的结构定义。在整个导入过程中,表的列、索引、分区等元数据信息并没有发生改变。

__all_ddl_operation主要用于追踪如 ALTER TABLE (修改表结构)、CREATE/DROP INDEX (创建/删除索引)等会导致元数据(Schema)发生变化 的操作。

学习了

看看看看