偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

數(shù)據(jù)量Big bang的時(shí)代 數(shù)據(jù)路由你造嗎

網(wǎng)絡(luò) 網(wǎng)絡(luò)設(shè)備
最近互聯(lián)網(wǎng)都漲思維了,移動(dòng)互聯(lián)網(wǎng)更是得瑟地不行,在風(fēng)口上嗷嗷地飄,PE/VC沒(méi)事兒就就往那兒蹭,而那物流網(wǎng)的天兒還剛蒙蒙亮,這就是我們這些攻城獅所處的有點(diǎn)兒霧霾的時(shí)代。這年頭攻城獅總有不寐的夜,為啥糾結(jié)呢?

最近互聯(lián)網(wǎng)都漲思維了,移動(dòng)互聯(lián)網(wǎng)更是得瑟地不行,在風(fēng)口上嗷嗷地飄,PE/VC沒(méi)事兒就就往那兒蹭,而那物流網(wǎng)的天兒還剛蒙蒙亮,這就是我們這些攻城獅所處的有點(diǎn)兒霧霾的時(shí)代。這年頭攻城獅總有不寐的夜,為啥糾結(jié)呢?還不是讓數(shù)據(jù)給鬧的。這里一篇小文只是一盤關(guān)于數(shù)據(jù)的小菜,一款關(guān)于數(shù)據(jù)的管弦譜,怎么演奏,那得看自己,看情況,不解決啥實(shí)質(zhì)問(wèn)題,該鬧還得鬧,該糾結(jié)還得糾結(jié),誰(shuí)讓你拱呢。

說(shuō)倆詞兒

數(shù)據(jù)庫(kù):就叫D吧,就是你可以把東西放D那兒,回頭兒你還可以從D把東西拿出來(lái)。跟火車站旁邊那個(gè)存包的一回事兒,而且也得要身份證,別忘了哈。

機(jī)構(gòu):提供一個(gè)或多個(gè)服務(wù)的一組機(jī)器,他們協(xié)同完成一大類事。

下面就嘮點(diǎn)正嗑兒,說(shuō)點(diǎn)行話吧。

問(wèn)題的產(chǎn)生

任何存儲(chǔ)介質(zhì),其存儲(chǔ)容量總歸是有限的。因此,隨著業(yè)務(wù)的發(fā)展,甚至突發(fā)的業(yè)務(wù)高峰,水平擴(kuò)展能力總是不可回避的挑戰(zhàn)。這也必然要求數(shù)據(jù)是分布式存儲(chǔ)的,而解決問(wèn)題的基本指導(dǎo)思想也必然是分而治之,否則那電費(fèi)、流量費(fèi)恐怕就不知道翻多少倍了,要命的是生意沒(méi)法做了,這年頭慢的東西就會(huì)被淘汰。

數(shù)據(jù)路由概念

在分布式環(huán)境中,對(duì)于一個(gè)請(qǐng)求而言,總是要決策到哪里去讀/寫,這就是數(shù)據(jù)路由問(wèn)題,也是一個(gè)基本問(wèn)題。寫操作決定了讀操作,因此寫操作中針對(duì)具體的設(shè)計(jì)目標(biāo)如何分而治之就成為了問(wèn)題的關(guān)鍵。但是反過(guò)來(lái)說(shuō)也是正確的,讀的需求決定寫的方式,而且應(yīng)該這樣考慮,因?yàn)閷懙哪康牟粌H僅是存在那里,更是要考慮讀的過(guò)程如何發(fā)揮價(jià)值。換句話說(shuō),數(shù)據(jù)路由首先要解決寫到哪里和如何寫的問(wèn)題,但它是為如何讀而準(zhǔn)備的。關(guān)于寫的設(shè)計(jì)應(yīng)當(dāng)是服從于讀的方式、方法、形式和策略。就像接力賽一樣,你把接力棒放在前面隊(duì)友的手里就是寫,他接到了,跑了,就是讀,當(dāng)你遞過(guò)去的時(shí)候你在想什么?對(duì)了,就是應(yīng)該像你此刻那樣想。當(dāng)你在使用、架構(gòu)或自研某種廣義數(shù)據(jù)庫(kù)的時(shí)候,你首先考慮接棒了嗎?當(dāng)然這個(gè)問(wèn)題涉及面更廣,這里僅僅侃侃“到哪里”的問(wèn)題-雅名“數(shù)據(jù)路由”。老是做海底撈,憋不?別淹著,當(dāng)是潛伏哈。

