Flume监听oracle表增量的步骤详解

虽然春天的劲风,着实让我不太喜欢,但不得不说,春天是个好季节,俗话说 "一年之际在于春 ",春天是一年的开始,也是让人充满希望和幻想的季节。刚刚历经了寒冬的人们,开始在春天慢慢苏醒,他们慢慢的重拾自己的梦想,渐渐骨起斗志,一步步朝着自己的梦想出发,一点点靠近理想的终端。

需求:获取oracle表增量信息,发送至udp514端口,支持ip配置

步骤:

(1)需要的jar oracle的 odbc5.jar(oracle安装目录 /jdbc/lib下查找)

(2)flume的开源包flume-ng-sql-source-1.4.3.jar 最新的好像是1.5的 小版本记不住了 这个下载地址直接csdn上就有

这两个jar 都拷贝到flume的lib下

(3)flume配置文件

a1.sources = r1
a1.sinks = k1
a1.channels = c1
#接收syslog配置
#a1.sources.r1.type = syslogudp
#a1.sources.r1.port = 514
#a1.sources.r1.host = 0.0.0.0
###########sql source#################
a1.sources.r1.type = org.keedio.flume.source.SQLSource
a1.sources.r1.hibernate.connection.url = jdbc:oracle:thin:@10.9.224.36:1521/soc
# Hibernate Database connection properties
a1.sources.r1.hibernate.connection.user = soc_app
a1.sources.r1.hibernate.connection.password = soc_app
a1.sources.r1.hibernate.connection.autocommit = true
a1.sources.r1.hibernate.dialect = org.hibernate.dialect.Oracle10gDialect
a1.sources.r1.hibernate.connection.driver_class = oracle.jdbc.driver.OracleDriver
a1.sources.r1.run.query.delay=1
a1.sources.r1.status.file.path = /usr/local/flume
a1.sources.r1.status.file.name = a1.sqlSource.status
# Custom query
a1.sources.r1.start.from = '2017-07-31 07:06:20'
a1.sources.r1.custom.query = SELECT CHR(39)||TO_CHAR(CREATETIME,'YYYY-MM-DD HH24:MI:SS')||CHR(39),MSG FROM FLUME_NG_SQL_SOURCE WHERE CREATETIME > TO_DATE($@$,'YYYY-MM-DD HH24:MI:SS') ORDER BY CREATETIME ASC
a1.sources.r1.batch.size = 6000
a1.sources.r1.max.rows = 1000
a1.sources.r1.hibernate.connection.provider_class = org.hibernate.connection.C3P0ConnectionProvider
a1.sources.r1.hibernate.c3p0.min_size=1
a1.sources.r1.hibernate.c3p0.max_size=10
###########sql source#################
#自定义类型
a1.sinks.k1.type = com.neusoft.utils.SyslogSink
#配置发送ip
a1.sinks.k1.destination = 10.9.224.36
a1.channels.c1.type = memory
a1.channels.c1.capacity = 10000
a1.channels.c1.transactionCapacity = 10000
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1
#启动命令 ./flume-ng agent -c ../conf -f ../conf/flume-sql.conf -n a1 -Dflume.root.logger=INFO,console &

由于是自己定义的sink 在我的博客中也有提到,所以配置了自定义的sink。

总结

以上所述是小编给大家介绍的Flume监听oracle表增量的步骤详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

本文Flume监听oracle表增量的步骤详解到此结束。解铃还需系铃人,躲避责任会解决不了任何问题,它只导致一个失败的人生。小编再次感谢大家对我们的支持!

您可能有感兴趣的文章
Oracle缩表空间的完整如何解决实例

详解Oracle控制文件及日志文件的管理问题

oracle指定类型和指定位数创建序列号的代码详解

Oracle官方工具SQLDeveloper的简单如何使用

Oracle中锁(lock)的用法