相信很多人对阿里开源的 canal 和 apache flume 都不陌生。
flume-canal-source 是对 flume 的 source 扩展。从 canal 获取数据到 flume channel 。 进而可以实现 binlog 数据到 kafka/hdfs/hive/elasticsearch 等等。
部署 canal、flume 这里忽略。
配置 source 类型*
agent.sources = canalSource agent.sources.canalSource.type = com.weiboyi.etl.flume.source.canal.CanalSource
配置连接 canal 的三种方式*
canal zookeeper servers
agent.sources.canalSource.zkServers = zookeeper-host:2181
canal server urls
agent.sources.canalSource.serverUrls = canal-server1:111111,canal-server2:111111
canal server urls
agent.sources.canalSource.serverUrl = canal-server1:111111
配置 canal destination*
agent.sources.canalSource.destination = example
配置用户名密码
agent.sources.canalSource.username = user agent.sources.canalSource.password = passwd
binlog batch size, default 1024
agent.sources.canalSource.batchSize = 1024
是否需要 MySQL 修改前的数据, default true
agent.sources.canalSource.oldDataRequired = true
flume-canal-source flume version : 1.7.0 canal version : 1.0.24 flume 是什么 Flume is a distributed, reliable, and available service for efficiently collecting, aggregating, and moving large amounts of l
离线采集工具 Sqoop 1. 环境配置 解压安装包 配置环境变量(记得source) 添加MySQL驱动包到sqoop文件夹下的lib cp mysql-connector-java-5.1.10.jar /sqoop-install-path/lib 重命名文件并配置文件 mv sqoop-env-template.sh sqoop-env.sh #添加环境变量 export HADOOP
零、不废话先说结论 1.Flume不能代替Canal实时同步Mysql的Binlog数据(内部机制不支持); 2.Flume可以实现实时同步Mysql的数据(插件的方式); 下面是具体的结论理由推断; 一、Canal在同步Mysql的Binary log的作用 功能上看 1.master将改变记录到二进制日志(binary log)中(这些记录叫做二进制日志事件,binary log events
一、前言: 现在需要经mysql的数据定时同步到kafka,一开始用的canal但是不知道为啥没成功,启动起来了但就是数据过去不,查看log也不报错,所以转到flume。发现flume挺好用的,而且灵活。 二、同步原理: Flume原理就不多介绍了,文章一大把,我说一下,连接sql的原理。我调的是网上的开源插件,看了一下log日志,特意分享一下原理,有错误的希望指出,大家交流
自己还是对这个框架学习的不够认真,感觉还没有完全把这个搞懂,只是观看了2个使用案例,没有下沉到具体的实际操作中,最近有些浮躁啊! cd app/flume/bin ./flume-ng version #查看版本 Flume核心组件 网址:http://flume.apache.org/releases/content/1.9.0/FlumeUserGuide.html 1.Source 2.Ch
离线阶段第七天 hive当中的存储格式 数据的存储格式主要分为两大类,一类是行式存储,一类是列式存储 行式存储:TextFile,SequenceFile。 列式存储:Parquet ,Orc。 第一种文件处处格式:textFile 行式存储 第四种:sequenceFile 二进制的行式存储 第二种存储格式:orc,一个orc文件,由多个stripe组成。一个stripe由三部分构成 ind
为flume安装Mysql监控支持插件 问题汇总:flume的mysql插件仅仅支持id增量监控 执行flume指令后,只能从指定行开始同步,一直到指定列。除非不断重复调用flume的启动命令,否则很难实现增量实时同步flume,当然也可以使用定时任务。 这里不用flume了,换阿里的canal 单纯将指定列的数据同步到模板存储倒是还行 下载插件 flume原生不支持监控mysql,这里使用git
第一:背景介绍 常见的开源数据收集系统 非结构化日志(数据)收集 flume 结构化日志(数据)收集 sqoop全量导入 canal(Alibaba)增量导入 Databus(linkedin)增量导入 第二:Flume(NG)介绍 - Event flume以事件的形式传输数据单元 事件由一个header和载有数据的byte array构成 header是一个字典结构的数据,可以在上下文路由中扩
概述 大数据,数据收集是非常重要的一块知识体系。数据收集,一般会对不同的数据,拥有不同的手机方式,那么常见的数据来源有什么呢? 非结构化数据。一般有用户访问日志、图片、视屏、网页等信息。 半结构化数据。一般类似xml、json之类的数据。 结构化数据。一般是传统关系型数据库(MySQL、Oracle)等存储的数据。 针对结构化数据,导入到大数据系统Hadoop中,有两种导入方式,一种是全量导入,一
flume学习过程 前景提要: 现在我们对数据的处理更加的快速高效,我们使用flink,spark,storm等大数据处理工具来实时处理数据,这些工具的上游数据来源可能是应用,可能是各种数据库。那有什么工具可以把数据从多源头推送到大数据引擎?这样的工具有很多比如Flume, sqoop, canal,nifi等,经过了解我决定先学习flume,因为flume开发起来比较快,而且支持的平台很多。当然
主要内容:Channel一个Source可以对多个Channel 一个Channel对一个Sink 一个Sink对一个Channel 一个Channel对一个Source Source相当于原点,接收方Cannel相当于临时队列,速率比较快,Sink相当于发送方。 Channel 临时队列 Flume中提供的Channel实现主要有三个: Memory Channel event保存在Java Heap中。如果允许数据小
canal 是阿里巴巴 MySQL 数据库 Binlog 的增量订阅&消费组件。 名称:canal [kə'næl] 译意: 水道/管道/沟渠 语言: 纯java开发 定位: 基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了MySQL 早期,阿里巴巴 B2B 公司因为存在杭州和美国双机房部署,存在跨机房同步的业务需求。不过早期的数据库同步业务,主要是基于 trigger
测试环境 类型 配置 MySQL A + Canal Server Intel(R) Xeon(R) CPU E5-2430 0 @ 2.20GHz (24core 96G) MQ(kafka/RocketMQ) Intel(R) Xeon(R) CPU E5-2430 0 @ 2.20GHz (24core 96G) 测试方式 混合的DML场景测试 (模拟业务场景,小事务) 混合2张表的inse
参考资料 Canal Admin QuickStart : [[Canal Admin QuickStart]] Canal Admin Guide : [[Canal Admin Guide]] Canal Admin ServerGuide : [[Canal Admin ServerGuide]] Dockerfile canal-admin Dockerfile文件:https://git
背景 canal-admin设计上是为canal提供整体配置管理、节点运维等面向运维的功能,提供相对友好的WebUI操作界面,方便更多用户快速和安全的操作 准备 首先确保你先完成了canal-admin的基本部署,请参考: [[Canal Admin QuickStart]] 设计理念 canal-admin的核心模型主要有: instance,对应canal-server里的instance,一
背景 canal-admin设计上是为canal提供整体配置管理、节点运维等面向运维的功能,提供相对友好的WebUI操作界面,方便更多用户快速和安全的操作 准备 canal-admin的限定依赖: MySQL,用于存储配置和节点等相关数据 canal版本,要求 >=1.1.4 (需要依赖 canal-server 提供面向admin的动态运维管理接口) 部署 下载 canal-admin, 访问