劉建礦,于 炯,2+,英昌甜,魯 亮
(1.新疆大學(xué) 信息科學(xué)與工程學(xué)院,新疆 烏魯木齊830046;2.新疆大學(xué) 軟件學(xué)院,新疆 烏魯木齊830008)
近些年來,以網(wǎng)絡(luò)搜索、電子商務(wù)、社交網(wǎng)絡(luò)等為代表的在線數(shù)據(jù)密集型 (on line data Intensive,OLDI)應(yīng)用逐漸成為工業(yè)界和學(xué)術(shù)界的研究熱點。除了傳統(tǒng)數(shù)據(jù)密集型應(yīng)用的特點外,OLDI應(yīng)用還具有延遲受限、查詢條件多樣等特點,對數(shù)據(jù)訪問的性能 (如帶寬、延遲等)和數(shù)據(jù)查詢的多樣性 (如多屬性區(qū)間查詢、Skyline查詢等)提出迫切需求[1]。在現(xiàn)有云計算平臺下,虛擬化技術(shù)得以普及,CPU 與內(nèi)存性能優(yōu)越,但網(wǎng)絡(luò)帶寬和磁盤I/O 卻成為制約OLDI應(yīng)用發(fā)展的瓶頸[2]。以Amazon為例,每當(dāng)其響應(yīng)一個HTTP 請求而生成一個HTML 頁面時,都需要應(yīng)用服務(wù)器做出100~200個內(nèi)部請求[3],若延遲控制不好,將會在很大程度上影響用戶體驗。隨著內(nèi)存成本的不斷降低和技術(shù)的不斷成熟,內(nèi)存云 (RAMCloud)[4]的出現(xiàn)很好地解決了以上問題,它是由大量普通服務(wù)器的內(nèi)存組成的一種新型數(shù)據(jù)中心存儲系統(tǒng),任何時刻的所有信息都存儲在這些動態(tài)隨機(jī)訪問存儲器 (DRAM,即內(nèi)存)中,傳統(tǒng)硬盤被內(nèi)存取代,而硬盤只作為備份。由于DRAM 無可比擬的優(yōu)越性,內(nèi)存云可以提供比基于磁盤存儲的系統(tǒng)大100~1000倍的吞吐量,以及低于100~1000倍的訪問延遲 (僅5~10微秒),使內(nèi)存云架構(gòu)在處理OLDI應(yīng)用中優(yōu)勢顯著。
RAMCloud將數(shù)據(jù)中心遷移至服務(wù)器的內(nèi)存上,大量數(shù)據(jù)在內(nèi)存中的傳輸就變得很重要。由于數(shù)據(jù)相關(guān)性[5],數(shù)據(jù)訪問常以順序串行的形式實現(xiàn),而內(nèi)存帶寬的發(fā)展相對于內(nèi)存容量的發(fā)展較慢,所以內(nèi)存的帶寬是影響RAMCloud服務(wù)性能的重要因素[6]。由于在線密集型數(shù)據(jù)訪問頻率的差異性[7,8],RAMCloud不同服務(wù)器上的數(shù)據(jù)吞吐量也存在差異,因此服務(wù)器的帶寬利用率也不相同,RAMCloud集群就出現(xiàn)了帶寬負(fù)載不均衡的現(xiàn)象。在帶寬負(fù)載較高的服務(wù)器上,單位時間內(nèi)吞吐的數(shù)據(jù)量大,服務(wù)器剩余的帶寬能力減小,數(shù)據(jù)在被訪問時處于等待帶寬的狀態(tài),服務(wù)器的時延增加,導(dǎo)致較差的用戶體驗[9];而帶寬負(fù)載低的服務(wù)器數(shù)據(jù)訪問量不足,服務(wù)器的帶寬利用率低,造成帶寬資源的浪費(fèi),RAMCloud集群的性能降低。
RAMCloud采用段式存儲結(jié)構(gòu)[10],在一段時間內(nèi)服務(wù)器的數(shù)據(jù)訪問頻率,是服務(wù)器所有數(shù)據(jù)段訪問頻率的集合。服務(wù)器的數(shù)據(jù)訪問頻率與服務(wù)器上數(shù)據(jù)段的訪問頻率存在表現(xiàn)不完全一致性的特點[11],在數(shù)據(jù)訪問頻率高,即內(nèi)存帶寬負(fù)載高的服務(wù)器上也存在訪問量很低的數(shù)據(jù)段,相反在內(nèi)存帶寬負(fù)載低的服務(wù)器上也存在訪問量高的數(shù)據(jù)段。根據(jù)這一特點,本文提出一種數(shù)據(jù)段交換 (data-segments exchanging,DSE)算法,周期性地選擇內(nèi)存帶寬負(fù)載不均衡的服務(wù)器,在內(nèi)存帶寬負(fù)載低服務(wù)器上選擇訪問頻率較低的數(shù)據(jù)段,與內(nèi)存帶寬負(fù)載高服務(wù)器上的訪問頻率較高數(shù)據(jù)段進(jìn)行交換。通過數(shù)據(jù)段的交換,降低高帶寬負(fù)載服務(wù)器的數(shù)據(jù)訪問次數(shù),降低服務(wù)器的帶寬負(fù)載從而降低服務(wù)器時延;同時提升低帶寬負(fù)載服務(wù)器的數(shù)據(jù)訪問量,提高其帶寬利用率,實現(xiàn)服務(wù)器集群的帶寬負(fù)載均衡,提高集群性能。
在RAMCloud 中,每一個RAMCloud 集群擁有一個Coordinator節(jié)點,用來存儲每一個文件的Mapping 信息,即運(yùn)用鍵值對保存用戶所請求的信息在哪一臺主服務(wù)器上,類似于HDFS (hadoop distributed file system)中的Name-Node節(jié)點[12]。Coordinator節(jié)點根據(jù)用戶 (client)發(fā)出的請求信息,通過數(shù)據(jù)中心網(wǎng)絡(luò)找到所請求服務(wù)器,每臺服務(wù)器都包含兩個部分:Master和Backup。Master管理了存儲在內(nèi)存中的數(shù)據(jù)對象,Backup使用本地的機(jī)械硬盤或者固態(tài)硬盤保存了其它服務(wù)器的數(shù)據(jù)備份。Coordinator管理了Master和Backup配置信息,但是Coordinator并不涉入數(shù)據(jù)的讀寫操作,因此不會降低系統(tǒng)的可擴(kuò)展性。其整體結(jié)構(gòu)如圖1所示。
圖1 內(nèi)存云基本結(jié)構(gòu)模型
在RAMCloud集群中,數(shù)據(jù)采用基于日志結(jié)構(gòu)的存儲方式進(jìn)行存儲。文件系統(tǒng)保存的服務(wù)器內(nèi)存信息包括文件數(shù)據(jù)塊、屬性 (類型、所有者及權(quán)限等)、索引塊、目錄和所有用來管理文件的其它信息,還包含數(shù)據(jù)塊的地址,一個或多個間接塊的地址,每一個間接塊包含多塊數(shù)據(jù)塊的地址或間接塊的地址[13]。文件系統(tǒng)將服務(wù)器的內(nèi)存的信息及改動保存為日志,并切分成段,將每一段分別保存到不同備份服務(wù)器的內(nèi)存緩沖區(qū) (buffer)[14]中,同時通過哈希表進(jìn)行記錄 (如圖2所示)。哈希表記錄了每一個存儲在服務(wù)器上數(shù)據(jù)的表項,它支持?jǐn)?shù)據(jù)的快速查找,并給出數(shù)據(jù)的<table,key>值。每個數(shù)據(jù)都有一個指針,存儲在它的哈希表項中。為了保證數(shù)據(jù)的持久性,避免服務(wù)器崩潰和電源故障,每個主服務(wù)器必須保持它的對象的備份副本存儲在其它的備份服務(wù)器中。每個主服務(wù)器都有自己的日志,它將日志分為8 MB 的塊稱為段 (segments),每個段復(fù)制幾個備份 (通常是兩個或3個)。
圖2 內(nèi)存云段式存儲結(jié)構(gòu)
內(nèi)存帶寬 (memory bandwidth)是指單位時間內(nèi)CPU訪問內(nèi)存時內(nèi)存通道可以傳輸?shù)淖畲髷?shù)據(jù)量,單位是GB/s。內(nèi)存帶寬與數(shù)據(jù)傳輸通道容量和數(shù)據(jù)傳輸?shù)乃俣扔嘘P(guān),內(nèi)存的數(shù)據(jù)傳輸通道容量與傳輸總線的位數(shù)有關(guān),傳輸總線位數(shù)越大傳輸?shù)臄?shù)據(jù)量越大,內(nèi)存頻率決定數(shù)據(jù)傳輸?shù)乃俣?,頻率越大內(nèi)存?zhèn)鬏斔俾试娇欤瑔挝粫r間內(nèi)傳輸?shù)臄?shù)據(jù)量越大。所以內(nèi)存帶寬與內(nèi)存的總線位數(shù)和內(nèi)存頻率存在計算公式
其中,倍增系數(shù)λ 是指一個時鐘周期內(nèi)相對于SDRAM 的數(shù)據(jù)倍數(shù),目前DDR 的倍增系數(shù)是2,DDR2的倍增系數(shù)是4,DDR3的倍增系數(shù)是8。
吞吐量 (throughput)是指內(nèi)存在一段時間內(nèi)所處理的數(shù)據(jù)量,內(nèi)存帶寬利用率是單位時間內(nèi)內(nèi)存的數(shù)據(jù)吞吐量占用帶寬的大小,是衡量內(nèi)存性能的重要指標(biāo)。單位時間內(nèi)內(nèi)存的數(shù)據(jù)吞吐量越大,占用的內(nèi)存帶寬越高,則帶寬利用率越高。用TP 表示一段時間t內(nèi)內(nèi)存訪問的數(shù)據(jù)吞吐量。公式表達(dá)為
內(nèi)存時延表示系統(tǒng)進(jìn)入數(shù)據(jù)存取操作就緒狀態(tài)前等待內(nèi)存響應(yīng)的時間。為了進(jìn)一步研究內(nèi)存時延與數(shù)據(jù)吞吐量的關(guān)系,本文選用1333 MHz的內(nèi)存,做一個內(nèi)存時延隨著單位時間內(nèi)數(shù)據(jù)吞吐量增加的微基準(zhǔn)測試,所得到的內(nèi)存時延的變化曲線如圖3所示。
圖3 內(nèi)存時延的變化曲線
由圖3可以看出,內(nèi)存時延隨著內(nèi)存吞吐量的增加呈現(xiàn)出超線性增加。當(dāng)內(nèi)存吞吐量的增加時,內(nèi)存帶寬負(fù)載增加,內(nèi)存的剩余帶寬可以通過的數(shù)據(jù)量減少,數(shù)據(jù)平均隊列的長度增加,內(nèi)存時延增加。當(dāng)吞吐量接近內(nèi)存帶寬時,此時內(nèi)存帶寬飽和,無法通過更多的數(shù)據(jù),內(nèi)存時延無限大。內(nèi)存的時延與內(nèi)存吞吐的數(shù)據(jù)量存在關(guān)系如下
式中:MemLatency——內(nèi)存時延,IdleLatency——空閑時延,slope——參數(shù)遞增系數(shù)。
RAMCloud日志文件結(jié)構(gòu)中的內(nèi)存信息記錄了數(shù)據(jù)段的大小、訪問次數(shù)和數(shù)據(jù)段所在位置等信息。一個RAMCloud集群有m 臺服務(wù)器,一臺服務(wù)器由n 個數(shù)據(jù)段構(gòu)成,從段的日志中獲取內(nèi)存云服務(wù)器一段時間t內(nèi)的一個文件塊的訪問次數(shù),用矩陣Fm×n進(jìn)行存儲。服務(wù)器數(shù)據(jù)段的訪問次數(shù)用 (M[i][j])m×n(1≤i≤m,1≤j≤n)表示,其中i表示服務(wù)器號,j表示服務(wù)器上的第j 個數(shù)據(jù)段。t時間內(nèi)一臺服務(wù)器的訪問次數(shù)是n 個段文件塊的訪問次數(shù)的總數(shù),用Mtotal[i]可以表示為
t時間內(nèi)RAMCloud集群的平均訪問次數(shù)是集群中m臺服務(wù)器的訪問次數(shù)的平均值,用Mavg 表示
式中:Mavg——所有服務(wù)器平均在一臺服務(wù)器上訪問次數(shù),反應(yīng)了集群的平均訪問頻率。經(jīng)過統(tǒng)計在t時間內(nèi)Mavg是常量。
定義1 若一臺服務(wù)器的訪問次數(shù)Mtotal[i]滿足關(guān)系Mtotal[i]>Mavg,則服務(wù)器i為高內(nèi)存帶寬負(fù)載服務(wù)器;若服務(wù)器的訪問次數(shù)Mtotal[i]滿足關(guān)系Mtotal[i]<Mavg,則服務(wù)器i為低內(nèi)存帶寬負(fù)載服務(wù)器。
定義2 給定一個參數(shù)α,用來表示集群帶寬負(fù)載均衡的范圍。若服務(wù)器的訪問次數(shù)Mtotal[i]滿足關(guān)系Mavg*(1-α)≤Mtotal[i]≤Mavg*(1+α),則服務(wù)器i為內(nèi)存帶寬負(fù)載均衡服務(wù)器。
在RAMCloud上一臺服務(wù)器的數(shù)據(jù)吞吐量是一段時間t內(nèi),服務(wù)器對所有數(shù)據(jù)段的訪問總量,用Size 表示RAMCloud上數(shù)據(jù)段的大小,公式可表示為
RAMCloud的內(nèi)存帶寬負(fù)載均衡算法過程如下,首先由Coordinator節(jié)點從集群中所有服務(wù)器數(shù)據(jù)段的訪問次數(shù)Mtotal[i]中選中的訪問次數(shù)最少的服務(wù)器Mtotal[low],以及訪問次數(shù)最大的服務(wù)器Mtotal[high]的兩臺服務(wù)器,即一臺帶寬負(fù)載最小的服務(wù)器low 和一臺帶寬負(fù)載最大的服務(wù)器high。在低負(fù)載服務(wù)器low 上選擇一個訪問次數(shù)最小的數(shù)據(jù)段,用常量M[low][min]表示;然后在高負(fù)載服務(wù)器high上選一個數(shù)據(jù)段,用常量M[high][max]表示,將兩個數(shù)據(jù)段進(jìn)行交換,低負(fù)載服務(wù)器low 的訪問次數(shù)增加了M[high][max]- M[low][min],高負(fù)載服務(wù)器high的訪問次數(shù)減少了 M[high][max]- M[low][min],兩臺服務(wù)器上的數(shù)據(jù)訪問量趨于均衡。
兩臺服務(wù)器實現(xiàn)數(shù)據(jù)段交換的過程是,從文件日志的哈希表中找到兩個數(shù)據(jù)段在服務(wù)器中的位置以及在磁盤中的備份位置,然后服務(wù)器從磁盤中讀取需要交換的另一個數(shù)據(jù)段信息,覆蓋掉原有數(shù)據(jù)段的信息,并且將交換后的文件內(nèi)容、磁盤中位置等信息保存到段日志文件中,更新哈希表。數(shù)據(jù)在哈希表項中的指針能夠找到數(shù)據(jù)的位置,保證了數(shù)據(jù)訪問的連續(xù)性。
DSE算法代碼如下:
DSE算法每次都根據(jù)Mtotal[i]選擇一臺帶寬負(fù)載最低的服務(wù)器Mtotal[low]和一臺帶寬負(fù)載最高的服務(wù)器Mtotal[high]。首先在低內(nèi)存的帶寬負(fù)載服務(wù)器上選擇一個訪問次數(shù)最小的數(shù)據(jù)段M[low][min],此時這個數(shù)據(jù)段所在的服務(wù)器還需要Mavg-Mtotal[low]訪問次數(shù)即可達(dá)到均衡,所以交換得到的數(shù)據(jù)段的訪問次數(shù)大小不超過M[low][min]+Mtotal-Mtotal[low]。然后在高內(nèi)存帶寬負(fù)載服務(wù)器上選擇一個數(shù)據(jù)段與已經(jīng)選擇的M[low][min]進(jìn)行交換,此時高內(nèi)存帶寬負(fù)載服務(wù)器上還需要減少M(fèi)total[high]-Mavg個訪問次數(shù)即可達(dá)到均衡,交換后高內(nèi)存帶寬負(fù)載服務(wù)器得到數(shù)據(jù)段M[low][min],所以被交換出去的數(shù)據(jù)段的訪問次數(shù)不能超過M[low][min]+Mtotal[high]-Mavg。在高內(nèi)存帶寬負(fù)載服務(wù)器上選擇數(shù)據(jù)段的訪問次數(shù)既不能超過M[low][min]+Mavg-Mtotal[low],又不能超過M[low][min]+Mtotal[high]-Mavg。為了以最少的數(shù)據(jù)段交換次數(shù)實現(xiàn)負(fù)載均衡,在高內(nèi)存帶寬負(fù)載服務(wù)器上選擇數(shù)據(jù)段時盡可能的選擇范圍內(nèi)訪問次數(shù)最大的數(shù)據(jù)段。
通過仿真實驗,模擬10臺以型號為64GB-1333 MHz大小內(nèi)存作為內(nèi)存服務(wù)器構(gòu)成內(nèi)存云集群。利用式 (1),計算出1333 MHz內(nèi)存的帶寬MemBW 為10.664 Gb/s。RAMCloud的數(shù)據(jù)段大小Size為8M,所以一臺64G 內(nèi)存云服務(wù)器中有8192個數(shù)據(jù)段。某一內(nèi)存云服務(wù)器同時作為其它服務(wù)器的備份服務(wù)器,需預(yù)留一定的存儲空間作為備份。在本文實驗中,設(shè)定一臺服務(wù)器上有8G 作為服務(wù)器的備份空間,所以有60G 作為主服務(wù)器數(shù)據(jù)存儲與訪問,共計7168個有效數(shù)據(jù)段。實驗通過蒙特卡洛算法隨機(jī)生成一組10*7168條0-100000的數(shù)據(jù)組成矩陣,表示在初始階段時,10臺服務(wù)器7168個數(shù)據(jù)段在60分鐘內(nèi)的訪問次數(shù)。分別根據(jù)式 (4)和式 (6)計算出服務(wù)器初始狀態(tài)的訪問次數(shù)Mavg,以及吞吐量TP[i],再根據(jù)式 (2)和式(3),相繼計算出服務(wù)器初始狀態(tài)的帶寬利用率η以及服務(wù)器時延MemLatency。
實驗1:DSE 算法的一般性實驗。分別設(shè)置集群負(fù)載均衡因子α為0.1和0.2,訪問次數(shù)在Mavg*(1±α)時處于負(fù)載均衡,根據(jù)DSE 算法進(jìn)服務(wù)器的數(shù)據(jù)塊進(jìn)行交換,調(diào)整服務(wù)器的吞吐量,達(dá)到集群帶寬負(fù)載均衡狀態(tài)。然后計算出均衡后服務(wù)器的訪問次數(shù)Mtotal[i],吞吐量TP[i],帶寬負(fù)載η 以及服務(wù)器時延MemLatency,對比服務(wù)器初始狀態(tài)以及DSE 算法執(zhí)行前后,服務(wù)器帶寬利用率η和時延變化MemLatency,如圖4、圖5所示。
圖4 服務(wù)器帶寬負(fù)載變化
圖5 服務(wù)器時延變化
由圖4可以看出整個集群的帶寬負(fù)載是不均衡的,有3臺服務(wù)器的帶寬利用率低于50%,有4臺服務(wù)器的帶寬利用率超過80%。這3臺低負(fù)載服務(wù)器的帶寬利用率遠(yuǎn)低于集群的帶寬利用率 (64.25%),造成了帶寬資源的浪費(fèi),而由圖5可以看出,在高負(fù)載服務(wù)器上的時延明顯高于集群其它服務(wù)器。服務(wù)器數(shù)據(jù)吞吐量的差異,導(dǎo)致了集群的性能差異。
DSE算法對服務(wù)器的數(shù)據(jù)段進(jìn)行交換,集群中每臺服務(wù)器的數(shù)據(jù)吞吐量更加均衡,降低了4臺高負(fù)載服務(wù)器的帶寬負(fù)載,同時也提高了低負(fù)載服務(wù)器的帶寬利用率,使集群的帶寬利用率更加均衡。DSE 算法明顯地降低了高負(fù)載服務(wù)器的時延,而低負(fù)載服務(wù)器的時延只是小幅度增加,最終集群中每臺服務(wù)器的時延都趨于均衡。α是影響負(fù)載均衡的因子,從圖中可以看出,當(dāng)α=0.2時集群帶寬利用率和時延的變化幅度都要比α=0.1 時大。由圖4 可以看出,通過DSE 算法高負(fù)載服務(wù)器的時延有了大幅度的下降,α=0.1時集群的時延比初始時延降低了12.61%,α=0.2時集群的時延比初始時延降低了11.77%。
實驗2:集群服務(wù)器吞吐量低的實驗。初始數(shù)據(jù)段的訪問次數(shù)較低,服務(wù)器的數(shù)據(jù)吞吐量低,集群帶寬負(fù)載低。根據(jù)DSE算法對服務(wù)器的數(shù)據(jù)塊進(jìn)行交換,然后對比服務(wù)器初始狀態(tài)以及DSE 算法執(zhí)行前后,服務(wù)器帶寬利用率η和時延變化MemLatency,如圖6、圖7所示。
圖6 服務(wù)器帶寬負(fù)載變化
圖7 服務(wù)器時延變化
可以看出初始狀態(tài)下,集群的帶寬負(fù)載是不均衡的,整個集群的帶寬利用率都不高,高負(fù)載服務(wù)器的帶寬利用率也不超過80%。經(jīng)過DSE算法,集群中每臺服務(wù)器達(dá)到了帶寬負(fù)載均衡。時延方面,帶寬負(fù)載均衡因子α=0.1與α=0.2時都能使高負(fù)載服務(wù)器的時延明顯降低,α=0.1時,集群的時延比初始降低了3.87%,α=0.2時集群的時延比初始降低了3.56%。顯然當(dāng)集群服務(wù)器數(shù)據(jù)吞吐量較低時,DSE算法在減少服務(wù)器時延方面的效果不理想。在低負(fù)載服務(wù)器上,α的取值只會影響服務(wù)器的帶寬負(fù)載均衡的范圍,對降低時延的影響不明顯。
實驗3:集群服務(wù)器吞吐量高的實驗。實驗初始數(shù)據(jù)段的訪問次數(shù)高,服務(wù)器的數(shù)據(jù)吞吐量高,集群帶寬負(fù)載高。根據(jù)DSE算法對服務(wù)器的數(shù)據(jù)塊進(jìn)行交換,然后對比服務(wù)器初始狀態(tài)以及DSE 算法執(zhí)行前后,服務(wù)器帶寬利用率η和時延變化MemLatency,如圖8、圖9所示。
圖8 服務(wù)器帶寬負(fù)載變化
圖9 服務(wù)器時延變化
可以看出初始狀態(tài)下,集群的帶寬負(fù)載不均衡,整個集群的帶寬利用率很高,甚至有2臺服務(wù)器的帶寬利用率高于90%,同時他們產(chǎn)生了非常高的時延。經(jīng)過DSE 算法,集群中每臺服務(wù)器達(dá)到了帶寬負(fù)載均衡。當(dāng)帶寬負(fù)載均衡因子α=0.1 時,集群的時延比初始降低了14.21%,α=0.2時集群的時延比初始降低了10.05%。當(dāng)集群服務(wù)器數(shù)據(jù)吞吐量較高時,DSE 算法可以大幅度的減少集群的時延。在高負(fù)載服務(wù)器上,α的取值不僅會影響服務(wù)器的帶寬負(fù)載均衡的范圍,而且對時延的降低也有顯著的影響。
實驗驗證了在RAMCloud集群上,通過DSE 算法周期性地對進(jìn)行數(shù)據(jù)段交換,可以解決由于數(shù)據(jù)段訪問差異性造成的服務(wù)器內(nèi)存帶寬負(fù)載不均衡的現(xiàn)象,從而達(dá)到集群帶寬負(fù)載均衡降低集群時延的目的。DSE 算法對數(shù)據(jù)吞吐量低的集群效果不明顯,對數(shù)據(jù)吞吐量高的集群效果顯著。集群帶寬負(fù)載均衡的范圍受到負(fù)載均衡因子的影響,可以根據(jù)用戶的需求來動態(tài)調(diào)整。負(fù)載均衡因子的取值在降低集群時延方面也有影響,負(fù)載均衡因子的取值越小,集群的時延降低越多。需要注意的是,負(fù)載均衡因子的取值,影響算法的時間復(fù)雜度,所以對于負(fù)載均衡因子的取值根據(jù)集群的負(fù)載以及用戶需求進(jìn)行設(shè)置。
[1]ZHANG Yiming,PENG Yuxing,LI Dongsheng.Survery on distributed storage for on line data intensive applications [EB/OL]. [2013-03-26].http://www.paper.edu.cn/releasepaper/content/201303-838(in Chinese).[張一鳴,彭宇行,李東升.面向在線數(shù)據(jù)密集型應(yīng)用的分布式存儲研究綜述[EB/OL].[2013-03-26].http://www.paper.edu.cn/releasepaper/content/201303-838.]
[2]Armbrust M,F(xiàn)ox A,Griffith R,et al.A view of cloud computing [J].Communications of the ACM,2010,53 (4):50-58.
[3]DeCandia G,Hastorun D,Jampani M,et al.Dynamo:Amazon’s highly available key-value store[C]//Proceedings of the 21st ACM Symposium on Operating Systems Principles.Washington DC:ACM,2007:205-220.
[4]Ousterhout JK,Agrawal P,Erickson D,et al.The case for RAMClouds:Scalable high-performance storage entirely in DRAM [J].ACM SIGOPS Operating Systems Review,2010,43 (4):92-105.
[5]Tinnefeld C,Kossmann D,Boese JH,et al.Parallel join executions in RAMCloud [C]//Proceedings of the 30th International Conference on Data Engineering Workshops,2014:182-190.
[6]Goel B,Titos-Gil R,Negi A,et al.Performance and energy analysis of the restricted transactional memory implementation on haswell[C]//Proceedings of the 28th IEEE International Parallel and Distributed Processing Symposium, 2014:615-624.
[7]Cabarcas F,Rico A,Etsion Y,et al.Interleaving granularity on high bandwidth memory architecture for CMPs[C]//Proceedings of the International Conference on Embedded Computer Systems:Architectures,Modeling and Simulation,2010:250-257.
[8]Tolle KM,Tansley D,Hey AJG.The fourth Paradigm:Data-intensive scientific discovery [J].Proceedings of the IEEE,2011,99 (8):1334-1337.
[9]Bao Y,Chen M,Ruan Y,et al.HMTT:A platform independent full-system memory trace monitoring system [J].ACM SIGMETRICS Performance Evaluation Review,2008,36 (1):229-240.
[10]Rumble SM,Kejriwal A,Ousterhout JK.Log-structured memory for DRAM-based storage [C]//Proceedings of the 12th USENIX Conference on File and Storage Technologies,2014:1-16.
[11]Nakazato H,Nishio M,F(xiàn)ujiwara M.Data allocation method considering server performance and data access frequency with consistent hashing [C]//Proceedings of the 14th Asia-Pacific Network Operations and Management Symposium,2012:1-8.
[12]Shvachko K,Kuang H,Radia S,et al.The Hadoop distributed file system [C]//Proceedings of the IEEE 26th Symposium on Mass Storage Systems and Technologies,2010:1-10.
[13]Chen Lijun,Liu Zhaoyuan,Jia Weiwei.A snapshot system based on cloud storage log-structured block system [C]//Proceedings of the IEEE 11th International Conference on Networking,Sensing and Control,2014:392-398.
[14]NING Xingwang,LIU Peiyu.Log system design in support of linkage analysis of security audit and computer forensics[J].Computer Engineering and Design,2009,30 (24):5580-5583 (in Chinese). [寧興旺,劉培玉.支持審計 與取證聯(lián)動的日志系統(tǒng)設(shè)計 [J].計算機(jī)工程與設(shè)計,2009,30(24):5580-5583.]