問(wèn)題的內(nèi)在特質(zhì)與歸結(jié)

設(shè):

l 請(qǐng)求=R

l 服務(wù)=S,可以是一個(gè)服務(wù)實(shí)例,也可能是一個(gè)服務(wù)集群

顯然問(wèn)題可以歸結(jié)為集合R到集合S的映射,數(shù)學(xué)上就是一個(gè)函數(shù),f(R)=S。

要求對(duì)于任何特定的請(qǐng)求Rx,必須總是映射到特定的Sx,不論它們的元素如何變化,這就是問(wèn)題的內(nèi)在特質(zhì)。你不能說(shuō),我存了個(gè)包在XX,到時(shí)候你讓我到Y(jié)Y去取,取完了那警察來(lái)了你替我哈。

挑戰(zhàn)

假定我們已經(jīng)實(shí)現(xiàn)了一種規(guī)則可以完成R到特定S的映射,該規(guī)則就是數(shù)據(jù)路由要實(shí)現(xiàn)的,但是隨著業(yè)務(wù)的發(fā)展,S必然會(huì)變大,這時(shí)候挑戰(zhàn)就來(lái)了,怎樣的規(guī)則才能動(dòng)態(tài)地適應(yīng)這種改變呢?這就是挑戰(zhàn)所在。

數(shù)據(jù)在存儲(chǔ)上有時(shí)會(huì)有一個(gè)要求,那就是要力求數(shù)據(jù)的均衡分布而不是Skew,這就意味著特定的S存儲(chǔ)的數(shù)據(jù)需要再分配,這也內(nèi)在地要求數(shù)據(jù)路由具備及時(shí)調(diào)整映射的能力。聽著有點(diǎn)高大上,簡(jiǎn)單類比,可以這么說(shuō),想象一個(gè)二維坐標(biāo)系,X軸是數(shù)據(jù)系統(tǒng)的所有硬盤,Y軸是各自保存的數(shù)據(jù)量,畫一個(gè)曲線,如果它看上去像個(gè)心電圖,那是有病啊,應(yīng)該相對(duì)平直才好(跟現(xiàn)實(shí)相反哈)。你做架構(gòu)的時(shí)候,在這點(diǎn)上,那就是要把它整地“沒(méi)有生命體征”,一條線倍兒值,你厲害。拿HADOOP來(lái)說(shuō),要是BLOCK都集中在某些服務(wù)器上,其它都基本閑著,那就像一個(gè)人五官都糾結(jié)在一起,跟包子一樣,美不?答案正確,軟件設(shè)計(jì)的美與現(xiàn)實(shí)世界的美學(xué)它就那么任性地統(tǒng)一著。要不然,那結(jié)果就是小沈陽(yáng)穿那蘇格蘭格裙的Style,跑偏了。

路由方式

通常路由都是通過(guò)制定一個(gè)這里統(tǒng)稱為Key的東西來(lái)指路,不同的產(chǎn)品叫法不同,如Key, Rowkey, Field等等。無(wú)所謂,皮兒不同,餡兒是一樣的。按照拱城獅看世界的極簡(jiǎn)風(fēng)格來(lái)看,這個(gè)世界就是兩根手指頭就能表達(dá),串和數(shù),剩下的都是關(guān)系。這個(gè)Key,別管他穿啥馬甲,里子就這兩樣。

完全映射

映射執(zhí)行機(jī)構(gòu),即數(shù)據(jù)路由機(jī)構(gòu),包含R和S的所有元素,構(gòu)成全映射。缺點(diǎn)在于需要更大的內(nèi)存來(lái)提供高速的路由服務(wù)。并且要求快速地從大量的元素中找到特定元素。這就像你有點(diǎn)事到學(xué)校班里接你家少爺(假定你不知道在哪個(gè)班),到學(xué)校了,人家給你一摞花名冊(cè),你就一個(gè)名字一個(gè)名字地看,要是像字典一樣排序了還好,但你也得掃一遍。這個(gè)比擬的要點(diǎn)在于,所有的名字都在花名冊(cè)上,然后由一個(gè)具體的名字找到班級(jí)-119,最后人家告訴你119班在哪兒,看到?jīng)],“到哪里”,路由就是給你指路的警察美女,人家那服務(wù)最后就是一句話,給你指路,別沒(méi)話找話哈。

范圍映射

