-
>
決戰(zhàn)行測(cè)5000題(言語(yǔ)理解與表達(dá))
-
>
軟件性能測(cè)試.分析與調(diào)優(yōu)實(shí)踐之路
-
>
第一行代碼Android
-
>
深度學(xué)習(xí)
-
>
Unreal Engine 4藍(lán)圖完全學(xué)習(xí)教程
-
>
深入理解計(jì)算機(jī)系統(tǒng)-原書第3版
-
>
Word/Excel PPT 2013辦公應(yīng)用從入門到精通-(附贈(zèng)1DVD.含語(yǔ)音視頻教學(xué)+辦公模板+PDF電子書)
阿里云數(shù)字新基建系列:云數(shù)據(jù)庫(kù)架構(gòu) 版權(quán)信息
- ISBN:9787121421198
- 條形碼:9787121421198 ; 978-7-121-42119-8
- 裝幀:一般膠版紙
- 冊(cè)數(shù):暫無(wú)
- 重量:暫無(wú)
- 所屬分類:>>
阿里云數(shù)字新基建系列:云數(shù)據(jù)庫(kù)架構(gòu) 本書特色
遨游海域的座頭鯨、成群結(jié)隊(duì)的角馬、群聚飛翔的火烈鳥……構(gòu)成了一幅幅壯美的生存畫面,遷徙是自然界令人嘆為觀止的景觀。 數(shù)智時(shí)代的“上云”與自然界的“遷徙”何其相似。 2021年伊始,我們博文視點(diǎn)的編輯團(tuán)隊(duì)聯(lián)合阿里云技術(shù)團(tuán)隊(duì),為廣大IT技術(shù)人員奉上“阿里云數(shù)字新基建系列”。這個(gè)系列包括5本書,題材涉及Kubernetes、混合云架構(gòu)、云數(shù)據(jù)庫(kù)、CDN原理與流媒體技術(shù)、云服務(wù)器運(yùn)維(Windows),囊括了領(lǐng)先的云技術(shù)知識(shí)與阿里云技術(shù)團(tuán)隊(duì)獨(dú)到的實(shí)踐經(jīng)驗(yàn),是國(guó)內(nèi)IT技術(shù)圖書中又一套重磅作品! 關(guān)于本書《云數(shù)據(jù)庫(kù)架構(gòu)》: (1)阿里云數(shù)據(jù)庫(kù)產(chǎn)品事業(yè)部總裁、達(dá)摩院數(shù)據(jù)庫(kù)與存儲(chǔ)實(shí)驗(yàn)室負(fù)責(zé)人李飛飛力薦,全彩印刷,厚352頁(yè)。 (2)詳解云數(shù)據(jù)庫(kù)領(lǐng)域各種引擎的特點(diǎn)與原理,助你理解數(shù)據(jù)庫(kù)架構(gòu)的選型要點(diǎn)!阿里云數(shù)據(jù)庫(kù)專家朱明 李森 許文科 江厚順 王超 郭寧 余從佳 王海忠聚力撰寫!
阿里云數(shù)字新基建系列:云數(shù)據(jù)庫(kù)架構(gòu) 內(nèi)容簡(jiǎn)介
“阿里云數(shù)字新基建系列”包括5本書,涉及Kubernetes、混合云架構(gòu)、云數(shù)據(jù)庫(kù)、CDN原理與流媒體技術(shù)、云服務(wù)器運(yùn)維(Windows),囊括了領(lǐng)先的云技術(shù)知識(shí)與阿里云技術(shù)團(tuán)隊(duì)獨(dú)到的實(shí)踐經(jīng)驗(yàn),是國(guó)內(nèi)IT技術(shù)圖書又一重磅作品。 數(shù)據(jù)庫(kù)技術(shù),被稱為“計(jì)算機(jī)三駕馬車”之一,幾十年來(lái),持續(xù)支持著全球億萬(wàn)數(shù)字業(yè)務(wù)的運(yùn)行,而云計(jì)算的出現(xiàn),賦予了數(shù)據(jù)庫(kù)新的能力。云數(shù)據(jù)庫(kù)按引擎能力,可以分為關(guān)系型數(shù)據(jù)庫(kù)、非關(guān)系型數(shù)據(jù)庫(kù)、數(shù)據(jù)倉(cāng)庫(kù)和分布式新型數(shù)據(jù)庫(kù)。本書從技術(shù)原理入手,講解各種數(shù)據(jù)庫(kù)的特點(diǎn),分析不同場(chǎng)景的架構(gòu)選型和數(shù)據(jù)庫(kù)優(yōu)化,繼而展開到云數(shù)據(jù)庫(kù)的遷移、云數(shù)據(jù)庫(kù)的運(yùn)維工作,期望能幫助讀者了解和掌握云數(shù)據(jù)庫(kù)相關(guān)知識(shí)與技能。
阿里云數(shù)字新基建系列:云數(shù)據(jù)庫(kù)架構(gòu) 目錄
第1章 關(guān)系型云數(shù)據(jù)庫(kù)技術(shù)特點(diǎn)
1.1 RDS for MySQL
1.1.1 SQL語(yǔ)句在MySQL服務(wù)層的執(zhí)行過(guò)程
1.1.2 優(yōu)化器與優(yōu)化器追蹤(Optimizer Trace)
1.1.3 slowlog 與 binlog
1.1.4 InnoDB的MVCC
1.1.5 InnoDB redo日志
1.1.6 InnoDB Mini-Transaction
1.1.7 InnoDB undo日志
1.1.8 內(nèi)部XA二階段提交
1.1.9 半同步復(fù)制
1.1.10 線程池
1.1.11 X-Engine
1.1.12 RDS三節(jié)點(diǎn)企業(yè)版
1.2 RDS for SQL Server
1.2.1 SQL Server的架構(gòu)
1.2.2 SQLOS
1.2.3 SQL Server的并發(fā)
1.2.4 SQL Server的優(yōu)化器
1.2.5 RDS for SQL Server高可用實(shí)現(xiàn)
1.3 RDS for PostgreSQL
1.3.1 PGSQL的優(yōu)化器
1.3.2 PGSQL MVCC與鎖
1.3.3 PGSQL 復(fù)制與高可用
第2章 非關(guān)系型及新型云數(shù)據(jù)庫(kù)技術(shù)特點(diǎn)
2.1 非關(guān)系型數(shù)據(jù)庫(kù)
2.1.1 Redis & Memcached 緩存型數(shù)據(jù)庫(kù)
2.1.2 MongoDB
2.2 數(shù)據(jù)倉(cāng)庫(kù)
2.2.1 AnalyticDB for MySQL
2.2.2 HBase & Lindorm
2.3 分布式和其他新型數(shù)據(jù)庫(kù)
2.3.1 以PolarDB-X為代表的Share Nothing分布式集群
2.3.2 以PolarDB-M為代表的Share Everything集群
第3章 云數(shù)據(jù)庫(kù)技術(shù)選型與場(chǎng)景實(shí)踐
3.1 擴(kuò)容的技術(shù)實(shí)踐
3.1.1 業(yè)務(wù)請(qǐng)求量膨脹
3.1.2 數(shù)據(jù)容量膨脹
3.2 換代的技術(shù)實(shí)踐
3.2.1 同系列升級(jí)
3.2.2 跨系列升級(jí)
3.3 熱點(diǎn)訪問(wèn)的技術(shù)優(yōu)化
3.4 場(chǎng)景實(shí)踐
3.4.1 在線教育數(shù)據(jù)庫(kù)選擇
3.4.2 線上游戲數(shù)據(jù)庫(kù)選擇
3.4.3 工業(yè)/ IoT數(shù)據(jù)庫(kù)選擇
3.4.4 金融數(shù)據(jù)庫(kù)選擇
3.4.5 交通物流配送
第4章 數(shù)據(jù)庫(kù)遷移的實(shí)現(xiàn)和方案
4.1 數(shù)據(jù)庫(kù)遷移的類型和方式
4.2 邏輯數(shù)據(jù)遷移的實(shí)現(xiàn)
4.2.1 邏輯數(shù)據(jù)遷移的步驟與風(fēng)險(xiǎn)
4.3 云上的數(shù)據(jù)庫(kù)遷移的工具
4.3.1 數(shù)據(jù)傳輸服務(wù)DTS
4.3.2 數(shù)據(jù)庫(kù)和應(yīng)用遷移服務(wù)ADAM
4.3.3 數(shù)據(jù)集成
4.3.4 BDS
4.3.5 其他遷移工具
4.4 不同場(chǎng)景下的數(shù)據(jù)遷移方案
4.4.1 場(chǎng)景1:一對(duì)一遷移
4.4.2 場(chǎng)景2:一對(duì)多高耦合業(yè)務(wù)遷移
4.4.3 場(chǎng)景3:多對(duì)一異構(gòu)遷移
第5章 云上數(shù)據(jù)庫(kù)運(yùn)維指南與*佳實(shí)踐
5.1 快速入門使用云數(shù)據(jù)庫(kù)
5.1.1 創(chuàng)建RDS實(shí)例
5.1.2 設(shè)置白名單
5.1.3 設(shè)置連接地址
5.1.4 創(chuàng)建數(shù)據(jù)庫(kù)和賬號(hào)
5.1.5 常見運(yùn)維管理
5.2 主備切換(HA)
5.2.1 HA健康檢測(cè)機(jī)制
5.2.2 臨時(shí)關(guān)閉主備自動(dòng)切換
5.3 主動(dòng)運(yùn)維
5.3.1 消息接收管理
5.3.2 設(shè)置可維護(hù)時(shí)間段
5.3.3 待處理事件
5.4 使用Open API
5.4.1 API通信協(xié)議
5.4.2 API簽名機(jī)制
5.4.3 OpenAPI Explorer
5.4.4 API問(wèn)題診斷
第6章 安全管理DMS
6.1 產(chǎn)品介紹
6.1.1 什么是數(shù)據(jù)管理DMS
6.1.2 基礎(chǔ)架構(gòu)
6.1.3 DMS優(yōu)勢(shì)
6.2 使用指南
6.2.1 系統(tǒng)管理
6.2.2 實(shí)例管理
6.3 DMS*佳實(shí)踐
6.3.1 權(quán)限管理
6.3.2 基于ADB和DMS企業(yè)版周期生成報(bào)表數(shù)據(jù)
6.3.3 自定義審批流程
6.3.4 不鎖表變更-回收碎片空間
第7章 數(shù)據(jù)庫(kù)自治服務(wù)DAS
7.1 初識(shí)數(shù)據(jù)庫(kù)自治服務(wù)DAS
7.1.1 數(shù)據(jù)庫(kù)運(yùn)維與管理的挑戰(zhàn)
7.1.2 解決方案自治服務(wù)DAS
7.2 從實(shí)戰(zhàn)案例認(rèn)識(shí)自治服務(wù)DAS
7.2.1 使用DAS分析優(yōu)化慢SQL
7.2.2 使用DAS分析RDS實(shí)例CPU打滿/打高現(xiàn)象
7.2.3 RDS實(shí)例活躍Session監(jiān)控
7.2.4 10秒SQL分析
7.2.5 SQL自動(dòng)限流
7.2.6 DAS如何分析RDS實(shí)例不同時(shí)段業(yè)務(wù)差異
7.2.7 異常檢測(cè)
7.2.8 RDS實(shí)例情況整體分析
第8章 運(yùn)維備份服務(wù)DBS
8.1 產(chǎn)品介紹
8.1.1 什么是DBS
8.1.2 產(chǎn)品優(yōu)勢(shì)
8.1.3 備份方式
8.2 使用指南
8.2.1 DBS與RDS備份的區(qū)別
8.3 DBS*佳實(shí)踐
8.3.1 備份集自動(dòng)下載到本地
8.3.2 快速恢復(fù)
8.3.3 數(shù)據(jù)庫(kù)異地備份
第9章 監(jiān)控利器之云監(jiān)控
9.1 什么是云監(jiān)控
9.1.1 產(chǎn)品構(gòu)架
9.1.2 功能特性
9.2 產(chǎn)品優(yōu)勢(shì)
9.3 應(yīng)用場(chǎng)景
9.4 使用指南和*佳實(shí)踐
9.4.1 報(bào)警模板*佳實(shí)踐
9.4.2 使用報(bào)警模板的操作步驟
9.4.3 通過(guò)釘釘群接收?qǐng)?bào)警通知 P331
9.4.4 內(nèi)網(wǎng)監(jiān)控*佳實(shí)踐 P333
阿里云數(shù)字新基建系列:云數(shù)據(jù)庫(kù)架構(gòu) 節(jié)選
4.4 不同場(chǎng)景下的數(shù)據(jù)遷移方案 前面講述了數(shù)據(jù)遷移的步驟、不同的數(shù)據(jù)庫(kù)類型的遷移方式以及各種遷移工具,本節(jié)會(huì)以一個(gè)電商平臺(tái)的系統(tǒng)架構(gòu)發(fā)展的角度,列舉自建數(shù)據(jù)庫(kù)上云過(guò)程中的幾個(gè)典型場(chǎng)景,通過(guò)前面講述的內(nèi)容對(duì)這些場(chǎng)景的遷移方案進(jìn)行討論和分析。 4.4.1 場(chǎng)景1:一對(duì)一遷移 A公司是一家小型電商創(chuàng)業(yè)公司,其電商平臺(tái)涵蓋了店鋪、商品、訂單、搜索、會(huì)員管理等模塊,前期出于客戶體量較低以及成本考慮,公司的技術(shù)團(tuán)隊(duì)使用圖4-16所示的系統(tǒng)架構(gòu)。 從這個(gè)框架中可以看到,該公司使用一臺(tái)應(yīng)用服務(wù)器進(jìn)行業(yè)務(wù)請(qǐng)求的處理,業(yè)務(wù)系統(tǒng)的各個(gè)模塊全部運(yùn)行在該服務(wù)器上,并且使用了主備模式的數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的存儲(chǔ)和查詢。該系統(tǒng)架構(gòu)在業(yè)務(wù)發(fā)展初期已經(jīng)完全可以滿足需求。 假設(shè)該階段公司技術(shù)團(tuán)隊(duì)為了更加靈活地對(duì)資源進(jìn)行控制,應(yīng)對(duì)突發(fā)流量對(duì)業(yè)務(wù)系統(tǒng)的壓力,降低IT成本,決定對(duì)這套業(yè)務(wù)系統(tǒng)進(jìn)行上云操作。 該系統(tǒng)上云分為兩部分:應(yīng)用與數(shù)據(jù)庫(kù)。針對(duì)應(yīng)用系統(tǒng)上云,技術(shù)團(tuán)隊(duì)選擇在云上購(gòu)買一臺(tái)ECS服務(wù)器部署應(yīng)用程序。重點(diǎn)討論數(shù)據(jù)庫(kù)上云,為了數(shù)據(jù)庫(kù)系統(tǒng)的穩(wěn)定和快速恢復(fù),技術(shù)團(tuán)隊(duì)選擇購(gòu)買高可用版本的RDS MySQL數(shù)據(jù)庫(kù),由于本地的數(shù)據(jù)庫(kù)是主備模式,而云上RDS for MySQL的高可用版本雖然也是主備模式,但是高可用的備節(jié)點(diǎn)主要做容災(zāi),無(wú)法對(duì)外提供服務(wù),所以要滿足真正的主備模式,還需要在RDS高可用實(shí)例中添加一個(gè)只讀節(jié)點(diǎn)來(lái)充當(dāng)本地?cái)?shù)據(jù)庫(kù)架構(gòu)中的備節(jié)點(diǎn)。產(chǎn)品選型之后的數(shù)據(jù)庫(kù)架構(gòu)如圖4-17所示。 圖4-16 系統(tǒng)架構(gòu) 圖4-17 一對(duì)一復(fù)制 產(chǎn)品選型完成后,開始對(duì)數(shù)據(jù)庫(kù)進(jìn)行遷移。在進(jìn)行正式遷移之前,技術(shù)團(tuán)隊(duì)考慮了如下幾點(diǎn)要素。 l 遷移工具:由于DTS對(duì)MySQL→MySQL的遷移支持非常好,而且支持增量遷移,方便業(yè)務(wù)切換,遷移工具決定使用DTS。 l 連接方式:考慮到數(shù)據(jù)安全和傳輸速率的影響,DTS連接本地?cái)?shù)據(jù)庫(kù)的方式使用專線連接。 l 業(yè)務(wù)影響:由于DTS遷移會(huì)對(duì)表的數(shù)據(jù)進(jìn)行全表掃描,業(yè)務(wù)高峰期遷移會(huì)嚴(yán)重影響業(yè)務(wù)響應(yīng),故把遷移時(shí)間安排在了夜間零點(diǎn)之后。而且為了進(jìn)一步降低對(duì)本地?cái)?shù)據(jù)庫(kù)主節(jié)點(diǎn)的影響,決定開啟本地備節(jié)點(diǎn)數(shù)據(jù)庫(kù)的Binlog,DTS連接本地備節(jié)點(diǎn)數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)遷移。 l 停機(jī)時(shí)間:由于云上有完整的一套業(yè)務(wù)系統(tǒng),業(yè)務(wù)切換時(shí)只需將業(yè)務(wù)流量切換到云上系統(tǒng)即可,停機(jī)時(shí)間基本可以忽略。 l 遷移時(shí)間規(guī)劃:本地?cái)?shù)據(jù)庫(kù)業(yè)務(wù)表數(shù)量500個(gè),數(shù)據(jù)大概300GB,借助DTS,結(jié)構(gòu)+全量數(shù)據(jù)理想情況下可以在3~4個(gè)小時(shí)內(nèi)完成,后進(jìn)行增量數(shù)據(jù)的持續(xù)遷移。 l 遷移策略:為了充分評(píng)估云上系統(tǒng)的性能,決定分批次切換現(xiàn)有用戶流量到新的系統(tǒng),并且持續(xù)保持本地?cái)?shù)據(jù)庫(kù)系統(tǒng)到云上數(shù)據(jù)庫(kù)系統(tǒng)的數(shù)據(jù)同步,直到業(yè)務(wù)完全切換到云上且穩(wěn)定運(yùn)行后斷開。如果在理想時(shí)間內(nèi)因未知問(wèn)題導(dǎo)致沒(méi)有完成結(jié)構(gòu)+全量的數(shù)據(jù)遷移,則取消遷移,評(píng)估解決實(shí)際問(wèn)題后重新規(guī)劃時(shí)間。 一對(duì)一遷移的遷移流程和*終架構(gòu)如圖4-18所示。 圖4-18 一對(duì)一遷移 這是一對(duì)一遷移的典型場(chǎng)景,也是*簡(jiǎn)單的上云場(chǎng)景,由于業(yè)務(wù)模塊全部在一個(gè)服務(wù)器中,不需要考慮業(yè)務(wù)模塊上云的先后和調(diào)用問(wèn)題。但是如果遇到多個(gè)業(yè)務(wù)模塊耦合性較強(qiáng)的遷移場(chǎng)景,由于無(wú)法保證多個(gè)業(yè)務(wù)系統(tǒng)同一時(shí)間全部上云,直接這樣一刀切就無(wú)法實(shí)現(xiàn),這種多業(yè)務(wù)模塊的場(chǎng)景遷移方案我們會(huì)在下一節(jié)討論。 4.4.2 場(chǎng)景2:一對(duì)多高耦合業(yè)務(wù)遷移 隨著A公司業(yè)務(wù)的發(fā)展以及人員的增多,之前的系統(tǒng)架構(gòu)顯現(xiàn)出了嚴(yán)重的問(wèn)題,首先是所有的業(yè)務(wù)模塊代碼都放在一臺(tái)主機(jī)上運(yùn)行,且代碼之間依賴性強(qiáng),導(dǎo)致運(yùn)維開發(fā)效率非常低,業(yè)務(wù)代碼放到一臺(tái)主機(jī)上運(yùn)行,單臺(tái)應(yīng)用主機(jī)性能有限。其次是所有的請(qǐng)求全部與關(guān)系型數(shù)據(jù)庫(kù)交互,熱點(diǎn)數(shù)據(jù)容易給數(shù)據(jù)庫(kù)造成非常大的壓力,讀寫成為瓶頸?紤]到這兩個(gè)主要因素,公司技術(shù)團(tuán)隊(duì)對(duì)其系統(tǒng)架構(gòu)進(jìn)行了調(diào)整。首先把業(yè)務(wù)進(jìn)行拆分,獨(dú)立到各個(gè)服務(wù)器中進(jìn)行部署,各個(gè)系統(tǒng)之間如果有依賴則遠(yuǎn)程調(diào)用,其次,增加緩存數(shù)據(jù)庫(kù),降低熱點(diǎn)請(qǐng)求對(duì)數(shù)據(jù)庫(kù)壓力的影響,如圖4-19所示。 圖4-19 原始多服務(wù)業(yè)務(wù) 假設(shè)在該階段,為了實(shí)現(xiàn)資源的靈活可擴(kuò)展,現(xiàn)公司的技術(shù)團(tuán)隊(duì)討論決定讓這套業(yè)務(wù)系統(tǒng)上云。 該系統(tǒng)上云分為三個(gè)部分。 應(yīng)用系統(tǒng):本地業(yè)務(wù)子系統(tǒng)有多套,各子系統(tǒng)之間存在請(qǐng)求調(diào)用。出于某些原因,無(wú)法同一時(shí)間讓這些系統(tǒng)全部上云,決定先讓訂單子系統(tǒng)以及會(huì)員子系統(tǒng)上云。針對(duì)應(yīng)用系統(tǒng)上云,只需在云上購(gòu)買兩臺(tái)ECS服務(wù)器部署訂單子系統(tǒng)和會(huì)員子系統(tǒng)。上云后由于訂單和會(huì)員子系統(tǒng)與商品、庫(kù)存、店鋪等子系統(tǒng)存在調(diào)用關(guān)系,可以通過(guò)專線實(shí)現(xiàn)調(diào)用。 數(shù)據(jù)庫(kù)MySQL:為了突破單體數(shù)據(jù)庫(kù)的容量瓶頸,技術(shù)人員決定將數(shù)據(jù)庫(kù)內(nèi)的對(duì)象按照業(yè)務(wù)子系統(tǒng)進(jìn)行拆分,將不同子系統(tǒng)的數(shù)據(jù)庫(kù)對(duì)象遷移到云上的不同RDS實(shí)例中,且維持主備模式。針對(duì)數(shù)據(jù)庫(kù)MySQL上云,購(gòu)買多臺(tái)RDS數(shù)據(jù)庫(kù)主實(shí)例以及對(duì)應(yīng)的只讀實(shí)例。 數(shù)據(jù)庫(kù)Redis:對(duì)于本地Redis,云上也有對(duì)應(yīng)的Redis產(chǎn)品,購(gòu)買云上Redis主從版,云Redis主從版與RDS高可用版架構(gòu)相同,都是主備架構(gòu),備節(jié)點(diǎn)不提供服務(wù)。 與一對(duì)一遷移評(píng)估的要素相比,技術(shù)團(tuán)隊(duì)增加了如下幾點(diǎn)要素。 遷移工具:考慮到操作的簡(jiǎn)便性,Redis→Redis的遷移同樣選擇用DTS進(jìn)行。 遷移場(chǎng)景:由于要把本地?cái)?shù)據(jù)庫(kù)對(duì)象拆分到多個(gè)RDS中,遷移拓?fù)錇?∶n遷移,需要使用多個(gè)DTS任務(wù)分別遷移本地?cái)?shù)據(jù)庫(kù)的各個(gè)子系統(tǒng)對(duì)象到云上的多臺(tái)RDS數(shù)據(jù)庫(kù)中。 一對(duì)多遷移的遷移流程和*終的架構(gòu)如圖4-20所示。 高耦合業(yè)務(wù)數(shù)據(jù)遷移場(chǎng)景一般發(fā)生在源端業(yè)務(wù)系統(tǒng)有多個(gè),業(yè)務(wù)之間互相依賴性很強(qiáng),而且依賴的數(shù)據(jù)庫(kù)是同一個(gè)的情況。比如源端業(yè)務(wù)系統(tǒng)有多個(gè),業(yè)務(wù)系統(tǒng)之間相互調(diào)用,如果遷移時(shí)做不到多個(gè)系統(tǒng)同一時(shí)間上云,首先需要考慮云上系統(tǒng)與云下系統(tǒng)的交互問(wèn)題,其次需要考慮云上系統(tǒng)與云下系統(tǒng)的請(qǐng)求一致性問(wèn)題,比如訂單子系統(tǒng)一致性要求較高時(shí),可以考慮訂單子系統(tǒng)的寫入和查詢請(qǐng)求都通過(guò)專線訪問(wèn)本地?cái)?shù)據(jù)庫(kù),然后由數(shù)據(jù)同步程序同步至云上數(shù)據(jù)庫(kù),如果會(huì)員子系統(tǒng)的一致性要求較弱,則可以直接讀寫云上數(shù)據(jù)庫(kù)。 圖4-20 一對(duì)多遷移 4.4.3 場(chǎng)景3:多對(duì)一異構(gòu)遷移 隨著A公司業(yè)務(wù)的繼續(xù)高速增長(zhǎng),之前的系統(tǒng)架構(gòu)再次面臨了業(yè)務(wù)側(cè)的挑戰(zhàn):?jiǎn)误w數(shù)據(jù)庫(kù)的容量與性能成為瓶頸,不能滿足以后的業(yè)務(wù)需求。為了解決這個(gè)問(wèn)題,公司技術(shù)團(tuán)隊(duì)決定對(duì)數(shù)據(jù)庫(kù)進(jìn)行垂直拆分與水平拆分,首先將單體數(shù)據(jù)庫(kù)按業(yè)務(wù)維度拆分成多個(gè)獨(dú)立的數(shù)據(jù)庫(kù),再對(duì)拆分后的數(shù)據(jù)庫(kù)按照業(yè)務(wù)邏輯實(shí)體(假設(shè)為Y)維度水平拆分為多個(gè)獨(dú)立的數(shù)據(jù)庫(kù),業(yè)務(wù)系統(tǒng)與拆分的數(shù)據(jù)庫(kù)通過(guò)分布式數(shù)據(jù)中間件進(jìn)行交互,各個(gè)獨(dú)立數(shù)據(jù)庫(kù)維持主備模式,如圖4-21所示。 圖4-21 多業(yè)務(wù)原始模型 更換到這個(gè)架構(gòu)之后,當(dāng)前系統(tǒng)可以滿足業(yè)務(wù)相當(dāng)長(zhǎng)一段時(shí)間的發(fā)展。但是這個(gè)架構(gòu)在進(jìn)行實(shí)時(shí)報(bào)表分析時(shí),無(wú)法滿足分析要求,技術(shù)團(tuán)隊(duì)決定將這些數(shù)據(jù)遷移到云上OLAP數(shù)據(jù)庫(kù)進(jìn)行實(shí)時(shí)報(bào)表分析。在產(chǎn)品選型方面,由于本地?cái)?shù)據(jù)庫(kù)是MySQL數(shù)據(jù)庫(kù),技術(shù)團(tuán)隊(duì)考慮使用云上的云原生數(shù)據(jù)倉(cāng)庫(kù)MySQL版(簡(jiǎn)稱ADB MySQL)進(jìn)行實(shí)時(shí)報(bào)表分析。 在遷移評(píng)估要素方面,技術(shù)團(tuán)隊(duì)比之前增加了如下幾點(diǎn)。 遷移工具:由于DTS對(duì)MySQL→ADB MySQL的遷移支持較完善,且支持增量遷移方便實(shí)時(shí)數(shù)據(jù)的同步以及庫(kù)表映射,所以遷移工具決定使用DTS。 停機(jī)時(shí)間:報(bào)表分析業(yè)務(wù)是一套允許停機(jī)時(shí)間的獨(dú)立業(yè)務(wù)系統(tǒng),停機(jī)時(shí)間可以不作為重點(diǎn)考量的對(duì)象。 數(shù)據(jù)庫(kù)對(duì)象映射:由于ADB MySQL數(shù)據(jù)庫(kù)語(yǔ)法、數(shù)據(jù)庫(kù)對(duì)象、數(shù)據(jù)類型等并非100%兼容MySQL,遷移時(shí)需要涉及一些類型的映射,比如 varchar類型,ADB中的varchar對(duì)應(yīng)MySQL中的char、varchar、text、mediumtext或者longtext。其次,ADB MySQL不支持存儲(chǔ)過(guò)程、函數(shù)等數(shù)據(jù)庫(kù)對(duì)象,在遷移時(shí)也需要避免。*后還需要名稱的映射,本地?cái)?shù)據(jù)庫(kù)的數(shù)據(jù)庫(kù)表做了分庫(kù)分表,遷移到云上ADB MySQL進(jìn)行分析后,需要將這些分表的數(shù)據(jù)整合到ADB MySQL的一個(gè)表中。 遷移場(chǎng)景:由于本地?cái)?shù)據(jù)庫(kù)是分布式數(shù)據(jù)庫(kù),遷移到云上的一臺(tái)ADB MySQL屬于n∶1遷移,同樣需要使用多個(gè)[1]DTS任務(wù)分別遷移本地分布式數(shù)據(jù)庫(kù)的各個(gè)分庫(kù)對(duì)象到云上ADB MySQL中進(jìn)行數(shù)據(jù)合并(對(duì)象映射)。
阿里云數(shù)字新基建系列:云數(shù)據(jù)庫(kù)架構(gòu) 作者簡(jiǎn)介
朱 明 微軟原工程師,現(xiàn)擔(dān)任阿里云數(shù)據(jù)庫(kù)高級(jí)技術(shù)專家,擅長(zhǎng)關(guān)系型、非關(guān)系型、分布式等多種數(shù)據(jù)庫(kù)技術(shù)。從事數(shù)據(jù)庫(kù)工作9年,有豐富的從業(yè)經(jīng)驗(yàn),擅長(zhǎng)各類疑難雜癥的排查和架構(gòu)設(shè)計(jì)。 李 森 現(xiàn)擔(dān)任阿里云售后技術(shù)專家,從事數(shù)據(jù)庫(kù)相關(guān)工作8年,主要負(fù)責(zé)阿里云數(shù)據(jù)庫(kù)產(chǎn)品線技術(shù)支持工作,擅長(zhǎng)關(guān)系型、分布式等多種數(shù)據(jù)庫(kù)技術(shù),擅長(zhǎng)設(shè)計(jì)與實(shí)施復(fù)雜數(shù)據(jù)庫(kù)系統(tǒng)的搬遷方案。 許文科 阿里云技術(shù)專家,從事數(shù)據(jù)庫(kù)相關(guān)工作12年,為多家上市公司、政企提供數(shù)據(jù)庫(kù)顧問(wèn)咨詢、培訓(xùn)和方案設(shè)計(jì)、技術(shù)支持服務(wù)。目前就職于阿里巴巴,專注于阿里云數(shù)據(jù)庫(kù)售后技術(shù)支持工作。 江厚順 長(zhǎng)期從事數(shù)據(jù)庫(kù)方面的工作,對(duì)數(shù)據(jù)庫(kù)原理有深入的理解,技術(shù)支持經(jīng)驗(yàn)豐富。曾在IBM從事DB2數(shù)據(jù)庫(kù)售后技術(shù)支持多年,2019年加入阿里云,擔(dān)任數(shù)據(jù)庫(kù)售后技術(shù)專家。 王 超 網(wǎng)易原工程師,現(xiàn)擔(dān)任阿里云高級(jí)技術(shù)經(jīng)理,長(zhǎng)期從事互聯(lián)網(wǎng)行業(yè)相關(guān)數(shù)據(jù)庫(kù)項(xiàng)目支持工作,負(fù)責(zé)游戲、泛娛樂(lè)等行業(yè)客戶的技術(shù)項(xiàng)目方案設(shè)計(jì)、架構(gòu)優(yōu)化、業(yè)務(wù)保障以及技術(shù)支持工作。 郭 寧 阿里云技術(shù)專家,深耕于互聯(lián)網(wǎng)行業(yè)并從事數(shù)據(jù)庫(kù)相關(guān)工作近11年,擅長(zhǎng)關(guān)系型數(shù)據(jù)庫(kù)和分布式數(shù)據(jù)庫(kù)的性能診斷優(yōu)化、架構(gòu)設(shè)計(jì)及數(shù)據(jù)庫(kù)運(yùn)維生態(tài)開發(fā)。 余從佳 現(xiàn)擔(dān)任阿里云數(shù)據(jù)庫(kù)交付與架構(gòu)工程師,擅長(zhǎng)關(guān)系型、分布式、非關(guān)系型等多種數(shù)據(jù)庫(kù)技術(shù),先后多次參與游戲、金融、能源等行業(yè)頭部客戶數(shù)據(jù)庫(kù)技術(shù)支持、國(guó)產(chǎn)化架構(gòu)方案設(shè)計(jì)與遷云交付。 王海忠 搜狐集團(tuán)原DBA,現(xiàn)擔(dān)任阿里云數(shù)據(jù)庫(kù)高級(jí)技術(shù)專家,擁有多年的互聯(lián)網(wǎng)行業(yè)數(shù)據(jù)庫(kù)工作經(jīng)驗(yàn),參與阿里巴巴集團(tuán)多年“雙十一”保障工作,有豐富的數(shù)據(jù)庫(kù)優(yōu)化、保障經(jīng)驗(yàn)。
- >
名家?guī)阕x魯迅:故事新編
- >
名家?guī)阕x魯迅:朝花夕拾
- >
羅庸西南聯(lián)大授課錄
- >
李白與唐代文化
- >
山海經(jīng)
- >
人文閱讀與收藏·良友文學(xué)叢書:一天的工作
- >
史學(xué)評(píng)論
- >
隨園食單