深入理解otter



Similar documents
信 息 按 术 与 当 代 外 交 的 变 革 基 于 计 算 机 系 统 的 信 息 铁 末 的 发 展 信 息 技 术 的 发 展 经 历 了 5 次 大 的 突 破, 即 语 言 的 产 生 文 字 的 创 造 印 刷 术 的 发 明 电 报 电 话 及 广 播 的 使 用 电 子 计 算 机

目錄

(Microsoft Word - outline for Genesis 18\243\2721\243\25519\243\27238.doc)

最新文物管理执法全书(十一).doc

证券投资基金信息披露XBRL标引规范第2号<半年度报告摘要>

<4D F736F F D20BDD7A16DA5BCA5A1A4D1A16EAABAB871B27ABB50A448B1A12E646F63>

支付宝2011年 IT资产与费用预算

复 星 保 德 信 境 外 旅 行 意 外 伤 害 保 险 条 款 在 本 条 款 中, 您 指 投 保 人, 我 们 本 公 司 指 复 星 保 德 信 人 寿 保 险 有 限 公 司, 本 合 同 指 复 星 保 德 信 境 外 旅 行 意 外 伤 害 保 险 合 同 投 保 人 被 保 险 人

穨series019-IA.PDF

行 为 能 力 人 或 限 制 民 事 行 为 能 力 人 的, 应 由 其 监 护 人 指 定 或 变 更 身 故 保 险 金 受 益 人 ( 二 ) 伤 残 保 险 金 受 益 人 除 另 有 约 定 外, 本 保 险 合 同 的 伤 残 保 险 金 的 受 益 人 为 被 保 险 人 本 人

(\244j\257d\276\307\274\351_ C.indd_70%.pdf)

根 据 我 国 婚 姻 登 记 所 2013 年 数 据 调 查, 男 女 年 龄 相 差 6 10 岁 占 19.5%, 相 差 10 岁 以 上 的 占 4.9%, 对 比 我 国 在 上 世 纪 90 年 代 初 的 调 查, 年 龄 相 差 6 10 岁 占 8.1%, 年 龄 相 差 10

