Tapdata 肖贝贝:实时数据引擎系列(四)-关于 Oracle 与 Oracle CDC
摘要:想实现 Oracle 的 CDC,排除掉一些通用的比如全量比对, 标记字段获取之外, 真正的增量形式获取变更, 有三种办法: Logminer 、XStream 、裸日志解析,但不管哪种方法都会导致 Oracle 的同步变得工程量巨大, 而使用 Oracle 的客户, 又大多对数据的准确性要求非常严格的, 这里形成了一个非常庞大而传统的市场。
前言
三大门派
- Logminer: 捡剩饭套路, Oracle 官方提供的一个日志分析工具, 可以将内部的日志解析成事件输出出来, 也是目前超过 99% 的开源工具集成的方案, 集成最简单, 问题也最多
- XStream: 挂壁套路, Oracle 内部接口, 将事件变更通过内存流池共享丢出去, 有严格的 License 限制, 普通人自己用用还可以, 如果商用, 坐等律师函
- 裸日志解析:
- 官方日志解析: OGG 的实现模式, 有源码支持, 兼容性最好, 速度远胜于 Logminer
- 三方日志解析: 奋斗逼, 逆向工程, 这里的点很多, 奋斗逼也分等级, 顶级的工程师背后的公司财大气粗, 购买了 Oracle 部分版本的源代码, 在这个基础上开发了解析工具, 有一些工程师本来就在 Oracle 工作, 通过一些不太干净的手段拿到了一些源码, 做了一些工具出来, 有些工程师啥都没有, 凭借一些日志导出工具和顽强的毅力, 逐个猜测每个二进制位的含义, 不断尝试, 去完成逆向解析, 但是这个方案现在能做到商用的非常少, 全世界范围内也不超过十家
Logminer
XStream
裸日志解析
一些通用问题
TAPDATA 的解法

