请问各位TiDB专家,我想在生产上使用binlog来做相关的实时计算,binlog可靠稳定吗?
binlog 同步到下游阿妈?建议使用 TiCDC,TiCDC 有 HA 而且比 Binlog 轻量。另外下游如果是 Flink 的话,我们还有一些适配的案例可以参考。
我们的使用场景是 :ticdc将binlong推到kafka,有个java应用去消费kafka做增量计算(不是flink)。现在担心ticdc会不会因为异常中断等原因导致丢binlog消息?
基本不会,如果 TiCDC 非预期 crash ,TiCDC 会默认保留 48h 的数据,直到恢复。
我已经正常了运行了ticdc两天,除了报“大事务消息超大”的错误外,还比较稳定。有个问题确认下,我发现基本每间隔1秒会发出一条message为空的binlog消息,确定不是我们业务触发的,这个是不是类似“心跳”之类的系统消息?
下游是 CanalProtocol 吗?
下游是kafka,ticdc将binlog发给kafka。
ticdc 有 savepoint 如果正确操作,不会丢失数据,如果遇到,需要根据具体案例进行分析,
所谓心跳,这个是预期的,也不能关闭。
大事务这个需要看是否为 kafka 发出的,需要提供报错,我们看下
ha 这一点是 cdc 和 binlog 最重要的区别,也是为 cdc 能安全使用在线上环境提供保证