Microsoft Word - 四川大学档案管理与校史工作简报2015年第6期(总38期_.doc

简报

PowerPoint 演示文稿

臺銀人壽「98年九至十一職等人員甄試」

6寸PDF生成工具


<4D F736F F D20CEF7B2D8B4F3D1A7B1BEBFC6BDCCD1A7B9A4D7F7CBAEC6BDC6C0B9C0D7D4C6C0B1A8B8E62E646F63>

1. 血 液 對 身 體 細 胞 的 重 要 性 身 體 得 以 健 康 運 作, 最 主 要 靠 的 是 血 管 內 的 血 液 ; 它 帶 著 養 分 與 氧 給 細 胞, 並 帶 回 廢 雜 物 及 二 氧 化 碳 排 出 體 外, 若 此 血 管 阻 塞 導 致 運 作 不 順 時, 各 部

叮当旺业通

Microsoft Word - 報告.doc


"!!!!!!! *!!!!!! )!!!!!! (!!!!!!! " # $ % & # $ % ( # $ % ) * # $ %! " # $!!!!!! &!!!!!! %!!!!!! $!!!!!! #!!!!!! "!!!!!!! " ) ) $ " ) ) % " ) ) & " )

升 温 进 一 步 推 动 了 房 价 的 上 升 近 年 丽 水 城 区 商 品 住 宅 价 格 变 动 情 况 单 位 元 + %

目 录 一 参 保 范 围 对 象 和 费 用 缴 纳 二 个 人 账 户 资 金 的 管 理 和 使 用 一 构 成 二 的 使 用 范 围 三 个 人 账 户 资 金 用 于 门 诊 就 医 和 药 店 购 药 费 用 报 销 的 办 法 四 医 疗 保 险 卡 的 作 用 五 使 用 医 疗

!$ 能 利 用 床 旁 影 像 学 检 查 手 段 迅 速 作 出 主 动 脉 夹 层 的 定 性 诊 断 和 定 位 诊 断 一 旦 明 确 诊 断 迅 速 联 系 胸 外 科 做 好 手 术 准 备 以 分 秒 必 争 挽 救 患 者 的 生 命 作 为 第 一 要 务 杨 鹏 曲 阜 市 中

出 青 岛 优 势 创 新 跨 境 电 子 商 务 发 展 机 制 坚 持 协 调 发 展 在 发 展 中 规 范 在 规 范 中 发 展 正 确 处 理 好 政 府 与 市 场 规 范 与 发 展 当 前 与 长 远 进 口 与 出 口 监 管 与 便 利 化 等 关 系 坚 持 绿 色 发 展

2


制 普 通 高 中 学 生 职 业 高 中 学 生 中 等 专 业 学 校 学 生 均 可 参 加 1 2, 大 赛 命 題 : 本 届 大 赛 由 中 国 中 学 生 作 文 大 赛 命 题 委 员 会 命 题 初 中 组 高 中 组 各 1 6 道 题 目 供 参 赛 者 选 用 见 附 件 全

7

附 件 印 发 你 们 请 认 真 贯 彻 执 行 附 件 广 西 年 春 季 中 小 学 推 荐 公 告 目 录 教 辅 材 料 表 广 西 壮 族 自 治 区 物 价 局 广 西 壮 族 自 治 区 新 闻 出 版 广 电 局 广 西 壮 族 自 治 区 教 育 厅 年 月 日 政 府 信 息

* +, -.%, * %(/, & 0!

第 期 惠鹏飞 宋代招抚使始置时间与设置缘由考 营招抚 制 置 使 续 资 治 通 鉴 长 编 与 宋 史 均 有 营马 步 军 都 部 署 平 定 之 后 改 户 部 侍 郎 罢 政 记载 事 隆平集 也记载了赵昌言任参知政事 开宝七年十月 丁酉 以吴 越 王? 为 期间的使职情况 淳化四年参知政

FEELING COMFORTABLE ABOUT SEX

人鱼菽之祭 春秋修其祖庙 士一庙 大夫三 以时有 门 与 行 礼记 月令 云 孟冬之月 天子 事于五祀 盖无出门之祭 今富者祈名岳 望山川 乃祈来年于天宗 大割祀于公社及门闾 腊先祖五 椎牛击鼓 戏倡%像 中者南居当路 水上云台 屠羊 祀 礼记 曲礼下 天子 祭五祀 岁遍 郑 杀狗 鼓瑟吹笙 贫者鸡

! " # $!

中 山 大 学 珠 海 校 区 基 础 教 学 实 验 中 心 ( 下 简 实 验 中 心 ) 成 立 于 2000 年, 为 独 立 建 制 的 校 级 实 验 教 学 机 构 按 照 " 高 起 点, 高 标 准, 高 效 益 " 的 定 位 来 规 划 建 设, 是 一 个 实 验 资 源 高

很 活 潑, 和 氣 的 像 一 家 人 在 張 主 任 慈 祥 的 臉 上, 常 帶 著 微 笑, 在 手 術 或 特 別 檢 查 時, 跟 隨 他 身 邊 會 給 我 扼 要 性 的 解 釋, 可 惜 他 英 年 早 逝, 我 常 念 著 他 陳 振 武 教 授, 沉 默 寡 言, 在 學 術

,,,, (,, - ;, ;, ;, ;, ;,, - ;, - ) (,, ~ ),,,, (, ),,,, ( ), () () ( ),,,,,,,.,, :.,. (,, ) : ( ), ;( ), ;( ) ;( ), :.,. %(,, ),,,,, (,, - ) :( ) ( )

目 录 一 国 家 教 育 部 文 件 1. 中 华 人 民 共 和 国 高 等 教 育 法 1 2. 中 华 人 民 共 和 国 教 师 法 9 3. 高 等 学 校 教 学 管 理 要 点 关 于 加 强 高 等 学 校 本 科 教 学 工 作 提 高 教 学 质 量 的 若 干 意

A API Application Programming Interface 见 应 用 程 序 编 程 接 口 ARP Address Resolution Protocol 地 址 解 析 协 议 为 IP 地 址 到 对 应 的 硬 件 地 址 之 间 提 供 动 态 映 射 阿 里 云 内

婴幼儿护理(四).doc

<4D F736F F D20A662A4ACC170BAF4A457B56FA747ADD3A448B8EAAEC6AABAAA60B74EA8C6B6B52D636E2D D312D3137>

人 体 穴 位 全 图 简 介 我 们 可 从 十 大 人 体 穴 位 图 与 ( 眼 头 面 手 脚 胸 耳 背 足 及 全 身 ) 对 应 图 上 找 到 你 所 需 要 的 穴 位 并 按 摩 保 健 如 眼 睛 不 好, 可 从 面 眼 手 足 耳 穴 位 图 ( 有 详 细 说 明 ) 中

( 제4조 제1 항 관련) 1 이 한약조제지침서에 수재한 한약의 품질은 따로 정하고 있는 규정이 없는 한 대한약 전 또는 대한약전외 한약( 생약) 규격집 의 규격에 따르고, 상기규격집에 수재되지 아니 한 것은 기성한약서에 대한 잠정규정 ( 보건사회부 예규

Microsoft Word - 中餐烹調-素食乙級 doc


季刊9web.indd

最新监狱管理执法全书(二百零五)

00:15 雀 聖 3 自 摸 三 百 番 02:05 龍 虎 門 ( 輔 ) 04:05 忘 不 了 06:25 龍 的 心 08:25 色 戒 11:30 A 計 劃 13:45 綁 架 愛 情 100 天 15:55 歲 月 風 雲 之 上 海 皇 帝 19:00 色 戒 ( 輔 ) 22:0

目 录 一 技 术 条 件 工 程 概 况 及 适 用 范 围 环 境 条 件 采 用 标 准 规 范 车 站 / 车 辆 段 / 停 车 场 变 电 所 综 合 自 动 化 系 统 车 站 / 车 辆 段 / 停 车 场 交 直 流 电

怎样使孩子更加聪明健康(五).doc

( 总 第 1100 期 ) 浙 江 省 人 民 政 府 主 办 2015 年 12 月 4 日 出 版 省 政 府 文 件 浙 江 省 人 民 政 府 关 于 加 快 推 进 慈 善 事 业 发 展 的 实 施 意 见 ( 浙 政 发 号 ) (3) 省 政 府 办 公 厅 文 件

温州市政府分散采购

中 国 中 西 医 结 合 杂 志 年 月 第 卷 第 期!" 通 透 性 增 加 产 生 蛋 白 水 解 酶 促 进 血 管 内 皮 细 胞 有 丝 分 裂 内 皮 细 胞 从 基 底 膜 上 迁 移 到 血 管 周 围 间 隙 粘 附 聚 集 重 构 为 三 维 管 腔 并 与 周 围 血 管

10 防 波 堤 : 石 斑 雀 鯛 方 蟹 岩 蟹 貳 海 岸 生 態 一 棲 地 生 態 1 潮 上 飛 沫 區 林 投 沙 岸 : 藍 綠 藻 海 蟑 螂 陸 蟹 沙 蟹 扁 跳 蝦 寄 居 蟹 2 礁 岩 礫 石 區 姑 婆 嶼 巨 礫 海 岸 : 螺 類 貝 類 海 膽 青 海 菜 紫 菜


一 前 言 : 衛 生 所 在 社 區 醫 學 中 扮 演 了 很 重 要 的 角 色, 是 政 府 與 社 區 民 眾 之 間 不 可 或 缺 的 橋 樑 舉 凡 食 品 稽 查 衛 生 宣 導 癌 症 檢 測 活 動 登 革 熱 預 防... 等 許 多 都 是 屬 於 衛 生 所 的 範 疇

指導教授:范熾文教授

朝陽科技大學

普 通 公 務 單 位 預 算 目 次 ^ 中 華 民 國 104 年 度 ^ ^ ^ ^ ^ ^ ^ 書 表 名 稱 一 藤 總 說 明. ^ 1 30 二 主 要 表 ( 一 ) 歲 入 來 源 別 預 算 表 ^ ( 二 ) 歲 出 機 關 別 預 算 表 ^ 三 附

研商高級中學科學班升學進路規劃及103年起辦理方式相關事宜會議議程

国 家 图 书 馆 年 鉴 0 重 点 文 化 工 程 一 中 华 古 籍 保 护 计 划 0 年, 国 家 图 书 馆 ( 国 家 古 籍 保 护 中 心 ) 根 据 文 化 部 要 求, 围 绕 习 近 平 总 书 记 关 于 弘 扬 中 华 优 秀 传 统 文 化 系 列 讲 话 精 神, 对

<4D F736F F D20D6D0B9FABBB7BEB3CFD6D7B4D3EBD5FEB2DFC6C0C2DB2E646F63>

北 美 医 学 基 金 会 和 教 育 基 金 会 首 席 执 行 官 丁 文 京 来 我 院 访 问 交 流 韩 国 仁 丨 丨 医 疗 集 团 代 表 团 来 我 院 参 观 交 流 我 院 与 天 津 市 眼 科 医 院 签 署 友 好 合 作 医 院 协 议 书 " 首 届 甘 肃 省 萃

<4D F736F F D F7632B0B2C1AAB0B2CBB3C0D6D3CEBEB3CDE2C2C3D0D0D2E2CDE2C9CBBAA6B1A3CFD5CCF5BFEE2E646F63>


关于要求审批《衢州市道路交通组织管理规划( )》的请示

Microsoft Word - IC Report_Chi( )(clean).doc

(Microsoft Word - outline for Genesis 9\243\2721\243\25529.doc)

穨Shuk-final.PDF

2

招行2002年半年度报告全文.PDF

Microsoft Word _4

郑州大学(下).doc

厨房小知识(六)

广 东 纺 织 职 业 技 术 学 院 发 展 党 员 公 示 制 实 施 办 法 关 于 推 荐 优 秀 团 员 作 为 党 的 发 展 对 象 工 作 的 意 见 后 勤 管 理 工 作 广 东 纺 织 职 业 技 术 学 院 新 引 进 教 职 工 周 转 房 管 理


游戏攻略大全(五十).doc

金融英语证书考试大纲


健康知识(二)

中南财经大学(二).doc

广西大学(一).doc

根据学校教学工作安排,2011年9月19日正式开课,也是我校迁址蓬莱的第一学期开学

山东大学(一).doc

2

主 编 : 杨 林 副 主 编 : 张 新 民 邹 兰 曹 纯 纯 周 秋 婷 李 雅 清 黄 囡 囡 评 审 顾 问 : 杨 林 张 新 民 评 审 : 张 新 民 邹 兰 曹 纯 纯 周 秋 婷 李 雅 清 黄 囡 囡 李 忆 萍 徐 如 雪 文 字 编 辑 : 曹 纯 纯 邹 兰 李 雅 清

最新文物管理执法全书(十四).doc

园林常识(二).doc

前 言 二 一 六 年 四 月 四 日, 兒 童 節, 誕 生 了 一 件 美 事 : 中 國 作 家 曹 文 軒 在 意 大 利 博 洛 尼 亞 國 際 童 書 展 榮 獲 國 際 安 徒 生 文 學 獎, 是 該 獎 創 設 六 十 年 來, 第 一 位 摘 桂 的 中 國 作 家, 意 義 重

湖 南 科 技 大 学

上海外国语大学(二).doc

2009 陳 敦 德

切 实 加 强 职 业 院 校 学 生 实 践 能 力 和 职 业 技 能 的 培 养 周 济 在 职 业 教 育 实 训 基 地 建 设 工 作 会 议 上 的 讲 话 深 化 教 育 教 学 改 革 推 进 体 制 机 制 创 新 全 面 提 高 高 等 职 业 教 育 质 量 在

鸽子(三)

兽药基础知识(四)

园林植物卷(十).doc

Transcription:

深 入 理 解 otter 七 锋 2013-07-04

Agenda 1. 中 美 同 步 需 求 2. otter 架 构 & 设 计 o o o o o o o o 如 何 解 决 " 差 " 网 络 如 何 避 免 双 向 回 环 如 何 处 理 数 据 一 致 性 如 何 高 效 同 步 数 据 如 何 高 效 同 步 文 件 如 何 支 持 系 统 HA 如 何 处 理 特 殊 业 务 同 步 如 何 处 理 机 房 容 灾 3. 相 关 产 品 对 比 4. 其 他

业 务 场 景 1. 杭 州 / 美 国 异 地 机 房 双 向 同 步 a. 业 务 性 ( 定 义 同 步 表, 同 步 字 段 ) b. 隔 离 性 ( 定 义 同 步 通 道, 对 应 一 个 具 体 业 务, 多 个 通 道 之 间 互 相 隔 离 ) c. 关 联 数 据 ( 同 步 db 数 据 的 同 时, 需 要 同 步 图 片, 比 如 产 品 表 ) d. 双 A 写 入 ( 避 免 回 环 同 步, 冲 突 处 理, 数 据 一 致 性 保 证 ) e. 事 务 性 ( 没 有 严 格 的 事 务 保 证, 定 义 表 载 入 顺 序 ) f. 异 构 性 ( 支 持 mysql/oracle) 2. 扩 展 业 务 a. 数 据 仓 库 增 量 数 据 ( 整 行 记 录, 根 据 变 更 主 键 反 查 ) b. 业 务 cache 更 新 ( 更 新 db 成 功 的 同 时, 刷 新 下 cache 中 的 值 ) c. 数 据 全 库 迁 移 ( 建 立 任 务 队 列 表 / 触 发 全 库 记 录 变 更 ) d. 多 库 合 并 同 步 (product/product_detail 需 要 尽 可 能 保 证 加 载 顺 序 )

设 计 关 注 要 点 硬 性 要 求 : 1. 数 据 不 能 丢 失 ( 变 更 数 据 一 定 要 成 功 应 用 到 目 标 库 ) 2. 数 据 最 终 一 致 性 ( 双 向 两 边 记 录 要 保 证 最 终 一 致 性 ) 客 观 因 素 : 1. 中 美 网 络 延 迟 ( 平 均 200ms) 2. 中 美 传 输 速 度 (2~6MB/s) 3. 文 件 同 步 (20000 条 记 录 可 达 800MB 文 件 ) 4. 同 步 按 需 隔 离 ( 不 同 业 务 之 间 同 步 互 不 影 响, 同 步 有 快 慢 ) 5. 事 务 性 支 持 ( 允 许 业 务 定 义 表 的 同 步 加 载 的 顺 序 性 )

整 体 架 构

整 体 架 构 otter 整 体 模 块 o manager ( 提 供 web 页 面 进 行 同 步 管 理 ) o arbitrate ( 分 布 式 调 度, 可 跨 IDC 机 房 ) o node ( 同 步 过 程 setl) o canal ( 同 步 数 据 来 源 ) 大 集 群 化 部 署 o 1 个 manager 集 群 + 多 个 IDC 机 房 node 组 成

名 词 解 释 Pipeline: 从 源 端 到 目 标 端 的 整 个 过 程 描 述, 主 要 由 一 些 同 步 映 射 过 程 组 成 Channel: 同 步 通 道, 单 向 同 步 中 一 个 Pipeline 组 成, 在 双 向 同 步 中 有 两 个 Pipeline 组 成 DateMediaPair: 根 据 业 务 表 定 义 映 射 关 系, 比 如 源 表 和 目 标 表, 字 段 映 射, 字 段 组 等 DateMedia : 抽 象 的 数 据 介 质 概 念, 可 以 理 解 为 数 据 表 /mq 队 列 定 义 DateMediaSource : 抽 象 的 数 据 介 质 源 信 息, 补 充 描 述 DateMedia ColumnPair : 定 义 字 段 映 射 关 系 ColumnGroup : 定 义 字 段 映 射 组

如 何 解 决 " 差 " 网 络 TCP/IP 协 议!!!!!

如 何 解 决 " 差 " 网 络

如 何 解 决 " 差 " 网 络

如 何 解 决 " 差 " 网 络 1. 并 行 化 (TCP 滑 动 窗 口 模 型 ) a. 梯 形 模 型 (otter3) 原 理 : 取 一 批 2w 数 据, 分 成 5 小 份, 每 份 分 配 一 个 process 处 理, 每 份 数 据 都 处 理 完 成 后, 再 取 下 一 批 数 据. 4w 条 记 录, 时 间 估 算 :(S+E+T)*2+100*2+10L b. 四 边 形 模 型 (otter4) 原 理 : 每 次 取 4000 条 数 据, 每 完 成 一 批, 立 马 开 启 一 个 新 的 批 次, 尽 可 能 保 证 一 直 有 5 个 批 次 在 处 理. 4w 条 记 录, 时 间 估 算 :(S+E+T)*1+100+10L 四 边 形 模 型 在 总 时 间 上 会 有 优 势, 无 停 顿 感

如 何 解 决 " 差 " 网 络 1. 并 行 化 (TCP 滑 动 窗 口 模 型 ) 如 何 保 证 数 据 不 丢 :2pc. (get/ack) 如 何 处 理 重 传 协 议 :get/ack/rollback 如 何 支 持 并 行 化 : 多 get cursor+ack curosr

如 何 解 决 " 差 " 网 络 1. 并 行 化 (TCP 滑 动 窗 口 模 型 ) 基 本 思 路 : a. 90% 的 情 况 都 是 正 常 的, 异 步 ack 机 制 i. get/ack 利 用 tcp/ip 双 工, 无 I/O 抢 占 b. 出 现 异 常, 处 理 代 价 比 较 高, 需 要 锁 定 所 有 操 作 i. 锁 定 分 布 式 Permit, 阻 塞 所 有 同 步 进 程 + 线 程 ii. rollback get cursor iii. 开 启 分 布 式 Permit, 允 许 线 程 工 作 iiii. retry get

如 何 解 决 " 差 " 网 络

如 何 解 决 " 差 " 网 络 1. 并 行 化 (TCP 滑 动 窗 口 模 型 ) Nagle 算 法 支 持 :( 合 并 数 据 据 包 处 理 ) a. 构 建 RingBuffer ( 内 存 控 制 模 式 / 数 量 控 制 模 式 ) b. 指 定 batchsize 获 取 i. 内 存 大 小 ii. 记 录 数 c. 指 定 定 batchsize + timeout 获 取 i. timeout = -1, 即 时 获 取, 有 多 少 取 多 少 ii. timeout = 0, 阻 塞 至 满 足 batchsize 条 件 iii. timeout > 0, 阻 塞 指 定 的 时 间 或 者 满 足 batchsize. 建 议 值 :batchsize=4000( 约 4M), timeout=500, 内 存 控 制 模 式

如 何 解 决 " 差 " 网 络 2. 调 度 算 法 顺 序 性 保 证 ( 令 牌 id): a. select 每 同 步 一 批 数 据, 申 请 令 牌 自 增 id b. 每 个 阶 段 负 责 传 递 数 据 + 令 牌 id c. load 时 按 照 令 牌 id 顺 序 处 理 调 度 模 型 (SEDA): a. 共 享 thread pool, 解 决 流 控 机 制 b. 划 分 多 stage, 提 升 资 源 利 用 率 c. 统 一 编 程 模 型, 支 持 同 机 房, 跨 机 房 不 同 的 调 度 算 法

如 何 解 决 " 差 " 网 络 SEDA 调 度 模 型 a. await 模 拟 object 获 取 锁 操 作 b. notify 被 唤 醒 后 提 交 任 务 到 thread pools c. single 模 拟 object 释 放 锁 操 作, 触 发 下 一 个 stage

如 何 解 决 " 差 " 网 络 2. 调 度 算 法 中 美 网 络 RTT = 200ms, zookeeper 一 次 写 入 =10ms 调 度 成 本 估 算 : a. zookeeper + zookeeper watch ( 完 全 分 布 式 ) 10 * 4 + 200 * 2 + 200 = 640ms b. zookeeper + rpc (sticky 分 布 式, 尽 可 能 选 择 同 节 点 ) 10 + 100 + 200 = 310ms c. memory + memory ( 内 存 调 度, 单 机 房 ) 0ms d. memory + rpc ( 跨 机 房 调 度, 最 优 实 现, 待 完 成??) 0 + 100 + 100 = 200ms

如 何 解 决 " 差 " 网 络 3. 数 据 传 输 stage 间 数 据 传 递 :pipe 管 道 stage pipe stage pipe 实 现 ( 数 据 TTL 控 制 ): a. in memory b. rpc call (<1MB) c. file(gzip) + http 多 线 程 下 载

如 何 解 决 " 差 " 网 络

如 何 避 免 双 向 回 环 实 现 思 路 : 1. 利 用 事 务 机 制, 在 事 务 头 和 尾 中 插 入 otter 同 步 标 识 2. 解 析 时 识 别 同 步 标 识, 判 断 是 否 需 要 屏 蔽 同 步. 几 点 注 意 : 1. 基 于 标 准 SQL 实 现 可 以 支 持 mysql/oracle 等 异 构 数 据 库 的 双 向 同 步 2. 事 务 完 整 解 析 & 完 整 可 见 性 事 务 被 拆 开 同 步, 会 出 现 部 分 回 环 同 步, 数 据 不 一 致

如 何 避 免 双 向 回 环

如 何 处 理 数 据 一 致 性 业 务 场 景 : a. 多 地 写 入 b. 同 一 记 录, 同 时 变 更 同 一 : 具 体 到 某 一 张 表, 某 一 条 pk, 某 一 字 段 同 时 :A 地 写 入 的 数 据 在 B 地 还 未 可 见 的 一 段 时 间 范 围 方 案 : 1. 检 测 ( 事 前 处 理 ) 2. 补 救 ( 事 后 处 理 )

如 何 处 理 数 据 一 致 性

如 何 处 理 数 据 一 致 性 思 路 ; 数 据 最 终 一 致 性 基 于 trust source + 流 量 不 均 衡 ( 杭 州 多, 美 国 少 )

如 何 处 理 数 据 一 致 性 单 向 回 环 流 程 : us->hz 同 步 的 数 据, 会 再 次 进 入 hz->us 队 列 hz->us 同 步 的 数 据, 不 会 进 入 us->hz 队 列 ( 回 环 终 止 ) 存 在 的 问 题 : a. 存 在 同 步 延 迟 时, 会 出 现 版 本 丢 失 / 数 据 交 替 性 变 化 解 决 方 案 : a. 反 查 数 据 库 同 步 ( 以 数 据 库 最 新 版 本 同 步, 解 决 交 替 性 ) b. 字 段 同 步 ( 降 低 冲 突 概 率 ) c. 同 步 效 率 ( 同 步 越 快 越 好, 降 低 双 写 导 致 版 本 丢 失 概 率 )

如 何 处 理 数 据 一 致 性 ( 分 布 式 Permit) 注 意 :A,B,C 三 点 状 态 都 正 常 才 允 许 进 行 同 步 ( 解 决 数 据 单 向 覆 盖 )

如 何 处 理 数 据 一 致 性 ( 预 研 )

如 何 处 理 数 据 一 致 性 ( 预 研 ) 基 本 思 路 : a. 基 于 同 一 时 间 的 理 论, 找 出 存 在 时 间 交 集 的 同 步 数 据 批 次 b. 在 交 叉 同 步 数 据 批 次 中, 找 出 同 一 数 据 的 记 录, 可 以 精 确 到 pk 或 者 column. ( 优 势 : 减 少 单 向 回 环 同 步 的 数 据 ) c. 发 起 类 似 单 向 回 环 同 步, 保 证 数 据 最 终 一 致 性.

如 何 高 效 同 步 数 据 1. 数 据 最 小 化 a. 数 据 合 并 i. 详 见 合 并 机 制 b. 数 据 压 缩 i. 数 据 protobuf 存 储, 再 gzip 压 缩, 20% 的 压 缩 率 2. 数 据 并 行 化 a. S/E/T/L 并 行 调 度 b. join 并 行 化 c. load 并 行 化 (pk hash + weight)

如 何 高 效 同 步 数 据 ( 数 据 合 并 ) 1. insert + insert -> insert ( 数 据 迁 移 + 数 据 增 量 场 景 ) 2. insert + update -> insert (update 字 段 合 并 到 insert) 3. insert + delete -> delete 4. update + insert -> insert ( 数 据 迁 移 + 数 据 增 量 场 景 ) 5. update + update -> update 6. update + delete -> delete 7. delete + insert -> insert 8. delete + update -> update ( 数 据 迁 移 + 数 据 增 量 场 景 ) 9. delete + delete -> delete 说 明. 1. insert/ 行 记 录 update 执 行 merge sql, 解 决 重 复 数 据 执 行 2. 合 并 算 法 执 行 后, 单 pk 主 键 只 有 一 条 记 录, 解 决 并 行 load 的 效 率

如 何 高 效 同 步 数 据 (load 并 行 化 ) pk hash 算 法 : 需 求 描 述 : 提 升 同 步 性 能, 按 table 粒 度 并 行 时, 改 善 大 表 同 步 问 题 解 决 方 案 : 根 据 table + pk hash 后 进 行 并 行 提 交 优 化 方 案 : 合 并 相 同 执 行 sql 的 pk hash 结 果, 进 行 batch 提 交 (id 排 序,mysql 顺 序 写, 减 少 网 络 交 互 ) weight 算 法 :( 业 务 事 务 性 支 持 ) 业 务 需 求 : 事 务 中 顺 序 更 新 offer_detail,offer 表, 同 步 时 插 入 保 证 顺 序 解 决 方 案 : 定 义 offer_detail(weight=1),offer(weight=2), 按 权 重 从 小 到 大 插 入, 保 证 在 一 个 批 次 数 据 中 offer_detail 的 变 更 要 优 先 于 offer 表 变 更 插 入

如 何 高 效 同 步 数 据 (load 并 行 化 ) pk hash + weight 算 法 : a. 根 据 weight 不 同, 构 建 多 个 weight bucket b. 按 weight 顺 序, 对 每 个 weight bucket 执 行 pk hash 算 法 pk hash + weight + 多 库 复 制 :( 文 件 和 数 据 ) 业 务 描 述 : a. 数 据 库 load 完 成 后, 发 送 数 据 到 mq, 或 者 更 新 cache b. 会 员 变 更 数 据, 需 要 同 步 到 多 个 目 标 数 据 库 算 法 描 述 : a. 每 个 库 创 建 一 份 load 实 例, 并 接 入 weight controller 调 度 b. 每 个 库 按 pk hash+weight 混 合 算 法 进 行 调 度, 单 库 的 weight bucket 的 调 度 由 weight controllert 的 统 一 控 制

如 何 高 效 同 步 数 据 (load 并 行 化 ) 二 维 线 程 池 weight 调 度 : 纬 度 一 : 多 库 载 入, 纬 度 二 : 单 库 pk hash

如 何 高 效 同 步 数 据 最 近 1 天 数 据 同 步 量 (7 月 4 号 统 计 ) a. 记 录 数 :568748541 (5.7 亿 ) b. 大 小 :377805439534 (351GB, 压 缩 后 约 为 70GB) c. 平 均 记 录 大 小 :664 byte d. 高 峰 期 带 宽 占 用 :(80% 的 数 据 产 生 于 工 作 时 间 ) 70GB * 80% * 2 / (8 * 3600) = 4MB/ 秒

如 何 高 效 同 步 文 件 1. 文 件 最 小 化 a. 文 件 变 化 判 断 b. 文 件 重 复 同 步 判 断 c. 数 据 压 缩 i. gzip 压 缩, 80% 的 压 缩 率 2. 文 件 并 行 化 a. S/E/T/L 并 行 调 度 b. 多 线 程 压 缩 & 传 输 & 同 步 3. 多 网 络 a. 公 网, 中 美 专 线, 香 港 专 线

如 何 高 效 同 步 文 件 ( 文 件 变 化 判 断 )

如 何 高 效 同 步 文 件 ( 文 件 重 复 同 步 判 断 ) 重 复 同 步 判 断 依 据 : 1. 源 文 件 的 最 后 修 改 时 间 比 目 标 文 件 的 最 后 修 改 时 间 旧 2. 源 文 件 和 目 标 文 件 大 小 一 致 注 意 点 : 1. 文 件 存 储 时 区 问 题. 2. 可 以 优 化 为 根 据 文 件 md5 比 较 调 用 时 机 : 1. extract 在 生 成 文 件 压 缩 包 时, 会 先 调 用 美 国 节 点, 提 交 文 件 重 复 同 步 判 断 的 请 求. ( 多 了 一 次 网 络 开 销 )

如 何 高 效 同 步 文 件 ( 多 线 程 优 化 ) 1. 多 线 程 压 缩 a. 多 个 线 程 并 发 请 求 aranda 服 务, 下 载 为 本 地 临 时 文 件 b. 压 缩 线 程 串 行 压 缩 目 前 线 程 数 默 认 为 10. 2. 多 线 程 传 输 (pull 模 式 ) 比 如 需 要 杭 州 传 文 件 到 美 国 a. 会 在 杭 州 启 动 一 个 http 服 务. ( 目 前 为 嵌 入 式 jetty) b. 美 国 启 动 多 线 程 下 载 器, 多 socket 下 载 文 件 几 点 注 意 : a. sendfile 技 术, 减 少 jvm 内 存 使 用, 后 续 优 化 b. aria2c 下 载 器 ( 参 数 :-k 2M -j 50 -s 16 -x 16)

如 何 高 效 同 步 文 件 ( 多 线 程 优 化 ) 最 近 1 天 数 据 同 步 量 (7 月 4 号 统 计 ) a. 记 录 数 :19495302 (2000w,AE 产 品 占 据 50% 以 上 ) b. 大 小 :1138035470493 (1.03TB, 压 缩 后 约 830GB) c. 平 均 记 录 大 小 :57kb d. 高 峰 期 带 宽 占 用 : i. 假 定 :80% 的 数 据 产 生 于 工 作 时 间 压 缩 :830GB * 80% * 2 / (8 * 3600) = 47MB/ 秒 未 压 缩 :1.03TB * 80% * 2 / (8 * 3600) = 59MB/ 秒 ii. 假 定 : 文 件 同 步 时 间 段 均 匀 分 布 压 缩 :830GB * 2 / (24 * 3600) = 20MB/ 秒 未 压 缩 :1.03TB * 2 / (24 * 3600) = 25MB/ 秒

如 何 支 持 系 统 HA 基 本 思 路 : a. 使 用 zookeeper 临 时 节 点, 会 话 失 效, 节 点 自 动 删 除 b. manager 监 听 node 节 点, 冻 结 期 设 计 为 90 秒 i. 冻 结 期 内, 不 做 任 何 处 理 ii. 超 过 冻 结 其 后, 检 查 节 点 是 否 已 恢 复 1. 如 果 恢 复, 不 做 任 何 处 理 ( 考 虑 系 统 发 布 ) 2. 未 恢 复, 进 入 系 统 HA 流 程. c. HA 流 程 i. 查 找 节 点 对 应 的 同 步 任 务 ii. 针 对 每 个 任 务 发 起 RESTART 指 令. (tcp 重 传 协 议 ) iii. 阻 塞 分 布 式 permit,rollback 数 据, 开 启 同 步.

如 何 处 理 特 殊 业 务 1. 同 步 映 射 a. 1 : 1 映 射, (offer -> offer, 最 简 单 业 务 ) b. n : 1 映 射, (offer[1-32] -> offer) c. 1 : n 映 射, (offer -> offer, offer_log) 数 据 多 路 复 制 2. 视 图 同 步 a. 表 名 不 同 (ocndb.member -> crmg.cbu_member) b. 字 段 名 不 同 (member_id -> vaccount_id) c. 字 段 类 型 不 同 (number(11,2) -> varchar(32)) d. 字 段 个 数 不 同 (1:n 映 射,1 个 字 段 复 制 到 目 标 多 个 字 段 )

如 何 处 理 特 殊 业 务 扩 展 点 : 1. FileResolver 解 决 数 据 和 文 件 的 关 联 关 系 2. EventProcessor 自 定 义 数 据 处 理, 可 以 改 变 一 条 变 更 数 据 的 任 意 内 容 运 维 方 式 : a. 支 持 class 和 源 码 的 载 入 b. manager 管 理 源 码, 运 行 时 动 态 推 送 & 编 译 局 限 : 无 法 像 精 卫 自 定 义 依 赖 lib 库, 无 法 做 复 杂 的 业 务 处 理

如 何 处 理 机 房 容 灾 a. zookeeper 集 群 容 灾 leader/follower : hz(3 台 ) + cm3(2 台 ) + cm4(2 台 ) observer : us(2 台 ) 读 节 点, 加 速 读 请 求 b. manager 杭 州 多 机 房 部 署 node 节 点 客 户 端 容 灾, 链 接 失 败 后 切 到 下 一 台. c. node 跨 IDC 机 房 部 署 i. 依 赖 manager 的 HA 监 控 机 制 (node 无 法 自 己 监 控 自 己 )

otter 初 步 性 能 指 标 吞 吐 量 : 1. insert 30~40w/min 2. delete 60w/min latency : 1. 本 地 机 房 + 单 向 同 步 100ms 2. 中 美 机 房 + 单 向 / 双 向 同 步 2s 3. 中 美 机 房 + 文 件 10s 重 要 : 1. load 并 行 线 程 设 置 很 重 要, 取 决 目 标 库 载 入 能 力 2. latency 的 几 个 经 验 值, 要 根 据 数 据 量 和 高 峰 期 做 继 续 评 估

otter4 vs otter3 otter3 : a. 文 件 同 步 1000 / min, 60MB/min b. 数 据 记 录 20000 / min otter4 : a. 文 件 同 步 8000 / min, 500MB/min b. 数 据 记 录 400000 / min otter4 相 比 于 otter3, 是 一 个 数 量 级 上 的 飞 跃

otter" 慢 " 在 哪 里? 类 似 产 品 : a. 精 卫 延 迟 <100ms b. drc 延 迟 <1s otter" 慢 " 点 : a. 中 美 200ms 延 迟 vs 青 岛 70ms 延 迟 b. 中 美 2~6MB 带 宽 vs 青 岛 千 兆 光 纤

Otter4 使 用 约 定 1. 同 步 表 必 须 有 主 键 2. oracle 表 不 允 许 使 用 blob/clob (mysql 无 此 限 制 ) 3. 数 据 订 正 ( 几 种 case 需 要 和 otter 团 队 沟 通 ) a. 纯 数 据 订 正 超 过 1000w b. 带 文 件 订 正 超 过 50w c. 非 映 射 关 系 表 订 正 超 过 5000w (otter4 正 在 做 优 化, 尽 早 解 除 限 制 ) 4. 新 通 道 上 线 步 骤 ( 当 前 ) a. 明 确 同 步 需 求 i. 单 向 / 双 向 / 双 写 ( 需 要 明 确 主 要 写 入 站 点 ) / 文 件 同 步 b. 全 量 数 据 初 始 化 i. 行 记 录 + gmt_modified 修 改 ii. 插 入 同 步 记 录 到 retl_buffer 表

Otter4 使 用 约 定 5. 数 据 表 字 段 变 更 a. 只 允 许 新 增 字 段 到 末 尾 ( 删 除 字 段 慎 重 ) b. 字 段 新 增 先 加 目 标 库, 再 加 源 库 c. 双 向 同 步, 新 增 字 段 建 议 无 默 认 值 ( 可 确 保 同 步 无 挂 起 ) 6. 图 片 同 步, 需 要 先 写 图 片, 后 插 数 据 otter4 同 步 延 迟 比 较 低, 如 果 先 写 数 据, 后 写 图 片 或 者 两 者 并 发 写, 就 会 有 一 定 的 概 率 拿 到 数 据 后, 反 查 没 有 图 片, 导 致 图 片 同 步 丢 失

Otter 常 见 FAQ 1. 同 步 隔 离 性 a. otter pipeline 按 表 级 别 定 义 同 步 映 射, 不 同 pipeline 互 不 影 响 b. 接 入 erosa+canal, 按 库 存 储 数 据, 不 同 表 同 步 会 存 在 一 定 影 响 2. 同 步 延 迟 取 决 目 标 数 据 库 可 接 受 的 load 并 发 度 + 地 域 之 间 的 网 络 延 迟 3. 核 心 竞 争 力 a. 并 行 调 度 模 型,( 缓 解 extract/transform I/O latency 问 题 ) b. 双 向 同 步 / 双 A 同 步 ( 避 免 回 环 同 步 / 冲 突 检 测 ) c. pk hash + weight 并 行 载 入 ( 极 大 的 提 升 同 步 性 能 ) d. 接 入 canal, 高 效 获 取 增 量 数 据, 并 按 变 更 字 段 同 步 ( 高 效, 低 latency) e. 同 步 映 射 / 视 图 同 步 / 数 据 join / 数 据 filter ( 强 大 的 功 能 支 持 )

otter 资 源 1. otter manger http://otter.alibaba-inc.com 2. 相 关 文 档 http://b2b-doc.alibaba-inc.com/display/rc/otter http://b2b-doc.alibaba-inc.com/display/opentech/otter 3. 需 求 平 台 http://agile.alibaba-inc.com/browse/otter

TKS!