Tapdata 肖贝贝:实时数据引擎系列(四)-关于 Oracle 与 Oracle CDC的更多相关文章
- Tapdata肖贝贝:实时数据引擎系列(三) - 流处理引擎对比
摘要:本文将选取市面上一些流计算框架包括 Flink .Spark .Hazelcast,从场景需求出发,在核心功能.资源与性能.用户体验.框架完整性.维护性等方面展开分析和测评,剖析实时数据框架 ...
- Tapdata 肖贝贝:实时数据引擎系列(六)-从 PostgreSQL 实时数据集成看增量数据缓存层的必要性
摘要:对于 PostgreSQL 的实时数据采集, 业界经常遇到了包括:对源库性能/存储影响较大, 采集性能受限, 时间回退重新同步不支持, 数据类型较复杂等等问题.Tapdata 在解决 Pos ...
- 实时数据引擎系列(五): 关于 SQL Server 与 SQL Server CDC
摘要:在企业客户里, SQL Server 在传统的制造业依然散发着持久的生命力,SQL Server 的 CDC 复杂度相比 Oracle 较低, 因此标准的官方派做法就是直接使用这个 CDC ...
- 基于 WebSocket 实现 WebGL 3D 拓扑图实时数据通讯同步(二)
我们上一篇<基于 WebSocket 实现 WebGL 3D 拓扑图实时数据通讯同步(一)>主要讲解了如何搭建一个实时数据通讯服务器,客户端与服务端是如何通讯的,相信通过上一篇的讲解,再配 ...
- 通过 WebSocket 实现 WebGL 3D 拓扑图实时数据通讯同步(二)
我们上一篇<基于 WebSocket 实现 WebGL 3D 拓扑图实时数据通讯同步(一)>主要讲解了如何搭建一个实时数据通讯服务器,客户端与服务端是如何通讯的,相信通过上一篇的讲解,再配 ...
- Tapdata 实时数据融合平台解决方案(四):技术选型
作者介绍:TJ,唐建法,Tapdata 钛铂数据CTO,MongoDB中文社区主席,原MongoDB大中华区首席架构师,极客时间MongoDB视频课程讲师. 常见搭建数据中台的技术产品 数据中台包括: ...
- 一文让你彻底了解大数据实时计算引擎 Flink
前言 在上一篇文章 你公司到底需不需要引入实时计算引擎? 中我讲解了日常中常见的实时需求,然后分析了这些需求的实现方式,接着对比了实时计算和离线计算.随着这些年大数据的飞速发展,也出现了不少计算的框架 ...
- Tapdata 实时数据中台在智慧教育中的实践
摘要:随着教育信息化的推进,智慧校园建设兴起,但在实施过程中面临数据孤岛.应用繁多.数据再利用等方面挑战,而 Tapdata 的实时数据中台解决方案,能够高效地解决智慧校园实施中的基础数据问题. ...
- Tapdata 实时数据融合平台解决方案(五):落地
作者介绍:TJ,唐建法,Tapdata 钛铂数据 CTO,MongoDB中文社区主席,原MongoDB大中华区首席架构师,极客时间MongoDB视频课程讲师. 通过前面几篇文章,我们从企业数据整合与分 ...
随机推荐
- 通过OptaPlanner优化 COVID-19 疫苗接种预约安排(2)
本文为OptaPlanner官方博客<Optimizing COVID-19 vaccination appointment scheduling>的第二篇译文.第一篇介绍了通过OptaP ...
- IoT平台如何实现业务配置中心
摘要:本文讲述业务配置中心(下文简述为配置中心)的关键技术和实现方式. 本文分享自华为云社区<手把手教你物联网平台如何实现业务配置中心>,作者: 华为云IoT专家团 . 上一篇<华为 ...
- Java之IO流技术详解
何为IO? 首先,我们看看百度给出的解释. I/O输入/输出(Input/Output),分为IO设备和IO接口两个部分. i是写入,Input的首字母.o是输出,Output的首字母. IO 也称为 ...
- Mybaitis入门基础(一)MyBatis的概念引入及工作原理
阅读目录 一:对原生态JDBC问题的总结 二:MyBatis框架 三:mybatis入门程序 四:mybatis和Hibernate的本质区别与应用场景 五:小结 一:框架前言的那些事 良将难求 胜铁 ...
- SoftPool:基于Softmax加权的池化操作 | 2021新文
SoftPool使用softmax进行加权池化,能够保持特征的表达性并且是可微操作.从性能和准确率来看,SoftPool是目前的常规池化方法的一个不错的替代品 来源:晓飞的算法工程笔记 公众号 论 ...
- Ubuntu 16.4安装1050ti显卡驱动问题及解决
不得不说,ubuntu上安装nvidia驱动坑是真的多!!! 本来在之前已经安装好了,从 显卡驱动到cuda再到cudnn去不没问题,就已一次推送而来的显卡驱动更新,把我的环境全部弄坏,为了吸取教训, ...
- Shell 脚本编程最佳实践
前言 由于工作需要,最近重新开始拾掇shell脚本.虽然绝大部分命令自己平时也经常使用,但是在写成脚本的时候总觉得写的很难看.而且当我在看其他人写的脚本的时候,总觉得难以阅读.毕竟shell脚本这个东 ...
- MySQL双主双从配置
双主双从结构图 Master1配置 server-id=1 #开启binlog日志 log-bin=mysql-bin #忽略的库 binlog-ignore-db=mysql #复制的库 binlo ...
- Soa: 一个轻量级的微服务库
Soa 项目地址:Github:MatoApps/Soa 介绍 一个轻量级的微服务库,基于.Net 6 + Abp框架 可快速地将现有项目改造成为面向服务体系结构,实现模块间松耦合. 感谢 Rabbi ...
- SpringMVC和spring集成
步骤:1.web.xml中配置spring的监听和spring配置文件位置 2.编写spring类并在spring的配置文件里配置bean 说明:源码中spring核心配置文件导入springAnno ...