什么是共享性數(shù)據(jù)庫(kù)
談及“共享性數(shù)據(jù)庫(kù)”,最讓我們困惑的是“共享性”三個(gè)字。“共享性”讓我們會(huì)想到其反義詞 “獨(dú)享性”。沒(méi)錯(cuò),共享型數(shù)據(jù)庫(kù)是對(duì)比獨(dú)享性數(shù)據(jù)庫(kù)的一種針對(duì)用戶(hù)資源所有權(quán)的數(shù)據(jù)庫(kù)稱(chēng)謂,它是伴隨著云計(jì)算出來(lái)之后的一種數(shù)據(jù)庫(kù)創(chuàng)新,以節(jié)約資源為目的,而一般情況下,自己的服務(wù)器或機(jī)上安裝的不與人共享的數(shù)據(jù)稱(chēng)為“獨(dú)享性數(shù)據(jù)庫(kù)”。很多人不明白共享性數(shù)據(jù)庫(kù)的特點(diǎn),那么我接下來(lái)就簡(jiǎn)單介紹一下。
共享性數(shù)據(jù)庫(kù)與獨(dú)享性數(shù)據(jù)庫(kù)的特點(diǎn)對(duì)比
在介紹共享性數(shù)據(jù)庫(kù)之前先來(lái)分析一下什么叫“獨(dú)享性數(shù)據(jù)庫(kù)”。獨(dú)享性數(shù)據(jù)庫(kù),顧名思義,獨(dú)享就是自己的數(shù)據(jù)庫(kù),在云計(jì)算出來(lái)之前,我們幾乎沒(méi)有獨(dú)享性數(shù)據(jù)庫(kù)的概念,因?yàn)闆](méi)有對(duì)比,認(rèn)為所有的數(shù)據(jù)庫(kù)都應(yīng)該叫做獨(dú)享性數(shù)據(jù)庫(kù)。
“獨(dú)享性數(shù)據(jù)庫(kù)”就比如我們有一塊兒地(這塊是有地址和門(mén)牌號(hào)的,好比數(shù)據(jù)庫(kù)和端口),自己在這塊兒地上修一棟房子當(dāng)倉(cāng)庫(kù)(類(lèi)似于我們創(chuàng)建了一個(gè)數(shù)據(jù)庫(kù)),我們?cè)谶@棟房子里任意使用房間來(lái)存東西(類(lèi)似于我們可以創(chuàng)建Table一樣)。
而“共享型數(shù)據(jù)庫(kù)”是為節(jié)省資源、降低開(kāi)發(fā)者成本孕育而生的,很多人一起共同使用這棟樓房,但是這棟樓房不是屬于具體某一個(gè)人是雇主的資產(chǎn)。在云平臺(tái)的世界里,雇主是提供云數(shù)據(jù)庫(kù)的供應(yīng)商,使用服務(wù)的人稱(chēng)為“租戶(hù)”。大家在一起使用一個(gè)數(shù)據(jù)庫(kù),你有創(chuàng)建表的權(quán)限、修改表的權(quán)限,但是沒(méi)有創(chuàng)建數(shù)據(jù)庫(kù)、修改數(shù)據(jù)庫(kù)的權(quán)限,因?yàn)檫@棟樓是大家的,不是你一個(gè)人的,而你,只是租戶(hù)之一。
當(dāng)然,你的幾個(gè)房間會(huì)給你一個(gè)標(biāo)簽,取個(gè)名字,是某某人的(這個(gè)名字就是你以后使用數(shù)據(jù)庫(kù)的名稱(chēng));您的這些房間與其他人的房間也是完全隔離的,彼此是不存在隱私暴露的問(wèn)題的。
共享性數(shù)據(jù)庫(kù)的租戶(hù)的房租比較便宜,因?yàn)榘葱枋召M(fèi),甚至免費(fèi)。“按需收費(fèi)“是云平臺(tái)的共同特點(diǎn),因?yàn)槟愕姆块g是用來(lái)存東西的,就類(lèi)似于你的數(shù)據(jù)庫(kù)表是用來(lái)存數(shù)據(jù)的一樣,在以前你使用獨(dú)享性數(shù)據(jù)庫(kù),你自己買(mǎi)了一個(gè)云數(shù)據(jù)庫(kù),是一次性投入,好比你花費(fèi)了一輩子的積蓄來(lái)買(mǎi)了一棟房子,但是你真的需要那么房間來(lái)存你的東西嗎?
如存糧食也許你自己都不知道你的東西有多少個(gè)東西。共享性數(shù)據(jù)庫(kù)的誕生解決了這個(gè)問(wèn)題,一般的情況下,你有多少東西,你就租多大的房間,房東就收你多少的費(fèi)用。這種就叫按需付費(fèi)。有這樣服務(wù)的云平臺(tái)有很多,比如百度的BAE、新浪的SAE、京東云擎等。目前的數(shù)據(jù)庫(kù)是按空間收費(fèi),是既按空間計(jì)費(fèi),也按流量計(jì)費(fèi)。
目前,不同公司在對(duì)待共享型數(shù)據(jù)庫(kù)技術(shù)實(shí)現(xiàn)上,各家公司采用的技術(shù)與架構(gòu)不同,所以也無(wú)法對(duì)其進(jìn)行一一的接受,只簡(jiǎn)單總結(jié)一下各共享性數(shù)據(jù)庫(kù)的共同的特點(diǎn):
1)租戶(hù)隔離。多個(gè)租戶(hù)共享同一數(shù)據(jù)庫(kù)實(shí)例必然需要一個(gè)有效的隔離方案,防止一個(gè)用戶(hù)的慢查詢(xún)請(qǐng)求或惡意請(qǐng)求影響其他用戶(hù)訪(fǎng)問(wèn)。這里的隔離實(shí)現(xiàn)方式是通過(guò)JProxy層對(duì)用戶(hù)所有的訪(fǎng)問(wèn)進(jìn)行了攔截,并根據(jù)用戶(hù)訪(fǎng)問(wèn)的數(shù)據(jù)表索引信息等,對(duì)用戶(hù)執(zhí)行該請(qǐng)求所需資源進(jìn)行預(yù)判,并攔截掉惡意的請(qǐng)求及影響其他用戶(hù)的請(qǐng)求。同時(shí)為了精確控制每個(gè)用戶(hù)的資源使用,整個(gè)系統(tǒng)針對(duì)用戶(hù)使用的連接數(shù),內(nèi)存占用容量,磁盤(pán)空間使用情況,帶寬流量等都做了有效的記錄和監(jiān)控并根據(jù)用戶(hù)的配額進(jìn)行控制。
2)集群路由信息高一致性保障。整體集群采用經(jīng)典的弱中心化集群結(jié)構(gòu),在滿(mǎn)足集群高性能的基礎(chǔ)上同時(shí)具備足夠的可控性,JManager管理整個(gè)集群路由信息,并通過(guò)多個(gè)Slave避免單點(diǎn)故障,當(dāng)路由變更時(shí),JManager首先同步路由變更信息給自己的Slave,然后才會(huì)同步所有的JProxy,避免路由變更時(shí)JManager掛掉導(dǎo)致路由不一致。
3)高可用保障。整體集群所有節(jié)點(diǎn)無(wú)單點(diǎn),用戶(hù)的數(shù)據(jù)庫(kù)會(huì)通過(guò)zookeeper做主從的高可用,如果用戶(hù)主庫(kù)掛掉,會(huì)自動(dòng)切換至從庫(kù),并重新綁定floating ip到從庫(kù),不會(huì)影響對(duì)用戶(hù)的服務(wù)。(floating ip知道什么意思,想做架構(gòu)師的朋友可以搜一下,這里不做累述)
4)用戶(hù)數(shù)據(jù)庫(kù)無(wú)縫升級(jí)擴(kuò)容。當(dāng)用戶(hù)的數(shù)據(jù)庫(kù)數(shù)據(jù)增長(zhǎng)超過(guò)指定配額時(shí),用戶(hù)可以選擇升級(jí)數(shù)據(jù)庫(kù),系統(tǒng)會(huì)自動(dòng)根據(jù)資源池使用情況將用戶(hù)數(shù)據(jù)庫(kù)遷移到比較空閑的實(shí)例上,遷移過(guò)程中并不會(huì)影響用戶(hù)的服務(wù)。通過(guò)定時(shí)自動(dòng)為用戶(hù)數(shù)據(jù)庫(kù)做快照的方式,結(jié)合數(shù)據(jù)庫(kù)binlog同步工具,來(lái)幫助用戶(hù)實(shí)現(xiàn)增量備份,遷移的工作也是依賴(lài)于以上這些工具完成的。
5)型數(shù)據(jù)庫(kù)基于安全方面考慮。通過(guò)jproxy對(duì)有潛在安全風(fēng)險(xiǎn)的數(shù)據(jù)庫(kù)操作語(yǔ)法進(jìn)行了限制,不如不能使用Create database,剛才提到了這棟房子除了您在用,別人也在用,你只有這幾個(gè)或者幾十個(gè)房間而已,你只能在這幾個(gè)或者幾十個(gè)房間里活動(dòng),不能去別人的房間滋事!
云計(jì)算出現(xiàn)以后,為企業(yè)、創(chuàng)業(yè)團(tuán)隊(duì)、個(gè)人帶來(lái)了便利,那個(gè)自建機(jī)房、購(gòu)買(mǎi)或者租用服務(wù)器搭建環(huán)境、中間件、部署應(yīng)用,搞定域名而浪費(fèi)大量人力物力的時(shí)代,我相信在不久的未來(lái)可能會(huì)漸行漸遠(yuǎn); 按需付費(fèi)、方便快捷的互聯(lián)網(wǎng)服務(wù)讓云平臺(tái)成為未來(lái)軟件服務(wù)市場(chǎng)的寵兒,而共享性數(shù)據(jù)庫(kù)也會(huì)逐步體現(xiàn)其價(jià)值,迎接嶄新的明天,相關(guān)的人才需求也會(huì)緊隨其后。預(yù)祝中國(guó)的云計(jì)算有廣大的發(fā)展空間,越來(lái)越多的人才為其服務(wù)!
核心關(guān)注:拓步ERP系統(tǒng)平臺(tái)是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴(lài)品牌。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:剖析云計(jì)算平臺(tái)中的“共享性數(shù)據(jù)庫(kù)”
本文網(wǎng)址:http://www.ezxoed.cn/html/consultation/10839715586.html