R經(jīng)過(guò)某種換算得找到一個(gè)可落座的范圍,再?gòu)姆秶成涞絊。優(yōu)點(diǎn)在于數(shù)據(jù)路由機(jī)構(gòu)可以大大節(jié)約存儲(chǔ),但要求快速的換算。HBase算是這樣的一個(gè)例子,它通過(guò)把按字典順序排序的rowkey為標(biāo)識(shí)的行數(shù)據(jù)用基于3級(jí)B-Tree的LSM Tree組織起來(lái)來(lái)實(shí)現(xiàn)行的快速定位,找到Region就是范圍的映射。MongoDB也有對(duì)這種方式的支持。你要是靠把治療帕金森的藥推銷到兒童醫(yī)院?jiǎn)柖δ甓蠕N售冠軍,那你絕對(duì)是一罐愛膚樂(lè)油,讓人醉了,顯然范圍沒(méi)有overlap。

哈希

該方式力求數(shù)據(jù)的均勻分布,性質(zhì)上基本就是隨機(jī)撒,對(duì)于大塊讀取連續(xù)的或一個(gè)范圍的數(shù)據(jù)是不利的。MongoDB支持根據(jù)哈希值來(lái)分散數(shù)據(jù)。

知道北京火車站吧,如果把人映射到進(jìn)站口,那就是這種方式,一個(gè)人從那個(gè)口進(jìn),沒(méi)什么約定。至于在軟件的世界里,中間怎么哈希的,那方式多了去了。如果人都擁擠到特定的口,那就是北京站的管理層哈希砸了,它肯定會(huì)想法兒把它弄?jiǎng)蚝趿恕H绻阋粋€(gè)公司的一群人真被哈了,比如說(shuō),你規(guī)定每個(gè)人的身份證號(hào)的尾數(shù)對(duì)應(yīng)著進(jìn)站口號(hào),那就得化整為零進(jìn)去,進(jìn)去后想再化零為整,那就得再做些功,所以也有缺點(diǎn),如果你是具有獨(dú)特健身pattern的導(dǎo)游。

不可變S的映射

最常見的就是hash-mod方式,最大的缺點(diǎn)在于不具備擴(kuò)容能力。優(yōu)點(diǎn)在于路由過(guò)程資源占用很小?,F(xiàn)實(shí)中也有存在,比如說(shuō),但凡說(shuō)集群的shard/partition等數(shù)值不可變的情況都屬于此類。ElasticSearch大體上就是屬于這種情況,對(duì)于一個(gè)Index,一旦建立了,就不能改變其shard數(shù)量??蓪?shí)操的擴(kuò)容方法就是建立更多的Index,但這要求在Index之上建立更上一層的路由。交警美女上面還有個(gè)交警大叔呢,你得先約他,記著哈,別急。

其實(shí)沒(méi)有什么最好的方案,一切都取決于需求的定位或設(shè)計(jì)目標(biāo)是什么,簡(jiǎn)而言之,結(jié)果導(dǎo)向的。比如說(shuō),重寫輕讀和重讀輕寫在整體設(shè)計(jì)上就會(huì)意味著不同的指導(dǎo)意義。側(cè)重順序讀還是隨機(jī)讀也會(huì)影響整體設(shè)計(jì),當(dāng)然適用的場(chǎng)景也就有分別了。說(shuō)俗點(diǎn),那你得為接棒的服務(wù),遞的時(shí)候就得想著接。

時(shí)間是個(gè)人們杜撰的偉大概念,基本上信息系統(tǒng)都離不開,而且讀的時(shí)候基本上都跟它有關(guān),還而且,經(jīng)常關(guān)注的就是最近一段時(shí)間的東西,別說(shuō)你就愛吃蔫兒菜啊。但是磚家說(shuō)了,如果你給這樣一個(gè)系統(tǒng)做個(gè)心電圖,那圖的節(jié)奏看著可能就跟著雷劈了差不多。這只是一個(gè)時(shí)間維度。

人,他貪啊,其實(shí)現(xiàn)實(shí)世界的需求是,點(diǎn)、線、面、體甚至更高維度的信息可能同時(shí)都需要。這里以時(shí)間線為例,提一丟丟拙案,那些造NoSQL或者別的什么東西的大牛們,對(duì)于那些人家認(rèn)為新鮮的,能不能把那個(gè)叫Replica的隨便設(shè)個(gè)想要的數(shù)量,甚至于智能地自主決策,別一刀切行不,這樣起碼并發(fā)壓力圖看著不雷劈了。對(duì),最新的大片兒你得多備幾份,看的人多嗎,當(dāng)口的生意你不做,年終了你想讓人家抽富士蘋果啊,我看中。

