2019独角兽企业重金招聘Python工程师标准>>>

背景

otter4.0发布至今也差不多有近一年的时间,中间过程有着比较曲折经历,拥抱了许多变化,目前otter4已经在逐步替换otter3,继续服务icbu的相关中美同步业务,otter3即将成为过去式。

otter4管理系统(manager)

比如我们内部系统使用了otter.alibaba-inc.com的域名,后续文档描述的时候会基于此域名链接

系统登录

匿名访问时只拥有同步状态的查询权限,可考虑与自己用户授权管理.

同步管理

同步模式配置 (点击同步列表右边的查看/编辑链接)


说明:

a. 同步一致性

  1. 基于数据库反查 (简单点说,就是强制反查数据库,从binlog中拿到pk,直接反查对应数据库记录进行同步,回退到几天前binlog进行消费时避免同步老版本的数据时可采用)
  2. 基于当前日志变更 (基于binlog/redolog解析出来的字段变更值进行同步,不做数据库反查,推荐使用)

b. 同步模式

  1. 行模式 (兼容otter3的处理方案,改变记录中的任何一个字段,触发整行记录的数据同步,在目标库执行merge sql)
  2. 列模式 (基于log中的具体变更字段,按需同步)

c. 特殊组合: (同样支持)

  1. 基于数据库反查+列模式
  2. 基于当前日志变更+行模式

同步简要信息 (点击同步列表上的通道Channel名字的链接)


说明:

  • 延迟时间 = 数据库同步到目标库成功时间 - 数据库源库产生变更时间, 单位秒. (由对应node节点定时推送配置)
  • 最后同步时间 = 数据库同步到目标库最近一次的成功时间 (当前同步关注的相关表,同步到目标库的最后一次成功时间)
  • 最后位点时间 = 数据binlog消费最后一次更新位点的时间 (和同步时间区别:一个数据库可能存在别的表的变更,不会触发同步时间变更,但会触发位点时间变更)
  1. 同步详细信息 (点击同步简要信息上的Pipeline名字的链接)

目前主要分为几类:

  1. 映射关系列表
  2. 延迟时间
  3. 同步进度
  4. 监控管理
  5. 日志记录
映射关系列表

点击查看打开映射关系信息页面:

说明:

  • 定义同步的源和目标的表信息 (注意:表明可以不同,可以定义数据库分库/分表)
  • Push权重 (对应的数字越大,同步会越后面得到同步,优先同步权重小的数据)
  • FileResolver (数据关联文件的解析类,目前支持动态源码推送,在目标jvm里动态编译生效,不再需要起停同步任务)
  • EventProcessor (业务自定义的数据处理类,比如可以定义不需要同步status='ENABLE'的记录或者根据业务改变同步的字段信息 简单业务扩展,otter4新特性)
  • 字段同步 (定义源和目标的字段映射,字段名和字段类型均可进行映射定义,类似于数据库视图定义功能 otter4新特性)
  • 组合同步 (字段组的概念,字段组中的一个字段发生变更,会确保字段组中的3个字段一起同步到目标库 otter4新特性)
  • 多个字段决定一个图片地址,变更文件字段中的任何一个字段,就会触发FileResolver类解析,从而可以确保基于字段同步模式,也可以保证FileResolver能够正常解析出文件 otter4重要的优化)
吞吐量


说明:

  • 数据记录统计 (insert/update/delete的变更总和,不区分具体的表,按表纬度的数据统计,可查看映射关系列表->每个映射关系右边的行为曲线链接)
  • 文件记录统计
延迟时间


说明:

  • 延迟时间的统计 = 数据库同步到目标库成功时间 - 数据库源库产生变更时间, 单位秒. (由对应node节点定时推送配置)
同步进度


说明:

  • mainstem状态: 代表canal模块当前的运行节点(也即是binlog解析的运行节点,解析会相对耗jvm内存)
  • position状态: 当前同步成功的最后binlog位点信息 (包含链接的是数据库ip/port,对应binlog的位置,对应binlog的变更时间此时间即是计算延迟时间的源库变更时间)
  • 同步进度: 每个同步批次会有一个唯一标识,可根据该唯一标示进行数据定位,可以查看每个批次的运行时间,找出性能瓶颈点
监控管理

说明:

  1. 监控项目
  • 同步延迟,position超时(位点超过多少时间没有更新) , 一般业务方关心这些即可
  • 异常 (同步运行过程中出现的异常,比如oracle DBA关心oracle系统ORA-的异常信息,mysql DBA关心mysql数据库相关异常)
  • process超时(一个批次数据执行超过多少时间),同步时间超时(数据超过多少时间没有同步成功过)
  1. 阀值设置
  • 1800@09:00-18:00 , 这例子是指定了早上9点到下午6点,报警阀值为1800.
  1. 发送对象
  • otterteam为otter团队的标识,阿里内部使用了dragoon系统监控报警通知,如果外部系统可实现自己的报警通知机制
日志记录

说明:

  1. 日志标题即为对应的监控规则定义的名字,可根据监控规则检索对应的日志记录
  2. 日志内容即为发送报警的信息

