亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        分布式緩存系統(tǒng)HOT KEY關(guān)鍵技術(shù)研究

        2018-05-16 12:52:10陳小強(qiáng)
        科學(xué)與技術(shù) 2018年15期
        關(guān)鍵詞:云計(jì)算數(shù)據(jù)庫(kù)

        陳小強(qiáng)

        摘要:分布式緩存作為支撐海量數(shù)據(jù)處理的關(guān)鍵技術(shù)方案,近年來(lái)受到了廣泛關(guān)注和應(yīng)用。本文從分布式緩存系統(tǒng)的工程實(shí)踐出發(fā),研究了分布式緩存系統(tǒng)處理Hot Key的關(guān)鍵技術(shù),提出了一種分布式緩存系統(tǒng)優(yōu)化設(shè)計(jì),通過動(dòng)態(tài)識(shí)別、自動(dòng)重分布等設(shè)計(jì),解決了Hot Key問題,同時(shí)提高了分布式緩存系統(tǒng)的性能、穩(wěn)定性和適用性。實(shí)驗(yàn)驗(yàn)證和商用環(huán)境實(shí)際效果證明,相比傳統(tǒng)分布式緩存系統(tǒng),采用上述技術(shù)優(yōu)化后分布式緩存系統(tǒng)提升是有效的。

        關(guān)鍵詞:數(shù)據(jù)庫(kù);分布式緩存;NoSQL;云計(jì)算;Hot Key;熱點(diǎn)數(shù)據(jù)

        1分布式緩存系統(tǒng)Hot Key優(yōu)化設(shè)計(jì)及關(guān)鍵技術(shù)

        分布式緩存[1]基于鍵-值型(Key-Value)[2]數(shù)據(jù)模型,是業(yè)界目前最廣泛的一種NoSQL[3],其最大的優(yōu)勢(shì)在于對(duì)高并發(fā)的支持和它的可擴(kuò)展性。分布式緩存的代表有開源的Redis[4]、memcached[5],亞馬遜的dynamo[6],淘寶的Tair等。這些分布式緩存系統(tǒng)使用的數(shù)據(jù)分布算法主要有一致性Hash[7]或基于Range分區(qū)兩種,但是只能保證數(shù)據(jù)分布的均衡,不能保證分布式緩存系統(tǒng)運(yùn)行中實(shí)際數(shù)據(jù)訪問的均衡,即存在Hot Key,常見場(chǎng)景有兩類:

        1)新聞APP中的熱點(diǎn)新聞內(nèi)容

        2)電子商城秒殺系統(tǒng)中,最吸引用戶眼球,性價(jià)比最高的商品信息

        Hot Key導(dǎo)致主要問題是緩存雪崩:大量的客戶端,大量的讀請(qǐng)求集中同時(shí)訪問分布式緩存系統(tǒng)的某個(gè)服務(wù)節(jié)點(diǎn),導(dǎo)致服務(wù)節(jié)點(diǎn)響應(yīng)時(shí)延逐漸加大,直至不能對(duì)外提供服務(wù),即緩存雪崩。針對(duì)上述痛點(diǎn),本文提出了一種優(yōu)化的分布式緩存系統(tǒng)設(shè)計(jì),創(chuàng)新的功能有動(dòng)態(tài)識(shí)別Hot Key,識(shí)別出的Hot Key在分布式緩存系統(tǒng)中自動(dòng)重分布,用更多節(jié)點(diǎn)、更多線程承擔(dān)Hot Key的讀取請(qǐng)求,這樣系統(tǒng)地解決了Hot Key帶來(lái)的緩存雪崩。下面介紹這些關(guān)鍵技術(shù)的原理和實(shí)現(xiàn)。

        1.1動(dòng)態(tài)識(shí)別

        為了動(dòng)態(tài)統(tǒng)計(jì)Key的訪問情況,在描述Key的結(jié)構(gòu)中增加訪問時(shí)間和訪問頻率兩個(gè)成員,動(dòng)態(tài)識(shí)別Hot Key流程如下:

        1)Client向分布式緩存系統(tǒng)的服務(wù)節(jié)點(diǎn)發(fā)起一個(gè)讀請(qǐng)求

        2)服務(wù)節(jié)點(diǎn)在索引中查詢Key

        3)Key沒有查詢到,直接給Client回響應(yīng),流程結(jié)束

        4)Key查詢到了,將Key的訪問計(jì)數(shù)加1,更新訪問時(shí)間

        5)如果訪問時(shí)間中統(tǒng)計(jì)周期發(fā)生變化(統(tǒng)計(jì)周期缺省是分鐘),并且訪問計(jì)數(shù)小于配置的最大QPS(每秒最大訪問量),則給Client回響應(yīng),否則執(zhí)行下一步

        6)識(shí)別出一個(gè)Hot Key,將Key訪問計(jì)數(shù)清零,開始一個(gè)新的統(tǒng)計(jì)周期

        7)Hot Key開始自動(dòng)重分布

        8)給Client回響應(yīng),響應(yīng)中包含Hot Key最新的分布節(jié)點(diǎn)信息以及過期時(shí)間,后續(xù)Client訪問該Key時(shí),如果Key沒有過期則需要根據(jù)最新的分布節(jié)點(diǎn)信息重新計(jì)算服務(wù)節(jié)點(diǎn)

        1.2自動(dòng)重分布

        動(dòng)態(tài)識(shí)別出Hot Key后,必須進(jìn)一步將Hot Key自動(dòng)重新分布,分布到更多節(jié)點(diǎn)上,并分配更多的線程負(fù)責(zé)Hot Key的讀取,為此在描述Key的結(jié)構(gòu)中增加節(jié)點(diǎn)和線程信息:[< Node1,Thread1>......]

        Node:Hot Key分布的節(jié)點(diǎn)。

        Thread:節(jié)點(diǎn)上負(fù)責(zé)這個(gè)Hot key的讀取線程數(shù)。

        舉個(gè)例子,一個(gè)擁有5個(gè)節(jié)點(diǎn),數(shù)據(jù)是3副本的分布式緩存系統(tǒng)中,對(duì)一個(gè)非Hot Key來(lái)說其分布信息:[< Node1,1>,],為了節(jié)省內(nèi)存和磁盤空間,非Hot Key的分布信息被省略,分布式緩存系統(tǒng)會(huì)進(jìn)行默認(rèn)處理。如果一個(gè)Key被識(shí)別為Hot Key,其分布信息形式:[< Node1,2>,,,,]即Hot Key從原先分布在3個(gè)節(jié)點(diǎn),重分布到5個(gè)節(jié)點(diǎn),即分布在集群所有節(jié)點(diǎn)上,每個(gè)節(jié)點(diǎn)上有兩個(gè)線程,數(shù)據(jù)有兩個(gè)副本,即該Hot Key現(xiàn)在有10個(gè)副本,有10個(gè)線程負(fù)責(zé)讀取。需要注意的是重分布時(shí)數(shù)據(jù)需要跨節(jié)點(diǎn)復(fù)制,網(wǎng)絡(luò)傳輸會(huì)加大的響應(yīng)時(shí)延。

        2總結(jié)

        本文從實(shí)際工程問題和需求出發(fā),針對(duì)分布式緩存系統(tǒng)處理Hot Key的關(guān)鍵技術(shù)進(jìn)行研究。通過動(dòng)態(tài)識(shí)別、自動(dòng)重分布等設(shè)計(jì),提高了分布式緩存系統(tǒng)的性能和穩(wěn)定性,能更好地適應(yīng)Hot Key場(chǎng)景。通過和傳統(tǒng)分布式緩存系統(tǒng)對(duì)比實(shí)驗(yàn)驗(yàn)證,以及商用生產(chǎn)環(huán)境的實(shí)際使用效果,都證明了采用上述關(guān)鍵技術(shù)后的分布式緩存系統(tǒng)提升是有效的。優(yōu)化后的分布式緩存系統(tǒng)在動(dòng)態(tài)識(shí)別Hot Key時(shí)QPS閾值等是固定配置好的,不滿足業(yè)務(wù)場(chǎng)景的多樣化,還有進(jìn)一步的優(yōu)化空間,可以引入人工智能確定QPS閾值,動(dòng)態(tài)識(shí)別向智能識(shí)別演進(jìn)是我們下一步的工作方向。

        參考文獻(xiàn)

        [1]于君澤 曹洪偉 邱碩等. 深入分布式緩存從原理到實(shí)踐[M].北京:機(jī)械工業(yè)出版社,2018

        [2]馬文龍,朱妤晴,蔣德鈞等. Key-Value型NoSQL本地存儲(chǔ)系統(tǒng)研究[J]. 計(jì)算機(jī)學(xué)報(bào),2018,41(8):1722-1751.

        [3]NoSQL. Wikipedia. 2017. https://en.wikipedia.org/wiki/NoSQL

        [4]姚經(jīng)緯,楊福軍. Redis分布式緩存技術(shù)在Hadoop平臺(tái)上的應(yīng)用[J]. 計(jì)算機(jī)技術(shù)與發(fā)展,2017,27(6):146-150.

        [5]安仲奇,杜昊,李強(qiáng)等.基于高性能I/O技術(shù)的Memcached優(yōu)化研究[J].計(jì)算機(jī)研究與發(fā)展,2018,55(4):864-874.

        [6]Decandia G,Hastorun D,Jampani M,et al. Dynamo:amazon's highly available key-value store[J]. ACM SIGOPS Operating Systems Review,2007,41(6):205-220.

        [7]Robert Sedgewick.《算法》英文版第4版[M].人民郵電出版社,2012,ISBN:9787115271464.

        (作者單位:中興通訊股份有限公司)

        猜你喜歡
        云計(jì)算數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        志愿服務(wù)與“互聯(lián)網(wǎng)+”結(jié)合模式探究
        云計(jì)算與虛擬化
        基于云計(jì)算的移動(dòng)學(xué)習(xí)平臺(tái)的設(shè)計(jì)
        實(shí)驗(yàn)云:理論教學(xué)與實(shí)驗(yàn)教學(xué)深度融合的助推器
        云計(jì)算中的存儲(chǔ)虛擬化技術(shù)應(yīng)用
        科技視界(2016年20期)2016-09-29 13:34:06
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        99久久久无码国产aaa精品| 五月婷婷六月丁香久久综合| 九九综合va免费看| 国产高潮刺激叫喊视频| 四虎精品免费永久在线| 日本一级淫片免费啪啪| 中文字幕亚洲精品在线免费| 小辣椒福利视频导航| 亚洲精品国精品久久99热一| 亚洲欧美国产精品久久久| 国语对白自拍视频在线播放| 国产精品成人观看视频国产奇米| 国产精品美女久久久久久| 国产成人久久精品二区三区牛| 久久精品国产亚洲av桥本有菜| 日本视频在线观看二区| 欧美成免费a级毛片| 欧美aⅴ在线| 午夜日本精品一区二区| 风骚人妻一区二区三区| 亚洲日韩av无码| 手机看片福利盒子久久青| 女同同成片av免费观看| 东北女人啪啪对白| 青青草97国产精品免费观看| 中文字幕精品一二三区| 国产成人综合久久大片| 国产成人精品一区二区三区| 97久久久久人妻精品专区| 性色av成人精品久久| 久久久免费看少妇高潮| av一区二区三区人妻少妇| 久久精品国产亚洲综合色| 久久成人永久婷婷99精品| 国产三级精品三级| 四虎影院在线观看| 国产成人午夜av影院| 桃红色精品国产亚洲av| 国产伦精品一区二区三区| 亚洲av不卡电影在线网址最新| 亚洲精品一区二区三区四区|