otter4使用介绍1.异地机房双向同步_第1页
otter4使用介绍1.异地机房双向同步_第2页
otter4使用介绍1.异地机房双向同步_第3页
otter4使用介绍1.异地机房双向同步_第4页
otter4使用介绍1.异地机房双向同步_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

七 杭州/异地机房双向同(定义同步表,同步字段b.性(定义同步通道,对应一个具体业务,多个通道之间互相关联数据(同步db数据的同时,需要同步,比如产品表双A写入(避免回环同步,处理,数据一致性保证(没有严格的事务保证,定义表载入顺序(支持数据仓库增量数据(整行记录,根据变更主键反查业务cache(更新db成功的同时,刷新下cache中的值(建立任务队列表/触发全库记录变更多库合并同步(变更数据一定要成功应用到目标库(双向两边记录要保证最终一致性(平均(20000条记录可达800MB文件同步按需(不同业务之间同步互不影响,同步有快慢(允许业务定义表的同步加载的顺序性otter无变检测&补otterinsertdeletelatency本地机房+单向同 机房+文件otter4vsotter3文件同步1000/ 数据记录20000otter4文件同步8000min,数据记录400000otter"慢"在哪里精卫延迟drc延迟200msvs青岛70ms2~6MBvs使用&运 过程组Channel:同步通道,单向同步中一个Pipeline组成,在双向同步中有两个组 DateMedia抽象的数据介质概念,可以理解为数据表/mq队列定义DateMediaSource:抽象的数据介质源信息,补充描述DateMediaColumnPair:定义字段关系ColumnGroup定义字段Node:处理同步过程的工作节点,对应一个 1个manager集群+多 机房ode组创建(反查数据库获取字段当前值(使用binlog的字段内容列模式(实际变更哪个字段,只同步变更字段行模式(变更任意一个字段,目标库存在更新,不存在则回环补救(保证数据一致性的算法+列模式(常用,性能最高+行模式(全量数据订正,比如修改gmt_modified1秒(回退到某个时间点进行消费,不能让旧版本值覆盖目同一记录,同时检测(事前处理补救(事后处理双向同步(避免回环(避免回环特殊业务场景:A<->B-> A/B更新otter系统表产生的系统标识为A和B同步的channel双写同步(最终一致性双写同步(最终一致性反查数据库同步(以数据 版本同步,解决交替性字段同步(降 概率同步效率(同步越快越好,降低双写导致版本丢失概率双写同步(最终一致性创建(数据库/文件同步(数据一致性,分站到主站回进行单边回环,建议将主要写入站目前仅支持c(otter的另一个子项目,解析mysqlbinlog,已开源 置iii超时时间:如果设置为-1(规划中2.创建使用是否跳过Loadmemory=rpc模式,跨机房同步,多节点调度,开销=2*网络延(Stick粘性选择,配合rpc模式,调度开销最低数据传输模式(针对多节点同步,小数据rpc,大数据file+多线程select日志,mysqlload日志,数据写入到数据库的记录(包含affect01的记录(兼容otter3的处理跳过门数解决数据join,数据filter数据解决数据转换:字 ,异构介如何解决extract/transformI/Oor分布式调度?单节点or存在跨机房同select/load(保证数据一定是按照select的顺序加载解决extract/transformI/O瓶颈,减少S阶段binlog 网络调=(SETTerminL*5(S+ETLTermin)*5=SEDA编程模aawait模拟objectnotify被唤醒后提交任务到threadsingle模拟 锁操作,触发下一个SEDA编程模in (单机版内存调度rpccall zookeeperwatcher(分布式基于watcher完成通知同机房调度(单nodeinmemory调度跨机房同步(双node分布式调度SEDA编程模SEDA编程模stage|pipe|inrpcfile(gzip)httpSEDA编程模(保证数据不丢(支持启动/关闭/挂起运维说明 接 该批次资创建规创 规mysql:oracle:diamonddiamond://group?appKey=key1&groupKey=key2key1配置完成后,验证下数据 3.创建规

单表模 :多表模 :正则模式havana_.*.member_.*通配),.*..*(全库3.创建规建立规(源和目标定义weight确定加载顺序根据数据库记录,拼装地址返回给otter.比如将值按逗号分隔EventProcesor数据过滤,比如忽略status'new'数据修改,比如c=a+b3.创建规b.

单表模 :多表模 :正则模式havana_.*.member_.*通配),.*..*(全库3.创 规操作:在创建 创建规操作:在创建规则,点击下一步,即进入字段的配置页面.不出FileResolver需要对字段做nullmysql:需要指定 将自 为mysqlslave获取oracle指定oracleerosa地址信息,非oraclelocalbinlog:指定本 (不配置,默认就是当前位置{timestamp":1362591698000#13memory模式,支持定义bufferheartbeat/注意 流式api数据获取接口(贴合otter并行调度模型增加:定义为数据从源库写入,到通过otter间隔(重复会,有效利用资源发送人KEY(对应于dragoon2.5中的KV名称针对出现网络异常可尝试自动恢复,减少运维成 项检:异 优势:有效控 内容,准确描述异常情使用&运(标红显示,可以理解为暂定 系统资定位中(标红显示 a最后一批同步数据的从源库写入到otter最后同步时间vs同步时间,代表当前数据库 关系表数据最后一次消费成功<(历史SEDA示例查看 load(pkhashinsertinsertinsert(数据迁移+数据增量场景insertupdateinsert(update字段合并到insert+delete->updateinsertinsert(数据迁移+数据增量场景update+update->update+delete->delete+insert->deleteupdateupdate(数据迁移+数据增量场景delete+delete->说明insert/行记录update执行mergesqlloadpkhash解决方案:根据table+pkhash后进行并行提交优化方案:合并相同执行sql的pkhash结果,进行batch(id顺序写,减少网络交互业务需求:事务中顺序更新offer_detail,offer表,同步时保证顺序offer_detail(weight=1),offer(weight=2),按权重从小到大插loadpkhashweight根据weight不同,构建多个weight按weight顺序,对每个weightbucket执行pkhashpkhash+weight混合+多库 每个库创建一份load实例,并接入weightcontroller每个库按pkhash+weight混合算法进行调度,单库的weightbucket的调度由weightcontrollert的统一控制load纬度一:多库载入,纬度二:单库pkotter4.0支持同步功能内1 (offeroffer,最简单业务n: ,(offer[1-32]->1 ,(offerofferoffer_log)制表名不同(ocndb.member- 字段名不同(member_id(number(11,2字段个数不同 到目标多个otter4.0支持同步功能内数据根据pkjoin(dw业务根据变更字段,查询group(字段组根据pk(规划中数据otter4.0支持同步功能内&基于介质+行记录同步 基于当前变更+字段模 (正常同步业务Otter4同步表必须有主oracle表不允许使用blob/clob(mysql无此限制数据订正(几种case需要和otter团队沟通纯数据订正超过带文件订正超过 关系表订正超过5000w(otter4正在做优化,尽早解除限制新通道上线步骤(当前明确同步需单向双向双写(需要明确主要写入站点)/文件同全量数据初始同步记录到retl_bufferOtter4数据表字段变只允许新增字段到末尾(删除字段慎重字段新增先加目标库,再加源双向同步,新增字段建议无默认值(可确保同步无挂起同步,需要先写,后插数 Otter常见同步otterpipeline按表级别定义同步

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论