Hi, air23

国内用户用Canal-json还是很多的,我建了个issue 来支持, 你可以关注下。

> 你好 请问这个debezium-json 这个value.source.table 功能 在1.12的canal-json会实现吗,
> 看到canal-json代码里面 好像是有这部分代码。


Best,
Leonard
[1]https://issues.apache.org/jira/browse/FLINK-20385 
<https://issues.apache.org/jira/browse/FLINK-20385> 


> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 在 2020-11-27 10:13:37,"Jark Wu" <imj...@gmail.com> 写道:
>> 目前还不支持,读取 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 <wangfei23_...@163.com> wrote:
>> 
>>> 你好 我这边有很多这种场景,把分库分表的binlog 写入到同一个topic 然后用canal-json解析,这边想获取到json里面的table
>>> 字段,
>>> 
>>> 然后根据 table名称加主键 写入到下游 合成一张表,写入到下游表,
>>> 
>>> 然后发现 canal-json 是获取不到表名的,然后这边去修改canal-json的format。
>>> 
>>> 添加 createJsonRowType方法的DataTypes.FIELD("table", DataTypes.STRING())
>>> 
>>> 然后在deserialize方法里面把 table字段set到 data里面去。但是发现这种好像是不成功的 ,请问下 有什么具体点的思路提供下吗,
>>> 
>>> 谢谢大佬们

回复