后处理器
后处理器执行轻量级的、每条消息的变异,类似于单消息转换 (SMT) 所执行的修改。但是,Debezium 在事件链中比转换更早调用后处理器,从而使后处理器能够在消息传递给消息运行时之前对其进行操作。由于后处理器可以在 Debezium 上下文中操作消息,因此它们在修改事件载荷方面比转换更有效。
为了使转换修改消息,它必须重新创建消息不可变的 ConnectRecord,或者更确切地说,它的 SourceRecord。相比之下,由于后处理器在 Debezium 范围内操作,它可以操作消息事件载荷中的可变 Struct 类型,在构建 SourceRecord 之前修改载荷。与 Debezium 的紧密集成使后处理器能够访问 Debezium 内部信息,例如关于数据库连接、关系模式模型等的 Debezium 元数据。反过来,这种访问可以提高执行依赖于此类内部信息的任务的效率。
Debezium 提供了以下后处理器实现
| 后处理器 | 描述 |
|---|---|
重新选择可能未由更改事件提供的特定列,例如 TOASTed 列或 Oracle LOB 列(在当前事件的更改中未被修改)。 |
|
后处理器旨在仅修改由 Debezium 源连接器发出的更改事件记录。 |