實(shí)時(shí)監(jiān)測(cè)

在整個(gè)數(shù)據(jù)服務(wù)體系中,對(duì)CPU、內(nèi)存和磁盤空間的監(jiān)測(cè)是必要的,至少它可以提醒人工擴(kuò)容的必要性,以及壓力或數(shù)據(jù)量的不均衡性,以便采取應(yīng)對(duì)措施。廣義講,任何分布式系統(tǒng),如果沒(méi)有一個(gè)中樞神經(jīng)系統(tǒng),比如說(shuō)NameNode,HMaster和Mongos等(在這一點(diǎn)上,目前他們做的可能還不是特別好),掌握著各個(gè)節(jié)點(diǎn)與讀寫路由決策相關(guān)的關(guān)鍵指標(biāo),那就只能無(wú)理決策了,閉著眼睛拍腦門,“反正我沒(méi)看見,都在那了,自己看”。畢竟每個(gè)節(jié)點(diǎn)時(shí)刻在發(fā)生著變化,刻舟求劍必然淹死在紅海里,只有動(dòng)態(tài)閉環(huán)反饋才能保持均衡。一碗水端平,難,你造吧。

浮云下的展望-智能擴(kuò)展

近兩年,云計(jì)算甚囂塵上,也漲翅膀了,會(huì)飛了。如果你的數(shù)據(jù)系統(tǒng)存在一個(gè)全面的健康監(jiān)測(cè)機(jī)構(gòu),使得通過(guò)一些規(guī)則設(shè)定實(shí)現(xiàn)全自動(dòng)的擴(kuò)展成為可能,那就有點(diǎn)智能了。例如在一定條件下,通過(guò)Python調(diào)用OpenStack API完成虛機(jī)和數(shù)據(jù)庫(kù)等的安裝、配置、優(yōu)化及初始化。這可能是當(dāng)下云服務(wù)商努力的方向之一。記著,如果你的產(chǎn)品設(shè)計(jì)能讓人變懶,那就對(duì)路了,信不,你孫子肯定比你懶。從呱呱墜地開始一直到一縷青煙,人的一切的事,就是通過(guò)一個(gè)click,一個(gè)手勢(shì),一句話,一個(gè)眼神甚至一個(gè)念頭,立馬變成現(xiàn)實(shí),風(fēng)就是往這兒吹地。要不你到盤古大廈樓頂吹吹風(fēng),來(lái)個(gè)真實(shí)體驗(yàn)。

結(jié)束語(yǔ)

在當(dāng)今數(shù)據(jù)量Big bang的時(shí)代,如果您有幸致力于自主研發(fā)或使用數(shù)據(jù)處理系統(tǒng),希望這碟小菜您還覺(jué)得有一丟丟嚼頭,浪費(fèi)你視覺(jué)神經(jīng)細(xì)胞了,我可沒(méi)@U奧。

責(zé)任編輯:守望幸福 來(lái)源: 51CTO.com
相關(guān)推薦

2017-05-31 14:25:14

戴爾數(shù)字經(jīng)濟(jì)轉(zhuǎn)型

2016-12-02 17:14:46

2012-10-18 10:15:01

IBMdw

2010-12-01 09:18:19

數(shù)據(jù)庫(kù)優(yōu)化

2009-12-08 09:21:13

WCF數(shù)據(jù)量

2021-01-07 07:46:34

MyBatis 數(shù)據(jù)量JDBC

2011-03-03 10:32:07

Mongodb億級(jí)數(shù)據(jù)量

2012-12-26 09:23:56

數(shù)據(jù)庫(kù)優(yōu)化

2011-04-18 11:13:41

bcp數(shù)據(jù)導(dǎo)入導(dǎo)出

2013-11-20 16:29:41

SAP中國(guó)商業(yè)同略會(huì)DVM

2018-08-09 16:03:14

2010-07-29 13:30:54

Hibari

2010-05-05 10:30:46

MongoDBNoSQL

2024-07-30 15:56:42

2021-04-07 10:20:31

MySQL數(shù)據(jù)庫(kù)命令

2020-07-19 10:53:42

數(shù)據(jù)庫(kù)MySQL遷移

2013-01-11 09:39:56

WLAN3GLTE

2024-01-23 12:56:00

數(shù)據(jù)庫(kù)微服務(wù)MySQL

2009-12-08 15:19:58

WCF大數(shù)據(jù)量

2011-04-21 10:47:29

Webjavascript
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)