
MySQL有阿里巴巴开源的Canal作为数据变化订阅工具,而Oracle作为最复杂的商业数据库,目前还没有比较好的数据变化订阅工具。
对oracle变更数据捕获一直是业界苦恼:
有没有一个免费的、企业级Oracle日志解析器,通过极简的产品设计,让你1分钟搞定Oracle的日志解析工作呢?
高性能Oracle日志解析订阅工具
【 QDecoder 】
在 docker hub 和 github
对外免费正式发布
QDecoder是沃趣科技自主研发,基于Oracle redo日志进行二进制解析工具,解析的结果以canal的protobuf的形式直接写入到kafka或者socket。
目前,QDecoder已经在多家证券和银行上线使用,稳定运行,得到诸多客户的肯定与认可。
沃趣科技一直提倡与合作伙伴共同探索数据库生态技术边界,用技术帮助业务产生更有价值的服务体验。感谢伙伴们长久以来的信任与支持,我们十分乐意与大家分享沃趣自主研发的Oracle日志解析器——QDecoder,并作为元宵暖心大礼包倾情奉上,免费开放领取,功能与企业版保持一致。
注:您可下拉到文末,点击“阅读原文”直接跳转docker hub 免费使用QDecoder
QDecoder产品架构

生态与易集成性
QDecoder启动后,通过IP/PORT连接Oracle数据库,持续不断地获取在线日志,将DDL和insert、update、delete变化实时写入kafka。传输到kafka的Topic数据可以由您的应用程序或者Flink/Spark流数据处理程序通过kafka connector获取,并调用protobuf的java包反解析出DML和DDL变化事件,就可以驱动和触发下游大数据和AI的流式处理。
【源端增强】QDecoder可以在现有的Debezium/CloudCanal/Confluent的数据源数据订阅端基础上增加Oracle实时数据流
【目标端订阅】在原有的流式数据处理上添加oracle的动态DML和DDL变化事务信息,以Flink/Spark为例,你只需要通过kafka的connector获取指定Topic的数据,并通过protobuf自动生成的java包反解析就可以嵌入原有的业务逻辑
【格式不变】QDecoder采用跟阿里巴巴mysql日志同步工具Canal同样的protocol协议输出格式

注:Java/C++语言获取kafka topic的数据展示的实例代码参考QDecoder github页面
产品能力
你的Oracle使用再怎么风骚,QDecoder也能解析。版本支持:
Oracle10g,11g,12c~19c
Oracle单机和RAC集群
Linux类小端系统(Little-endian)和AIX小机大端系统(Big-endian)
行链接、行迁移;insert append;支持压缩表;支持部分回滚;支持多块undo等Oracle高级特性解析
number、varchar2、BLOB、Datatime、NVARCHAR、Float等字符串类型,数字类型,日期类型,LOB类型在内的绝大多数Oracle常见字段解析
指定表的DML和DDL的数据增量同步
Oracle连接池连接源库
持续时间超过2天以上的长事务解析
数据直接流入kafka,支持socket方式推送日志变更
支持日志存储在ASM中;在线或者归档日志如果存储在本地文件系统的话,需要单独在Oracle源端上部署parser组件。
- 极简安装体验 -
QDecoder配置安装只需要一条命令:
docker run -it --name=qdecoder -p 9191:9191 -p 9092:9092 --pull always registry.cn-hangzhou.aliyuncs.com/woqutech/qdecoder

服务器断电重启后,只需要docker start qdecoder再次启动,QDecoder就能断点续传,从上次的位点继续同步数据。
- 优质性能 -
QDecoder单节点日志解析量约为120MB/s,RAC双节点日志解析量为200MB/s

- 产品定位 -
相比OGG等其他数据同步软件:
QDecoder社区版免费
QDecoder支持定制化开发
对接大数据平台简洁方便
相比Logminer:
QDecoder支持断点续传,可以实时同步数据变化。Logminer每次只能获取一整个日志的数据变化,不支持实时同步
QDecoder日志不需要写入到alert.log,避免污染错误日志
支持和服务
最终用户或者合作伙伴需要将其用于生产环境,建议购买订阅服务
需要根据自己的需求进行适配开发,请购买定制开发服务
投稿有奖🎁
未来,沃趣科技将结合实际场景和最佳实践,推出基于QDecoder的数据迁移和订阅的相关文章:
Oracle到Oracle的同构数据迁移
Oracle到MySQL的异构数据迁移
Oracle到大数据平台的增量订阅
Oracle数据多消费端订阅服务
如果您有基于QDecoder的相关最佳实践,欢迎投稿,我们将有精美小礼物邮寄给您哦~
联系方式

● 您可通过微信群、邮箱和github issue来联系和获取社区支持。
微信群:请扫描下方二维码添加企业微信,发送“QDecoder社区交流”后,技术人员将拉您进入微信社区交流群
邮箱:qdecoder@woqutech.com
github issue(复制🔗打开即可):
https://github.com/woqutech/qdecoder/issues

扫描上方二维码添加官方企业微信
点击阅读原文即可免费使用QDecoder