注意: otter4采用主动推送报警的模式,可以保证报警的及时性以及日志完整性(相比于日志文件扫描机制来说)

配置管理

数据源

说明:

  • 主要是数据库连接信息:定义字符编码,ip地址等 (类似napoli等存储也可以抽象为数据源进行配置)
  • 切换数据库时,可根据ip检索同步数据库,找到需要切换的同步任务

数据表

说明:

  • 数据表是一种抽象概念,(针对数据库类型即为一个数据库表的定义)

canal配置

说明:主要是管理canal链接到mysql/oracle获取日志的相关参数等,业务方可不重点关注

机器管理

转载于:https://my.oschina.net/sansom/blog/157878

Manager使用介绍相关推荐

  1. python多进程通信manager_python中进程间数据通讯模块multiprocessing.Manager的介绍

    本篇文章给大家带来的内容是关于python中进程间数据通讯模块multiprocessing.Manager的介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 目前开发中有遇到进程 ...

  2. 客快物流大数据项目(二十七):Cloudera Manager简单介绍

    目录 Cloudera Manager简单介绍 一.cloudera manager的概念 二.cloudera manager的功能 三.cloudera manager的架构 <

  3. Django笔记十九之manager用法介绍

    首先介绍一下 manager 的使用场景,比如我们有一些表级别的,需要重复使用的功能,都可以使用 manager 来实现. 比如我们在前面的笔记中介绍的 model 的 create().update ...

  4. Oracle PrimaveraUnifier成本管理器(Cost Manager)简要介绍

    目录 一:标准成本管理器(Standad Cost Manager) 二:通用成本管理器(General Cost Manager) 成本管理器(Cost Manager)是Unifier管理和聚焦汇 ...

  5. cloudera manager整体介绍

    体系架构 Cloudera Manager的核心是Cloudera Manager Server.Server托管Admin Console Web Server和应用程序逻辑.它负责安装软件.配置. ...

  6. Android SDK Manager 的介绍

    android版本下面 Documentation for Android SDK --->帮助文档 SDK Platform   --------->SDK平台 ARM EABI v7a ...

  7. python全栈开发,Day40(进程间通信(队列和管道),进程间的数据共享Manager,进程池Pool)...

    昨日内容回顾 进程 multiprocess Process -- 进程 在python中创建一个进程的模块startdaemon 守护进程join 等待子进程执行结束锁 Lock acquire r ...

  8. Oracle 11g 新特性 – HM(Hang Manager)简介

    在这篇文章中我们会对oracle 11g 新特性-hang 管理器(Hang Manager) 进行介绍.我们需要说明,HM 只在RAC 数据库中存在. 在我们诊断数据库问题的时候,经常会遇到一些数据 ...

  9. 一个简单的BitTorrent客户端实现(六):peer manager和peer实现

    peer manager和peer peer是整个BT通信中最复杂的部分,主要是里面各种消息的发送和一些choke和unchoke策略,piece选择策略等等.peer manager用于管理peer ...

最新文章

  1. 【uni-app】深度作用选择器解决修改checkbox样式无效问题
  2. Linux 备份系统重要服务的配置文件脚本
  3. WWDC 2013 Session笔记 - iOS7中的多任务
  4. impacket安装 python_Impacket网络协议工具包介绍
  5. Scatter matrix(散布矩阵)
  6. 驱动人生安装win11苹果/Windows系统教程
  7. 创建office一直转圈_Microsoft Office 2019 VL for Mac(office系列全套装)
  8. 7-5 华氏度转摄氏度(四舍五入) (5分)
  9. Windows Server 2016 路由和远程访问
  10. 计算机主板的结构平面草图,10分钟浓缩10年 教你看懂主板基本结构
  11. 生信文献 | TIMER2.0用于分析肿瘤免疫细胞浸润
  12. Linux内存管理 —— 为buddy做准备:MMU, TLB, ZONE
  13. 数字转换成大写人民币
  14. uni-app中picker组件的“取消”“完成”国际化,能变成英文
  15. 什么是回归问题和分类问题?机器学习知识点
  16. Presto(二)开启安全认证
  17. 英语进阶系列-A05-英语升级练习三
  18. The First Paper
  19. 对于人脸识别检测中出现遮挡问题的解决方案
  20. 模块“CHUSBDLL.DLL.dll“可能与您正在运行的Windows版本不兼容。检查该模块是否与regsvr32.exe的x86或x64版本兼容 【已解决】

热门文章

  1. Dynamics CRM 注册插件dll到GAC
  2. 『中级篇』Docker Cloud自动构建 Docker image(55)
  3. javascript:this 关键字
  4. php基础篇-二维数组排序 array_multisort
  5. 四种排序方法用java实现
  6. dedecms首页怎么调用公司简介的内容
  7. Dll 导出类 [示例代码]
  8. MongoDB搭建和简单操作(windows环境)
  9. ***是如何能破解诸如美国中情局之类的密码
  10. flink读写hive-代码方式