目前还不支持,读取 table 元信息。 在 1.12 中,debezium-json 支持了这种功能,文档[1], 代码[2]。 canal-json的话需要按照类似的方式支持下元信息读取。
Best, Jark [1]: https://ci.apache.org/projects/flink/flink-docs-master/dev/table/connectors/formats/debezium.html#available-metadata [2]: https://github.com/apache/flink/blob/0a7c23cac26af49bce7c1f79fbf993c0a7f87835/flink-formats/flink-json/src/main/java/org/apache/flink/formats/json/debezium/DebeziumJsonDecodingFormat.java#L136 On Fri, 27 Nov 2020 at 09:49, air23 <[email protected]> wrote: > 你好 我这边有很多这种场景,把分库分表的binlog 写入到同一个topic 然后用canal-json解析,这边想获取到json里面的table > 字段, > > 然后根据 table名称加主键 写入到下游 合成一张表,写入到下游表, > > 然后发现 canal-json 是获取不到表名的,然后这边去修改canal-json的format。 > > 添加 createJsonRowType方法的DataTypes.FIELD("table", DataTypes.STRING()) > > 然后在deserialize方法里面把 table字段set到 data里面去。但是发现这种好像是不成功的 ,请问下 有什么具体点的思路提供下吗, > > 谢谢大佬们
