Soumettre la recherche
Mettre en ligne
Ocean base 破解数据库高可用难题
•
Télécharger en tant que PPT, PDF
•
2 j'aime
•
870 vues
everestsun
Suivre
分布式选举破解跨机房部署数据库高可用难题
Lire moins
Lire la suite
Logiciels
Signaler
Partager
Signaler
Partager
1 sur 35
Télécharger maintenant
Recommandé
高可用性系统设计与实现
高可用性系统设计与实现
everestsun
BigTable PreReading
BigTable PreReading
everestsun
OceanBase-破解数据库高可用难题
OceanBase-破解数据库高可用难题
everestsun
高可用性系统设计与实现
高可用性系统设计与实现
everestsun
百度消息队列设计和实现总结
百度消息队列设计和实现总结
everestsun
Leveled compaction
Leveled compaction
seki_intheforest
Google LevelDB Study Discuss
Google LevelDB Study Discuss
everestsun
Level db
Level db
宗志 陈
Recommandé
高可用性系统设计与实现
高可用性系统设计与实现
everestsun
BigTable PreReading
BigTable PreReading
everestsun
OceanBase-破解数据库高可用难题
OceanBase-破解数据库高可用难题
everestsun
高可用性系统设计与实现
高可用性系统设计与实现
everestsun
百度消息队列设计和实现总结
百度消息队列设计和实现总结
everestsun
Leveled compaction
Leveled compaction
seki_intheforest
Google LevelDB Study Discuss
Google LevelDB Study Discuss
everestsun
Level db
Level db
宗志 陈
Leveldb background
Leveldb background
宗志 陈
涨客资,用推策 推策产品介绍
涨客资,用推策 推策产品介绍
Baidu
Bigtable
Bigtable
bhanupriyagupta19
The Anatomy Of The Google Architecture Fina Lv1.1
The Anatomy Of The Google Architecture Fina Lv1.1
Hassy Veldstra
Baidu
Baidu
Nanor
The Missing Manual for Leveled Compaction Strategy (Wei Deng & Ryan Svihla, D...
The Missing Manual for Leveled Compaction Strategy (Wei Deng & Ryan Svihla, D...
DataStax
GOOGLE BIGTABLE
GOOGLE BIGTABLE
Tomcy Thankachan
The Google Bigtable
The Google Bigtable
Romain Jacotin
賽門鐵克端點安全教戰守則 - Symantec Endpoint Protection 及 Symantec Critical System Protec...
賽門鐵克端點安全教戰守則 - Symantec Endpoint Protection 及 Symantec Critical System Protec...
Wales Chen
组网与网络管理技术(第四章)
组网与网络管理技术(第四章)
telab
鹰眼下的淘宝_EagleEye with Taobao
鹰眼下的淘宝_EagleEye with Taobao
terryice
Track A-3 Enterprise Data Lake in Action - 搭建「活」的企業 Big Data 生態架構
Track A-3 Enterprise Data Lake in Action - 搭建「活」的企業 Big Data 生態架構
Etu Solution
BDTC2015 阿里巴巴-鄢志杰(智捷)-deep learning助力客服小二:数据技术及机器学习在客服中心的应用
BDTC2015 阿里巴巴-鄢志杰(智捷)-deep learning助力客服小二:数据技术及机器学习在客服中心的应用
Jerry Wen
儲存三二話
儲存三二話
JacksonWang59
海量資料與圖書館
海量資料與圖書館
皓仁 柯
11/14王團研究室—安全大師王團論毒 in台中
11/14王團研究室—安全大師王團論毒 in台中
T客邦
Selling sybase hds solution for banking
Selling sybase hds solution for banking
focusbi
教材摘要版 -Big data-海量資料的資料採礦方法-三星課程網陳景祥顧問-20130521
教材摘要版 -Big data-海量資料的資料採礦方法-三星課程網陳景祥顧問-20130521
Beckett Hsieh
Java@taobao
Java@taobao
vanadies10
腾讯大讲堂59 数据蕴含商机,挖掘决胜千里
腾讯大讲堂59 数据蕴含商机,挖掘决胜千里
George Ang
软件工程 第二章
软件工程 第二章
浒 刘
Data mining 1
Data mining 1
Dori Ya
Contenu connexe
En vedette
Leveldb background
Leveldb background
宗志 陈
涨客资,用推策 推策产品介绍
涨客资,用推策 推策产品介绍
Baidu
Bigtable
Bigtable
bhanupriyagupta19
The Anatomy Of The Google Architecture Fina Lv1.1
The Anatomy Of The Google Architecture Fina Lv1.1
Hassy Veldstra
Baidu
Baidu
Nanor
The Missing Manual for Leveled Compaction Strategy (Wei Deng & Ryan Svihla, D...
The Missing Manual for Leveled Compaction Strategy (Wei Deng & Ryan Svihla, D...
DataStax
GOOGLE BIGTABLE
GOOGLE BIGTABLE
Tomcy Thankachan
The Google Bigtable
The Google Bigtable
Romain Jacotin
En vedette
(8)
Leveldb background
Leveldb background
涨客资,用推策 推策产品介绍
涨客资,用推策 推策产品介绍
Bigtable
Bigtable
The Anatomy Of The Google Architecture Fina Lv1.1
The Anatomy Of The Google Architecture Fina Lv1.1
Baidu
Baidu
The Missing Manual for Leveled Compaction Strategy (Wei Deng & Ryan Svihla, D...
The Missing Manual for Leveled Compaction Strategy (Wei Deng & Ryan Svihla, D...
GOOGLE BIGTABLE
GOOGLE BIGTABLE
The Google Bigtable
The Google Bigtable
Similaire à Ocean base 破解数据库高可用难题
賽門鐵克端點安全教戰守則 - Symantec Endpoint Protection 及 Symantec Critical System Protec...
賽門鐵克端點安全教戰守則 - Symantec Endpoint Protection 及 Symantec Critical System Protec...
Wales Chen
组网与网络管理技术(第四章)
组网与网络管理技术(第四章)
telab
鹰眼下的淘宝_EagleEye with Taobao
鹰眼下的淘宝_EagleEye with Taobao
terryice
Track A-3 Enterprise Data Lake in Action - 搭建「活」的企業 Big Data 生態架構
Track A-3 Enterprise Data Lake in Action - 搭建「活」的企業 Big Data 生態架構
Etu Solution
BDTC2015 阿里巴巴-鄢志杰(智捷)-deep learning助力客服小二:数据技术及机器学习在客服中心的应用
BDTC2015 阿里巴巴-鄢志杰(智捷)-deep learning助力客服小二:数据技术及机器学习在客服中心的应用
Jerry Wen
儲存三二話
儲存三二話
JacksonWang59
海量資料與圖書館
海量資料與圖書館
皓仁 柯
11/14王團研究室—安全大師王團論毒 in台中
11/14王團研究室—安全大師王團論毒 in台中
T客邦
Selling sybase hds solution for banking
Selling sybase hds solution for banking
focusbi
教材摘要版 -Big data-海量資料的資料採礦方法-三星課程網陳景祥顧問-20130521
教材摘要版 -Big data-海量資料的資料採礦方法-三星課程網陳景祥顧問-20130521
Beckett Hsieh
Java@taobao
Java@taobao
vanadies10
腾讯大讲堂59 数据蕴含商机,挖掘决胜千里
腾讯大讲堂59 数据蕴含商机,挖掘决胜千里
George Ang
软件工程 第二章
软件工程 第二章
浒 刘
Data mining 1
Data mining 1
Dori Ya
2009-02 Sharetech MS6X20
2009-02 Sharetech MS6X20
peter
Emc keynote 1130 1200
Emc keynote 1130 1200
Chiou-Nan Chen
機密圖檔與敏感資料庫資料防洩漏方案
機密圖檔與敏感資料庫資料防洩漏方案
道成資訊股份有限公司
腾讯开放平台 Hellena
腾讯开放平台 Hellena
Shaoning Pan
腾讯大讲堂:59 数据蕴含商机,挖掘决胜千里
腾讯大讲堂:59 数据蕴含商机,挖掘决胜千里
d0nn9n
腾讯大讲堂59 数据蕴含商机,挖掘决胜千里
腾讯大讲堂59 数据蕴含商机,挖掘决胜千里
PMCamp
Similaire à Ocean base 破解数据库高可用难题
(20)
賽門鐵克端點安全教戰守則 - Symantec Endpoint Protection 及 Symantec Critical System Protec...
賽門鐵克端點安全教戰守則 - Symantec Endpoint Protection 及 Symantec Critical System Protec...
组网与网络管理技术(第四章)
组网与网络管理技术(第四章)
鹰眼下的淘宝_EagleEye with Taobao
鹰眼下的淘宝_EagleEye with Taobao
Track A-3 Enterprise Data Lake in Action - 搭建「活」的企業 Big Data 生態架構
Track A-3 Enterprise Data Lake in Action - 搭建「活」的企業 Big Data 生態架構
BDTC2015 阿里巴巴-鄢志杰(智捷)-deep learning助力客服小二:数据技术及机器学习在客服中心的应用
BDTC2015 阿里巴巴-鄢志杰(智捷)-deep learning助力客服小二:数据技术及机器学习在客服中心的应用
儲存三二話
儲存三二話
海量資料與圖書館
海量資料與圖書館
11/14王團研究室—安全大師王團論毒 in台中
11/14王團研究室—安全大師王團論毒 in台中
Selling sybase hds solution for banking
Selling sybase hds solution for banking
教材摘要版 -Big data-海量資料的資料採礦方法-三星課程網陳景祥顧問-20130521
教材摘要版 -Big data-海量資料的資料採礦方法-三星課程網陳景祥顧問-20130521
Java@taobao
Java@taobao
腾讯大讲堂59 数据蕴含商机,挖掘决胜千里
腾讯大讲堂59 数据蕴含商机,挖掘决胜千里
软件工程 第二章
软件工程 第二章
Data mining 1
Data mining 1
2009-02 Sharetech MS6X20
2009-02 Sharetech MS6X20
Emc keynote 1130 1200
Emc keynote 1130 1200
機密圖檔與敏感資料庫資料防洩漏方案
機密圖檔與敏感資料庫資料防洩漏方案
腾讯开放平台 Hellena
腾讯开放平台 Hellena
腾讯大讲堂:59 数据蕴含商机,挖掘决胜千里
腾讯大讲堂:59 数据蕴含商机,挖掘决胜千里
腾讯大讲堂59 数据蕴含商机,挖掘决胜千里
腾讯大讲堂59 数据蕴含商机,挖掘决胜千里
Ocean base 破解数据库高可用难题
1.
志 (解 )孙
东 伦 xielun.szd@alipay.com 杭州 2014-6-15 破解数据 高可用库 难题
2.
AgendaAgenda 数据 的高可用性传统 库 OceanBase
的高可用架构 OceanBase 的分布式选举 小结
3.
高可用的数据 系库 统高可用的数据
系库 统 数据可用性:保 数据可证 访问 数据安全性:防止数据 失丢 故障不可避免 件:软 Bug 硬件:阿里数据中心 年数万次每 天 :致命的灾 人 : 操作为 误 猜 :按概率排序竞 题
4.
几个“几个“九九”的认识”的认识
5.
可用性的 价业务 值可用性的
价业务 值 5 个 9 可用性 5.25 分 意味着什 ?钟 么 = 580,000,000 = 17 万条内裤 = 伤百万用 的心户
6.
数据 的高可用传统 库数据
的高可用传统 库 机的高可用单 高可用的硬件 件 冗余组 级 无法避免 点故障?单 集群的高可用 高端的存 区域网(储 SAN ) 机房部署,无法避免的“天 ”?单 灾 主 制的高可用备复 可以跨机房
7.
高可用的 机单高可用的 机单 双路冗余
交 源热 换电 双路市 独立供电 电 双路冗余光 交互 有网纤 专 络 HostHost HostHost SwitchSwitch SwitchSwitch DataBaseDataBase
8.
集群的高可用集群的高可用 InfiniBand: 40Gbit/s Latency: 1us v.s. Ethernet:
250 us InfiniBand: 40Gbit/s Latency: 1us v.s. Ethernet: 250 us DataBase Instance DataBase Instance OSOS Node 1Node 1 DataBase Instance DataBase Instance OSOS Node 2Node 2 DataBase Instance DataBase Instance OSOS Node 3Node 3 DataBase FilesDataBase Files Shared StorageShared Storage 高端存储 高档服务器
9.
主 的高可用备主 的高可用备 主
制备复 主机提供 写, 机提供 服读 备 读 务 主机宕机,把 机切 主机备 换为 一主 N 备
10.
数据 主 制库
备复数据 主 制库 备复 主机 制复 redo 日志到 机备 同 模式(最大保 )步 护 • 机备 是否写 后 答主机?盘 应 模式(最高性能)异步 • 主机不等待 机的 答备 应 思考 : 比如上 模式题 对 两种
11.
数据 主 制库
备复数据 主 制库 备复 主机 制复 redo 日志到 机备 混合模式(最大可用) • 同 模式不可用 , 模式步 时 转为异步 • 衡了最大性能和 数据的最大保权 对 护
12.
高可用集群高可用集群 ++ 主
制备复主 制备复 IDC-1 IDC-2 Redo Stream Redo Stream DataBase Instance DataBase Instance OSOS Node 1Node 1 DataBase Instance DataBase Instance OSOS Node 2Node 2 DataBase FilesDataBase Files Shared StorageShared Storage DataBase Instance DataBase Instance OSOS Node 1Node 1 DataBase Instance DataBase Instance OSOS Node 2Node 2 DataBase FilesDataBase Files Shared StorageShared Storage 太 了!!贵
13.
OceanBase 的高可用性架构
14.
OceanBaseOceanBase 架构架构 ((
机群单机群单 )) 注:后 内容会将续 OB 集群作 一个单 为 DataBase 修改 量增 用接口应 基 数据线 Root Server 控中心总
15.
分布式 境的困境环分布式 境的困境环 普通服
器务 + 公用的网 境络环 故障成 常为 态 跨机房部署是必需 OceanBase 只能走主 制的路备复 如何保 真正的数据零 失?证 丢 如何 衡性能、可用性、数据安全?权 CPU
16.
最大可用 = 最大保
(同 )护 步 + 最大性能(异 )步 最大可用模式的数据 失丢 基于主 制的困境备复基于主 制的困境备复 MasterMaster SlaveSlave 7 8 9 7 87 8 9
17.
OceanBaseOceanBase 主 同备
步主 同备 步 主 行写事 并同库执 务 步 redo 日志到备库 多数成功就 写事 成功认为 务 MasterMaster IDC-1IDC-1 SlaveSlave IDC-3IDC-3 SlaveSlave IDC-2IDC-2 7 8 7 9 8 7 9
18.
PaxosPaxos "Time, Clocks, and the
Ordering of Events in a Distributed System" Byzantine generals Paxos LaTeX 2013 ACM Turing Award
19.
基于投票的同 制步复基于投票的同 制步复
点优 保 了数据安全性证 redo 日志 同 写多强 步 份 更大化系 的可用性统 机房故障不影 写服单 响读 务 数据一致性 & 系 可用性:统 3/5 > 2/3 > 2/2
20.
同步 redo 日志写多
保 数据零 失份 证 丢 多数写成功即成功提供更高的可用性 小结小结 MasterMaster IDC-1IDC-1 SlaveSlave IDC-3IDC-3 SlaveSlave IDC-2IDC-2
21.
OceanBase 的分布式选举
22.
投票和选举投票和选举 流程怎 保 成功?选举
么 证选举
23.
原 :任意 刻最多只能有一个则
时 Leader 投票 ,以不可靠成 提供可靠服协议 员 务 多数 ( 超 半数过 ) 成 可用 服 可用员 则 务 投票简单 协议 要容忍网 分区络 Leader 租 (约 Lease ) 分布式 概述选举问题分布式 概述选举问题 Leader
24.
分布式 基本原理选举分布式 基本原理选举 Paxos
的基本要求协议 成 不 假员 说 话 ( 非拜占庭式 ) 个成 不自相矛盾单 员说话 :投票给 A 了,就不能再投票给 B 任何修改需要多数成 同意员 :多个成 投票的同员 步 个成 不自相矛盾单 员说话 投出的票 行持久化?对 进 住自己在一个记 lease 周期内的投票 ( 分布式选举 ) 重 后一个启 lease 周期内不投票 多个成 投票的同员 步 有 者协调 (leader) 无 者?协调
25.
多个成 投票的同员 步多个成
投票的同员 步 问题 系 或者原统刚启动 leader 常异 lease 期后,过 选 举 leader 的 候,各个参与者的投票 各不相同, 个参时 时间 每 与者收到 票的 各不相同选 时间 投票后,参与者在一轮 lease 周期内不得再次投票 (“ 不得 自相矛盾” ) 已有方案 各 个 参 与 者 在 起 投 票 , 延 某 个 随 机发 时 迟 时间 (100ms~300ms) ,最早 起者通常成 新的发 为 leader 序 与 密 合、 以融入 中时 逻辑 选举逻辑紧 耦 业务规则难 选举序 与 密 合、 以融入 中时 逻辑 选举逻辑紧 耦 业务规则难 选举 容易出 失现选举 败 (election split) ,下次 主要等选 Lease 期!!过
26.
““ 同步同步”” 无主选举无主选举 按
一的统 规则 (“ 投票 重权 ” ) 新选择 leader 所有成 在员 T1 刻时 “ 同时同时” 起发 选举 接收 投票预接收 投票预 接收投票接收投票 接收广播接收广播 T1: 投票预 T2: 投票 T4: 选举结 束 T3: 票计 & 广播
27.
““ 同 ”步
时钟同 ”步 时钟 充当无主 的 者时钟 选举 协调 个 程的 被均分 片每 进 时间 为时间 个 片内只能 行一次无主每 时间 进 选举 在 Tcycle 整数倍 刻 起时 发 选举
28.
无主 序分析选举时无主 序分析选举时
偏差最大时钟 Tdiff ,网 程收 理 最络单 发传输处 时间 长 Tst Step 1 : T1 刻广播投票 重时 权 Step 2 :接收投票 重并在权 T2 刻向最大 者投票时 值 投票到 :预 达时间 [T1-Tdiff×2 , T1+Tdiff×2+Tst=T2] 接收 投票预接收 投票预 接收投票接收投票 接收广播接收广播 T1: 投票预 T2: 投票 T3: 票计 & 广播 T4: 选举结 束
29.
无主 序分析选举时无主 序分析选举时 Step
3 :接收 票,选 T3 刻 票,得票 半者时 计 过 成功并广播 投票到 :达时间 [T2-Tdiff×2 , T2+Tdiff×2+Tst=T3] Step 4 :接收新任 leader 广播并在 T4 刻时 结 束选举 新 任 leader 广 播 到 :达时间 [T3- Tdiff×2 , T3+Tdiff×2+Tst=T4] 耗选举 时 Telect=T4-T1=Tdiff×6+Tst×3 接收 投票预接收 投票预 接收投票接收投票 接收广播接收广播 T1: 投票预 T2: 投票 T3: 票计 & 广播 T4: 选举结 束
30.
LeaseLease 及无主 周期选举及无主
周期选举 偏差时钟 Tdiff=100ms ,网 程络单 传输 Tst=200ms 耗选举 时 Telect=Tdiff×6+Tst×3=1200ms 展的 耗扩 选举 时 Telect2=Telect+200=1400ms Tlease=4×Telect2=5600ms ,从 TT11 始开 无主 周期选举 Tcycle=5×Tlease=7000ms T1 Tlease Tlease Tcycle TcycleT4 接收 投票预接收 投票预 接收投票接收投票 接收广播接收广播 T1: 投票预 T2: 投票 T3: 票计 & 广播 T4: 选举结 束
31.
Why TWhy Tcyclecycle
> T> Tleaselease ?? 5 个成员 C1~C5 选举 T1 刻 始 , 出新时 开 选 举 选 leader C1 T4 刻时 C2~C5 未 收 到 C1 新 任 leader 广播 Tcycle 刻时 C2~C5 重新 始 ,开 选举 选 出新 leader C4 C 2 C 1 C 3C 5 C 4 Clien t T1 Tlease Tlease Tcycle TcycleT4 接收 投票预接收 投票预 接收投票接收投票 接收广播接收广播 T1: 投票预 T2: 投票 T3: 票计 & 广播 T4: 选举结 束
32.
““ 同步同步”” 无主
的 缺点选举 优无主 的 缺点选举 优 点优 超 半数成 正常且参与, 一定成功过 员 则选举 :定 数据实现简单 长 结构 + 新消息直接覆盖旧的 + 定时处 理 缺点 最大 偏差及最大网 有要求对 时钟 络传输时间 Leader 常后,最异 长 (Tlease+ Tcycle+Telect) 出新选 leader Tlease Tlease Tcycle Tcycle T1 T3
33.
的 棒性选举协议 鲁的
棒性选举协议 鲁 可能双主 ( 裂脑 ) 无主 :若选举 Tdiff > (Telect2+T3-T1)=2200ms 自 控:动监 A 在 Ta 刻 包,时 发 B 在 Tb 刻收到, :时 则 - 2*Tdiff <= Tb-Ta <= 2*Tdiff + Tst Tlease Tlease Tcycle Tcycle T1 T3 Leader Tlease Leader Tlease
34.
总结总结 数据 的高可用性传统
库 依 昂 的硬件赖 贵 设备 主 同 的局限性备 步 OceanBase 的高可用性架构 不可靠的 PC 服 器务 利用分布式投票 的多机日志同实现 步 保 一致的同 提供更大可用性证强 时 利用分布式 了可靠的 主选举实现 选 主宕机后自 恢 保 写的可用性动 复 证
35.
ThanksThanks 源的分布式 系数据开 关
库 OceanBase http://alibaba.github.io/oceanbase/
Notes de l'éditeur
开场白: 串场 个人介绍
分层:互联网服务的可用性要求&lt;数据库的可用性要求 提问:哪种故障最频繁?
Availability vs reliability 统计周期很重要 故障频率-》可靠性 提问:哪种统计周期的要求更高?
冗余
Oracle Exadata 纠错码,RAID等
No SPOF 镜像数据量大 距离限制,通常部署在一个IDC中
实现冗余的手段是复制,复制的问题是如何保证一致性;进而在保证一致性的情况下提供最大可用性。 日志以事务为单位 Group commit 光纤100km/ms rtt
贵!主机宕机可用性,备机宕机,网络隔离情况下写不可用
需要多各个模块进行说明 通过云计算技术实现容错和故障恢复
银行转账的例子
分布式投票
调侃Lampson Barbala Liskov
1. 十二届全国人大一次会议举行第四次全体会议代表在投票 2. 阿富汗总统选举
程序有bug,就可能说假话,导致协议失败 什么时候记不住自己一个lease周期内的投票?
后面有反例说明,如果不遵守“一轮lease后才可再次投票”的规则,可能出现双主 时序逻辑与选举逻辑紧密耦合:因为没有“协调者”,谁先发起选举谁就有可能被选为主
T1时刻:预投票,即每个成员广播自己的“投票权重” T2(&gt;T1)时刻:投票,即每个成员向收到的“投票权重”最大者投票 T3(&gt;T2)时刻:计票&广播,即统计选票,得票过半者当选新任leader并向所有成员广播 T4(&gt;T3)时刻:选举结束(成员接收到新任leader广播) 如何确定T1?且听下文分解 从T1到T2:网络传输延迟、时钟误差
Tst=200ms=&gt;rt=400ms 杭州到美国RT:正常150ms,绕行香港时185ms (如中美直通专线异常会绕行中-港-美,需要增加35ms左右)。再极端点拥塞的话,那延迟会到250ms甚至丢包。 leader自己不使用最后一个Telect2 为什么不能在选举失败T4后立刻再选举?为什么Tcycle&gt;Tlease?
为什么不能在选举失败T4后立刻再选举?为什么Tcycle&gt;Tlease?
Leader监控到自身与多数选举者时钟错位,则终止自身的leader角色 到目前为止我们分析了Paxos投票协议,接下来看OceanBase多机群使用Paxos投票协议
Télécharger maintenant