你好,,我是高洪濤,,前華為云技術(shù)專家、前當(dāng)當(dāng)網(wǎng)系統(tǒng)架構(gòu)師和 Oracle DBA,,也是 Apache ShardingSphere PMC 成員,。作為創(chuàng)始團(tuán)隊(duì)核心成員,我深度參與的 Apache ShardingShpere 目前已經(jīng)服務(wù)于國(guó)內(nèi)外上百家企業(yè),,并得到了業(yè)界廣泛的認(rèn)可,。 我在分布式數(shù)據(jù)庫設(shè)計(jì)與研發(fā)領(lǐng)域工作近 5 年,也經(jīng)常參與和組織一些行業(yè)會(huì)議,,比如中國(guó)數(shù)據(jù)庫大會(huì),、Oracle 嘉年華等,與業(yè)界人士交流分布式數(shù)據(jù)庫領(lǐng)域的最新動(dòng)向和發(fā)展趨勢(shì),。 近十年來,,整個(gè)行業(yè)都在爭(zhēng)先恐后地進(jìn)入這個(gè)領(lǐng)域,從而大大加速了技術(shù)進(jìn)步,。特別是近五年,,云廠商相繼發(fā)布重量級(jí)分布式數(shù)據(jù)庫產(chǎn)品,普通用戶接觸這門技術(shù)的門檻降低了,,越來越多人正在參與其中,,整個(gè)領(lǐng)域生態(tài)呈現(xiàn)出“百花齊放”的態(tài)勢(shì),。 2021 年數(shù)據(jù)大會(huì)上,阿里云發(fā)布了分布式數(shù)據(jù)庫使用率統(tǒng)計(jì)圖 學(xué)好分布式數(shù)據(jù)庫將給你帶來哪些機(jī)會(huì),?但在生產(chǎn)實(shí)踐過程中我們會(huì)發(fā)現(xiàn),,許多技術(shù)人員對(duì)分布式數(shù)據(jù)庫還停留在一知半解的狀態(tài),比如下面這些疑問:
這本質(zhì)上就是由于缺乏對(duì)分布式數(shù)據(jù)庫基本原理的了解,容易導(dǎo)致使用該種數(shù)據(jù)庫時(shí)問題頻發(fā),。好比 Apache Cassandra 或 Azure CosmosDB 都支持多種一致性,,但如果不了解分布式一致性模型,你很有可能會(huì)選錯(cuò),,從而造成業(yè)務(wù)數(shù)據(jù)不一致等問題,。 也因此長(zhǎng)久以來,業(yè)界一直存在一個(gè)典型的誤解:分布式數(shù)據(jù)庫只能遵循 CAP 原則,,無法實(shí)現(xiàn)傳統(tǒng)數(shù)據(jù)庫的 ACID 級(jí)別的一致性,,我的業(yè)務(wù)無法遷移到分布式數(shù)據(jù)庫上。 而事實(shí)上,,現(xiàn)代分布式數(shù)據(jù)庫(特別是 NewSQL 類數(shù)據(jù)庫),,已經(jīng)可以在一定程度上解決這一問題了。(我會(huì)分別在第 5 講和第 15 講中和你討論一致性模型,,你會(huì)獲得想要的答案,。) 雖然傳統(tǒng)數(shù)據(jù)庫中,大多數(shù)會(huì)使用復(fù)制同步技術(shù)來提高查詢性能和可用性,,但這些技術(shù)像一堆“補(bǔ)丁”,,對(duì)已經(jīng)不堪重負(fù)的傳統(tǒng)數(shù)據(jù)庫進(jìn)行修修補(bǔ)補(bǔ),解決問題有限的同時(shí),,反而可能帶來更多問題(比如,,復(fù)制延遲會(huì)長(zhǎng)期困擾 MySQL 的復(fù)制高可用方案),。 而分布式數(shù)據(jù)庫,,基本上是從底層開始,針對(duì)分布式場(chǎng)景設(shè)計(jì)出來的,,因此從基礎(chǔ)層面就可以解決傳統(tǒng)數(shù)據(jù)庫的一些棘手問題,。雖然初期投入相對(duì)大一些,卻可以保證后續(xù)技術(shù)體系的健康發(fā)展,,在長(zhǎng)期成本上具有顯著優(yōu)勢(shì),。 此外,分布式數(shù)據(jù)庫好比一個(gè)“百寶箱”,其中蘊(yùn)含了獨(dú)具特色的設(shè)計(jì)理念,、千錘百煉的架構(gòu)模式,,以及取之不盡的算法細(xì)節(jié)。隨著分布式數(shù)據(jù)庫迅猛發(fā)展,,越來越多的研發(fā),、產(chǎn)品和運(yùn)維人員或多或少都會(huì)接觸分布式數(shù)據(jù)庫,因此學(xué)好分布式數(shù)據(jù)庫,,也會(huì)為你提升職場(chǎng)競(jìng)爭(zhēng)優(yōu)勢(shì)帶來幫助,,成為你技術(shù)履歷上的閃光點(diǎn)。
學(xué)習(xí)過程中有哪些難點(diǎn),?不過,,分布式數(shù)據(jù)庫的學(xué)習(xí)曲線非常陡峭,你會(huì)發(fā)現(xiàn)與其他知識(shí)類型相比,,它有一個(gè)顯著的區(qū)別,,就是:學(xué)習(xí)資料過于豐富,且難度普遍不低,。
這也在一定程度上導(dǎo)致人們對(duì)分布式數(shù)據(jù)庫這一概念“誤解”不斷,。不過,這也堅(jiān)定了我想要幫助你了解通用分布式數(shù)據(jù)庫的設(shè)計(jì)原理,,借此帶你重新審視業(yè)務(wù)實(shí)踐的決心,。 學(xué)習(xí)本課程后,你將對(duì)技術(shù)選型,、系統(tǒng)架構(gòu)設(shè)計(jì),,以及如何解決關(guān)鍵的技術(shù)難題有更為清晰的方案;在晉升評(píng)審&面試求職中,,也能更加從容地應(yīng)對(duì)相關(guān)技術(shù)問題,。 我是如何設(shè)計(jì)這個(gè)課程的?由于分布式數(shù)據(jù)庫內(nèi)涵豐富,,知識(shí)結(jié)構(gòu)繁雜,,為使你能高效了解和掌握其中的關(guān)鍵信息,我采用了三種思路來設(shè)計(jì)這個(gè)課程,。
基于以上設(shè)計(jì)思路,我把課程分為 4 個(gè)模塊,,合計(jì) 24 講,。
講師寄語本課程的設(shè)計(jì)目標(biāo)是,,盡最大程度解決你的實(shí)際問題,,讓你在不同的工程實(shí)踐中,對(duì)分布式場(chǎng)景下的數(shù)據(jù)庫存儲(chǔ)有更加專業(yè)的認(rèn)知,,并對(duì)技術(shù)趨勢(shì)建立深入的洞察,。 希望與這門課程有幸結(jié)緣的你,能夠從中獲得新的靈感,,為自身的事業(yè)加油助力,。 |
|