canal
文章平均质量分 65
桃花惜春风
高级Elasticsearch工程师,搜索架构工程师
展开
-
canal实战(二):使用canal-kafka实现数据库增量实时更新
canal是阿里的一款开源工具,纯java开发,基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了mysql。工作原理mysql主备复制实现从上层来看,复制分成三步:master将改变记录到二进制日志(binary log)中(这些记录叫做二进制日志事件,binary log events,可以通过show binlog events原创 2018-08-27 16:43:50 · 15751 阅读 · 0 评论 -
canal入门(一):canal介绍
canal是阿里云的一款开源产品,主要是用来对数据库的实时增量更新和同步。背景 以下内容来自canal官网介绍早期,阿里巴巴B2B公司因为存在杭州和美国双机房部署,存在跨机房同步的业务需求。不过早期的数据库同步业务,主要是基于trigger的方式获取增量变更,不过从2010年开始,阿里系公司开始逐步的尝试基于数据库的日志解析,获取增量变更进行同步,由此衍生出了增量订阅...原创 2018-08-31 20:57:29 · 8985 阅读 · 0 评论 -
canal入门(二):canal工作原理
canal工作原理很简单,就是启动canal服务端,把自己伪装成数据库的一个slave,通过binglog来实现主从同步。可以实现实时。工作原理 以下内容来自canal官网mysql主备复制实现从上层来看,复制分成三步:master将改变记录到二进制日志(binary log)中(这些记录叫做二进制日志事件,binary log events,可以通...原创 2018-08-31 21:04:56 · 4895 阅读 · 0 评论 -
canal干货(一):编写客户端程序
canal需要自己编写客户端程序来推送从数据库中同步过来的数据。下面介绍如何编写canal客户端程序。首先启动canal服务端 参考: canal入门(三):canal安装构建maven<dependency> <groupId>com.alibaba.otter</groupId>原创 2018-09-03 10:06:21 · 4222 阅读 · 0 评论 -
canal源码分析(一)客户端程序
canal服务端主要是获取binlog信息,canal客户端是负责把获取到的信息推送到不同的下游。我们将从了解canal的开始一步一步解析它。首先是客户端程序实例。 需要注意,这里只分析canal客户端源码,并非canal-kafka源码。canal-kafka是将kafka作为客户端嵌入到canal里的,并且是直接将信息转成ByteString发送到kafka。 详情:...原创 2018-09-03 10:50:13 · 3296 阅读 · 0 评论 -
canal实战(一):canal连接kafka实现实时同步mysql数据
前面已经介绍过了canal-kafka的应用。canal-kafka是把kafka作为客户端,嵌入到canal中,并且在canal基础上对源码进行了修改,以达到特定的实现canal到kafka的传送。canal-kafka是阿里云最近更新的一个新的安装包。主要功能是实现canal与kafka的对接,实现海量的消息传输同步。在canal-kafka中,消息是以ByteString进行传输...原创 2018-09-03 11:35:20 · 13388 阅读 · 2 评论 -
Canal报错:Could not find first log file name in binary log index file
报错信息: at com.alibaba.otter.canal.parse.inbound.mysql.dbsync.DirectLogFetcher.fetch(DirectLogFetcher.java:102) ~[canal.parse-1.1.0.jar:na] at com.alibaba.otter.canal.parse.inbound.mysql...原创 2018-12-05 19:55:43 · 10177 阅读 · 4 评论