亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

分布式大數(shù)據(jù)的ssd磁盤和hdd磁盤混合存儲(chǔ)方法

文檔序號(hào):6625917閱讀:2517來源:國(guó)知局
分布式大數(shù)據(jù)的ssd磁盤和hdd磁盤混合存儲(chǔ)方法
【專利摘要】本發(fā)明公開了一種分布式大數(shù)據(jù)的SSD磁盤和HDD磁盤混合存儲(chǔ)方法,包括以下步驟:步驟(1)針對(duì)集群系統(tǒng)中各節(jié)點(diǎn)的分布式大數(shù)據(jù),構(gòu)建JS-model存儲(chǔ)模型,該存儲(chǔ)模型包括一個(gè)Journal文件和多個(gè)segment文件;其中,Journal文件用于數(shù)據(jù)緩沖,對(duì)數(shù)據(jù)進(jìn)行快速讀寫操作;segment文件用于數(shù)據(jù)持久化穩(wěn)定存儲(chǔ),支持?jǐn)?shù)據(jù)追加讀和數(shù)據(jù)隨機(jī)訪問;步驟(2)基于JS-model存儲(chǔ)模型構(gòu)建SSD磁盤和HDD磁盤混合分布式存儲(chǔ)模型HDStore;步驟(3)利用HDStore管理journal文件和segment文件,優(yōu)化數(shù)據(jù)讀寫;步驟(4)下載并生成Lubm數(shù)據(jù)集,對(duì)該數(shù)據(jù)集進(jìn)行預(yù)處理,為數(shù)據(jù)裝載入Bigdata系統(tǒng),測(cè)試裝載時(shí)間和查詢時(shí)間。本發(fā)明有效并且高效的管理語義大數(shù)據(jù)的混合分布式存儲(chǔ)方案,從而促進(jìn)'了大規(guī)模數(shù)據(jù)存儲(chǔ)管理的進(jìn)步與發(fā)展。)
【專利說明】分布式大數(shù)據(jù)的SSD磁盤和HDD磁盤混合存儲(chǔ)方法

【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及數(shù)據(jù)存儲(chǔ)【技術(shù)領(lǐng)域】,具體來說,涉及語義大數(shù)據(jù)的混合分布式快速存 儲(chǔ)。

【背景技術(shù)】
[0002] 隨著現(xiàn)代Web技術(shù)的普及與發(fā)展,信息的快速增長(zhǎng)使得人類進(jìn)入了大數(shù)據(jù)時(shí)代, 這對(duì)傳統(tǒng)的數(shù)據(jù)管理方式提出了巨大挑戰(zhàn),以此同時(shí),大數(shù)據(jù)技術(shù)逐漸興起。大數(shù)據(jù)技術(shù)由 各種技術(shù)共同構(gòu)成,例如并行計(jì)算、分布式文件系統(tǒng)、分布式數(shù)據(jù)庫、可擴(kuò)展存儲(chǔ)系統(tǒng)等等。 其中,關(guān)鍵技術(shù)之一是如何有效并且高效的存儲(chǔ)管理大數(shù)據(jù)。為了解決上述問題,數(shù)據(jù)在 存儲(chǔ)管理上,有以下幾種選擇,例如根據(jù)數(shù)據(jù)重要性進(jìn)行分類,對(duì)數(shù)據(jù)處理過程進(jìn)行合理安 排,或者利用分布式存儲(chǔ)技術(shù)來提高數(shù)據(jù)的讀寫速率等。
[0003] 當(dāng)前計(jì)算機(jī)硬件發(fā)展迅速,然后HDD卻是個(gè)例外。經(jīng)過研究發(fā)現(xiàn),HDD磁盤的物理 結(jié)構(gòu)限制了 I/O速率。由于磁盤的傳輸速度并沒有改變,根據(jù)木桶效應(yīng),這永遠(yuǎn)是整個(gè)計(jì)算 機(jī)性能提升的一個(gè)瓶頸。機(jī)械硬盤的基本工作方式如下,當(dāng)數(shù)據(jù)需要讀寫時(shí),HDD將會(huì)得到 指令,之后一系列動(dòng)作發(fā)生,例如磁盤轉(zhuǎn)動(dòng),磁頭移動(dòng)等。由于機(jī)械運(yùn)動(dòng),這將消耗幾毫秒時(shí) 間。避免磁盤結(jié)構(gòu)的機(jī)械設(shè)計(jì),采用新結(jié)構(gòu)是提高磁盤讀寫性能的基本方式。如今,SSD作 為一種利用集成電路組件作為內(nèi)存的數(shù)據(jù)持久化存儲(chǔ)設(shè)備。相比于HDD來說,SSD具有顯 著的讀寫性能優(yōu)勢(shì)。SSD是由固態(tài)電子存儲(chǔ)芯片陣列構(gòu)成,它在接口規(guī)范和定義、功能以及 使用方式上與HDD完全一樣。然后相比于HDD來說,SSD擁有更多的優(yōu)勢(shì),例如I/O速度更 快、防震、低功耗、低噪音、輕量級(jí)等等。同時(shí),SSD也有許多不足之處,SSD的容量有限,使用 壽命短,價(jià)格高。
[0004] 傳統(tǒng)的高性能數(shù)據(jù)庫系統(tǒng)主要基于HDD,不能夠高效的處理大數(shù)據(jù),其性能瓶頸主 要集中在I/O速率。針對(duì)以上問題,考慮到HDD和SSD各自特性,綜合利用兩種設(shè)備來構(gòu)建 混合存儲(chǔ)將有效提高大數(shù)據(jù)存儲(chǔ)管理性能,這是一種大數(shù)據(jù)存儲(chǔ)技術(shù)上新的方案。這對(duì)分 布式大數(shù)據(jù)存儲(chǔ)管理性能具有重要影響,也有助于語義網(wǎng)相關(guān)大數(shù)據(jù)應(yīng)用的推進(jìn)。


【發(fā)明內(nèi)容】

[0005] 為了克服上述現(xiàn)有技術(shù),本發(fā)明提出了一種分布式大數(shù)據(jù)的SSD磁盤和HDD磁盤 混合存儲(chǔ)方法,綜合利用HDD磁盤和SSD磁盤,通過JS-model模型來實(shí)現(xiàn)基于SSD/HDD的 混合存儲(chǔ)方案,在分布式環(huán)境下解決大數(shù)據(jù)存儲(chǔ)管理問題,最終達(dá)到大數(shù)據(jù)管理的有效性, 高效性,為大數(shù)據(jù)的存儲(chǔ)以及公開發(fā)布做準(zhǔn)備。
[0006] 本發(fā)明的技術(shù)方案如下:
[0007] 本發(fā)明提出了一種分布式大數(shù)據(jù)的SSD磁盤和HDD磁盤混合存儲(chǔ)方法,具有中心 頻率和帶寬值可調(diào)的濾波電路,該方法包括以下步驟:
[0008] 步驟1、針對(duì)集群系統(tǒng)中各節(jié)點(diǎn)的分布式大數(shù)據(jù),構(gòu)建JS-model存儲(chǔ)模型,該存儲(chǔ) 模型包括一個(gè)Journal文件和多個(gè)segment文件;其中,Journal文件用于數(shù)據(jù)緩沖,對(duì)數(shù) 據(jù)進(jìn)行快速讀寫操作;segment文件用于數(shù)據(jù)持久化穩(wěn)定存儲(chǔ),支持?jǐn)?shù)據(jù)追加讀和數(shù)據(jù)隨 機(jī)訪問;
[0009] 步驟2、基于JS-model存儲(chǔ)模型構(gòu)建SSD磁盤和HDD磁盤混合分布式存儲(chǔ)模型 HDStore ;
[0010] 步驟3、利用HDStore管理journal文件和segment文件,優(yōu)化數(shù)據(jù)讀寫;即:把數(shù) 據(jù)讀寫頻繁的journal文件放置在較小容量的SSD上,把數(shù)據(jù)隨機(jī)訪問的segment文件放 置在較大容量的HDD上;
[0011] 步驟4、下載并生成Lubm數(shù)據(jù)集,對(duì)該數(shù)據(jù)集進(jìn)行預(yù)處理,為數(shù)據(jù)裝載入Bigdata 系統(tǒng),測(cè)試裝載時(shí)間和查詢時(shí)間。
[0012] 所述Journal文件為數(shù)據(jù)項(xiàng)i的有限集合,作為集群中每一個(gè)節(jié)點(diǎn)上的數(shù)據(jù)項(xiàng)i, 由原始數(shù)據(jù)記錄r和時(shí)間戳t共同構(gòu)成。
[0013] 所述segment文件由Journal文件構(gòu)建,構(gòu)建流程具體包括以下步驟:
[0014] 在初始狀態(tài)下,集群中的每個(gè)節(jié)點(diǎn)僅有一個(gè)journal文件;隨著journal文件中數(shù) 據(jù)項(xiàng)的增加,journal文件容量達(dá)到上限,這樣通過從journal文件中轉(zhuǎn)移數(shù)據(jù)到segment 文件中,構(gòu)建出一個(gè)新的segment文件。
[0015] 所述HDStore數(shù)據(jù)存儲(chǔ)模型的體系結(jié)構(gòu),從下層向上層包括:用于機(jī)器與機(jī)器之 間通訊的集群管理層、為單個(gè)節(jié)點(diǎn)的存儲(chǔ)介質(zhì)基于小容量的SSD磁盤和大容量的HDD磁盤、 用來管理磁盤設(shè)備的Linux操作系統(tǒng);通過不同的服務(wù)對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)管理的Bigdata數(shù) 據(jù)庫;用于支持多種大數(shù)據(jù)語義的應(yīng)用層。
[0016] 所述SSD磁盤和HDD磁盤混合分布式存儲(chǔ)模型HDStore在分布式環(huán)境下,還包括 以下三種配置 :
[0017] HDStore中journal文件和segment文件同時(shí)放置在HDD磁盤中;
[0018] HDStore中journal文件和segment文件同時(shí)放置在SSD磁盤中;
[0019] HDStore中journal文件放置在SSD磁盤中,segment文件放置在HDD磁盤中。
[0020] 與現(xiàn)有技術(shù)相比,本發(fā)明針對(duì)的是大規(guī)模數(shù)據(jù)的分布式混合存儲(chǔ),最終提供一種 基于JS-model的HDStore混合分布式模型,來有效并且高效的管理語義大數(shù)據(jù)的混合分布 式存儲(chǔ)方案,從而促進(jìn)了大規(guī)模數(shù)據(jù)存儲(chǔ)管理的進(jìn)步與發(fā)展,有助于基于大數(shù)據(jù)的相關(guān)應(yīng) 用的成熟。

【專利附圖】

【附圖說明】
[0021] 圖1是本發(fā)明中基于js-model存儲(chǔ)模型,在不同節(jié)點(diǎn)設(shè)備上的數(shù)據(jù)操作示意圖;
[0022] 圖2是HDStore存儲(chǔ)模型的體系結(jié)構(gòu)圖;
[0023] 圖3是HDStroe存儲(chǔ)模型中DataServer服務(wù)中的文件系統(tǒng)操作示意圖;
[0024] 圖4是基于HDStroe存儲(chǔ)模型的大數(shù)據(jù)分布式混合存儲(chǔ)集群配置圖;
[0025] 圖5是本發(fā)明的整體流程示意圖。

【具體實(shí)施方式】
[0026] 下面結(jié)合附圖和【具體實(shí)施方式】對(duì)本發(fā)明進(jìn)行詳細(xì)說明,但本發(fā)明的實(shí)施范圍并不 局限于此。
[0027] 本發(fā)明采用的【具體實(shí)施方式】包括以下流程:
[0028] 步驟1,研究現(xiàn)有的大數(shù)據(jù)存儲(chǔ)主要基于HDD,JS-model不同于傳統(tǒng)數(shù)據(jù)存儲(chǔ)方 式,存儲(chǔ)數(shù)據(jù)持久化到文件中,文件包括一個(gè)journal文件和多個(gè)segment文件;針對(duì)大規(guī) 模數(shù)據(jù),構(gòu)建JS-model存儲(chǔ)模型:二元組、數(shù)據(jù)記錄、數(shù)據(jù)項(xiàng)、時(shí)間戳、JS集合的基本概念、 journal文件、segment文件,以及在其上的build、move、split、merge四種數(shù)據(jù)文件操作;
[0029] 步驟2,基于JS-model構(gòu)建一種新的SSD/HDD混出分布式存儲(chǔ)方案,即HDStore ;
[0030] 步驟3,在不同磁盤上,利用HDStore來管理journal和segment文件,優(yōu)化數(shù)據(jù)讀 與;
[0031] 步驟4,編寫HDStore組件完善其功能,從而對(duì)不同journal和segment文件進(jìn)行 管理;
[0032] 步驟5,為Bigdata系統(tǒng)添加靜態(tài)HDStore組件服務(wù),從而對(duì)bigdata系統(tǒng)的數(shù)據(jù) 裝載性能進(jìn)行優(yōu)化,把數(shù)據(jù)持久化存儲(chǔ)的journal和segment文件進(jìn)行分離,以及部分?jǐn)?shù)據(jù) 在SSD上的查詢性能的優(yōu)化;
[0033] 步驟6,下載并生成Lubm數(shù)據(jù)集,對(duì)該數(shù)據(jù)集進(jìn)行簡(jiǎn)單的預(yù)處理(例如數(shù)據(jù)標(biāo)準(zhǔn)格 式檢驗(yàn),大數(shù)據(jù)文件切分等),為數(shù)據(jù)裝載入Bigdata系統(tǒng)做準(zhǔn)備;
[0034] 步驟7,設(shè)計(jì)并實(shí)現(xiàn)分布式環(huán)境下,HDStore方案中journal文件和segment文件 同時(shí)放置在HDD磁盤中,對(duì)于不同大小Lbum數(shù)據(jù)集裝載入Bigdata系統(tǒng),測(cè)試裝載時(shí)間和 查詢時(shí)間。
[0035] 步驟8,設(shè)計(jì)并實(shí)現(xiàn)分布式環(huán)境下,HDStore方案中journal文件和segment文件 同時(shí)放置在SSD中,對(duì)于不同大小Lbum數(shù)據(jù)集裝載入Bigdata系統(tǒng),測(cè)試裝載時(shí)間和查詢 時(shí)間。
[0036] 步驟9,設(shè)計(jì)并實(shí)現(xiàn)分布式環(huán)境下,HDStore方案中journal文件放置在SSD中, segment文件放置在HDD磁盤中,對(duì)于不同大小Lbum數(shù)據(jù)集裝載入Bigdata系統(tǒng),測(cè)試裝載 時(shí)間和查詢時(shí)間。
[0037] 上述的步驟1中,研究并抽象出大數(shù)據(jù)存儲(chǔ)模型,該模型基于數(shù)據(jù)持久化到 journal文件和segment文件中。其中,journal文件作為數(shù)據(jù)寫緩沖,存放半結(jié)構(gòu)化可讀 可寫數(shù)據(jù),有且僅有一個(gè),segment文件按照一定的索引方式持久化存儲(chǔ)數(shù)據(jù),根據(jù)數(shù)據(jù)大 小動(dòng)態(tài)生成segment文件個(gè)數(shù)。
[0038] 本發(fā)明的步驟1具體過程如下:
[0039] 假設(shè)數(shù)據(jù)項(xiàng)i、數(shù)據(jù)索引I、二元組r和t,其中r是數(shù)據(jù)記錄,t是時(shí)間戳;
[0040] Journal文件J是數(shù)據(jù)項(xiàng)i的有限集合,在集群中的一個(gè)節(jié)點(diǎn)上,原始數(shù)據(jù)記錄和 時(shí)間戳,共同構(gòu)成數(shù)據(jù)項(xiàng),多個(gè)數(shù)據(jù)項(xiàng)存放在journal文件中。數(shù)據(jù)項(xiàng)是數(shù)據(jù)的基本單元, 追加到j(luò)ournal文件中。如公式(1)所示:
[0041] J= Ui = <r,t>},|J| 彡 N,其中 N 是正整數(shù)·(1)
[0042] Segment文件S是數(shù)據(jù)項(xiàng)I的無限集合,segment文件S使用B-tree結(jié)構(gòu)組織數(shù) 據(jù)索引,B-tree的葉子節(jié)點(diǎn)由數(shù)據(jù)項(xiàng)I構(gòu)成。值得注意的是,數(shù)據(jù)項(xiàng)在journal文件中是 無序的,在segment文件中是有序B-tree。如公式(2)所示:
[0043] S = {I|I = <R,T>}· (2)
[0044] JS集合是一個(gè)journal文件和多個(gè)segment文件的并,其中journal文件有且僅 有一個(gè),一個(gè)journal作為緩沖對(duì)應(yīng)多個(gè)segment文件,segment文件個(gè)數(shù)依賴于數(shù)據(jù)項(xiàng)個(gè) 數(shù)。如公式(3)所示:
[0045] JS = J U Si U,…,U Sn (3)
[0046] 以上定義了 JS-model,它是一種文件集合。為了描述數(shù)據(jù)存儲(chǔ)模型,還需要在 journal和segment文件上定義幾種操作:build操作是從一個(gè)journal文件開始創(chuàng)建一 個(gè)segment文件;split操作是從一個(gè)segment文件分裂成多個(gè)segment文件;move操作 是把一個(gè)segment文件從集群中一個(gè)機(jī)器節(jié)點(diǎn)移動(dòng)到另外一個(gè)節(jié)點(diǎn);merge操作是把多個(gè) segment文件合并為一個(gè)緊湊的單獨(dú)segment文件。
[0047] 本發(fā)明的步驟2基于JS-model設(shè)計(jì)出新的數(shù)據(jù)存儲(chǔ)方案,即HDStore。其中, journal文件有且僅有一個(gè),主要用作數(shù)據(jù)緩沖,對(duì)數(shù)據(jù)進(jìn)行快速讀寫操作;segment文 件有多個(gè),對(duì)數(shù)據(jù)進(jìn)行持久化穩(wěn)定存儲(chǔ),主要支持?jǐn)?shù)據(jù)追加讀和數(shù)據(jù)隨機(jī)訪問。我們把 journal文件和segment文件根據(jù)功能不同進(jìn)行分離,在步驟4)中把數(shù)據(jù)讀寫頻繁的 journal文件放置在較小容量的SSD上,把數(shù)據(jù)隨機(jī)訪問的segment文件放置在較大容量的 HDD上,保證數(shù)據(jù)加載存入的高效性和數(shù)據(jù)持久化存儲(chǔ)的有效性。
[0048] 本發(fā)明的步驟4和步驟5,在已有的開源系統(tǒng)Bigdata上,編寫實(shí)現(xiàn)HDStore大數(shù) 據(jù)分布式混合存儲(chǔ)組件,優(yōu)化Bigdata的數(shù)據(jù)裝載于查詢性能。步驟7對(duì)裝入數(shù)據(jù)進(jìn)行預(yù) 處理,步驟7、8、9,針對(duì)不同磁盤的配置,分別應(yīng)用JS-model存儲(chǔ)模型,在單獨(dú)的HDD使用 JS-model,在單獨(dú)的SSD使用JS-moedel,把journal文件放置在SSD上和把segment文件 放置在HDD上,三種不同方案下,得到HDStore同時(shí)運(yùn)用HDD和SSD時(shí),在分布式大數(shù)據(jù)存 儲(chǔ)管理上的高性價(jià)比。
[0049] 如圖1所示,基于JS-model存儲(chǔ)模型,在集群中不同節(jié)點(diǎn)之間,需要進(jìn)行以下數(shù)據(jù) 操作:
[0050] l、build操作。build操作是從一個(gè)journal文件開始,倉(cāng)ij建一個(gè)新的segment文 件。在初始狀態(tài)下,集群中的每個(gè)節(jié)點(diǎn)僅有一個(gè)journal文件,沒有segment文件。隨著 journal文件中數(shù)據(jù)項(xiàng)的增加,journal文件容量達(dá)到上限,這樣通過從journal文件中轉(zhuǎn) 移數(shù)據(jù)到segment文件中,一個(gè)新的segment文件也就構(gòu)建。
[0051] 2、split操作。split操作是把一個(gè)舊的segment文件依據(jù)集群中節(jié)點(diǎn)個(gè)數(shù)切 分成多個(gè)segment文件。為了適應(yīng)磁盤空間容量有限性,文件系統(tǒng)會(huì)限定文件大小,隨著 segment文件中數(shù)據(jù)索引項(xiàng)的增加,segment文件達(dá)到其容量限制,這樣,它會(huì)被自動(dòng)切分 為多個(gè)segment文件,為下一步數(shù)據(jù)存儲(chǔ)做準(zhǔn)備。
[0052] 3、move操作。move操作是把一個(gè)segment文件從集群中的一個(gè)節(jié)點(diǎn)移動(dòng)到另外 一個(gè)節(jié)點(diǎn)上。為了適應(yīng)分布式系統(tǒng)中的負(fù)載均衡,segment文件需要從存儲(chǔ)數(shù)據(jù)較多的節(jié) 點(diǎn)移動(dòng)到存儲(chǔ)數(shù)據(jù)較少的節(jié)點(diǎn),但是journal文件是本地的,不會(huì)被移動(dòng)。
[0053] 4、merge操作。merge操作是把多個(gè)segment文件合并成一個(gè)新的緊湊的segment 文件。隨著數(shù)據(jù)加載過程的進(jìn)行,會(huì)存在大量的小數(shù)據(jù)segment文件,考慮到數(shù)據(jù)的緊湊性 和空間的利用率,merge操作相當(dāng)重要。
[0054] 如圖2所示,HDStore數(shù)據(jù)存儲(chǔ)模型的體系結(jié)構(gòu),從下向上主要包括五層,S卩:用 于機(jī)器與機(jī)器之間通訊的集群管理層、單個(gè)節(jié)點(diǎn)的存儲(chǔ)介質(zhì)基于小容量的SSD和大容量 的HDD、用來管理磁盤設(shè)備的Linux操作系統(tǒng);通過不同的服務(wù)對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)管理的 Bigdata數(shù)據(jù)庫;上層的用于支持多種大數(shù)據(jù)語義的應(yīng)用層。
[0055] 如圖3所示,HDStroe存儲(chǔ)模型在節(jié)點(diǎn)上運(yùn)行不同服務(wù)來對(duì)數(shù)據(jù)進(jìn)行管理。 DataServer服務(wù)負(fù)責(zé)構(gòu)建數(shù)據(jù)索引,同時(shí)使用文件系統(tǒng)對(duì)數(shù)據(jù)進(jìn)行持久化存儲(chǔ)。集群中的 每個(gè)節(jié)點(diǎn)上,會(huì)配置較小容量的SSD和較大容量的HDD,其中SSD用來對(duì)數(shù)據(jù)進(jìn)行快速緩沖, HDD用來對(duì)大規(guī)模數(shù)據(jù)進(jìn)行持久化存儲(chǔ)。
[0056] 在HDStroe存儲(chǔ)模型中,DataServer服務(wù)把源數(shù)據(jù)構(gòu)建成多種不同的索引,以便 在journal文件和segment文件中存放數(shù)據(jù)記錄,一個(gè)journal文件對(duì)應(yīng)多個(gè)segment文 件。Journal文件被用作數(shù)據(jù)緩沖,它可以寫一次讀多次,其中所有的歷史記錄狀態(tài)都可被 訪問。Journal文件使用數(shù)據(jù)記錄r和時(shí)間戳t來維護(hù)數(shù)據(jù)引用,僅用作數(shù)據(jù)加載和臨時(shí) 存儲(chǔ)。但是,journal文件又不同于內(nèi)存中的緩存,journal文件在磁盤上對(duì)數(shù)據(jù)進(jìn)行文件 持久化存儲(chǔ)。數(shù)據(jù)項(xiàng)i在journal文件中無序存放,邏輯追加到j(luò)ournal文件中。Journal 文件支持溢出概念,當(dāng)它達(dá)到了閾值范圍,溢出被觸犯,一個(gè)segment文件將被激活。在溢 出過程中,journal文件中的數(shù)據(jù)項(xiàng)i移動(dòng)到segment文件當(dāng)中,segment文件中的數(shù)據(jù)項(xiàng) R被修改。在一個(gè)DataServer上一個(gè)journal文件對(duì)應(yīng)一個(gè)索引文件。
[0057] segment文件對(duì)數(shù)據(jù)進(jìn)行持久化存儲(chǔ),它依賴于B-tree來提供從keys到value 的持久化映射?;跀?shù)據(jù)記錄R的標(biāo)示符,B-tree被用于對(duì)象存儲(chǔ)。每個(gè)DataServer上 的journal文件對(duì)應(yīng)零個(gè)或者多個(gè)segment文件,不同節(jié)點(diǎn)上的DataServer共享同一個(gè) metadata。
[0058] 開始時(shí),每個(gè)節(jié)點(diǎn)有且僅有一個(gè)journal文件,沒有segment文件?;贖DStroe 存儲(chǔ)模式,在集群中隨機(jī)選取一個(gè)節(jié)點(diǎn),開始數(shù)據(jù)加載過程。隨著數(shù)據(jù)加載過程的進(jìn)行,一 旦被選的journal文件達(dá)到最大容量式,build操作開始進(jìn)行。當(dāng)segment文件達(dá)到最大 容量,舊的segment文件會(huì)自動(dòng)切分成多個(gè)小的segment文件,第一次切分的segment文件 個(gè)數(shù)依據(jù)集群中節(jié)點(diǎn)個(gè)數(shù),之后會(huì)一直切分為兩個(gè)segment文件。下一步,每個(gè)segment文 件會(huì)移動(dòng)到集群中每個(gè)節(jié)點(diǎn)上,這樣每個(gè)節(jié)點(diǎn)上各自都擁有一個(gè)segment文件。然后,數(shù)據(jù) 加載在集群中并行執(zhí)行。
[0059] 之后,隨著數(shù)據(jù)加載,一旦segment文件達(dá)到最大容量,它將自動(dòng)一分為二。如果 segment小文件個(gè)數(shù)較多,merge操作會(huì)周期性發(fā)生。為了均衡集群中不同節(jié)點(diǎn)的性能, segment文件可以在集群中不同節(jié)點(diǎn)之間move。
[0060] 以上步驟的具體算法實(shí)現(xiàn)如下:
[0061]
[0062]

【權(quán)利要求】
1. 一種分布式大數(shù)據(jù)的SSD磁盤和HDD磁盤混合存儲(chǔ)方法,其特征在于,該方法包括以 下步驟: 步驟(1)、針對(duì)集群系統(tǒng)中各節(jié)點(diǎn)的分布式大數(shù)據(jù),構(gòu)建JS-model存儲(chǔ)模型,該存儲(chǔ)模 型包括一個(gè)Journal文件和多個(gè)segment文件;其中,Journal文件用于數(shù)據(jù)緩沖,對(duì)數(shù)據(jù) 進(jìn)行快速讀寫操作;segment文件用于數(shù)據(jù)持久化穩(wěn)定存儲(chǔ),支持?jǐn)?shù)據(jù)追加讀和數(shù)據(jù)隨機(jī) 訪問; 步驟(2)、基于JS-model存儲(chǔ)模型構(gòu)建SSD磁盤和HDD磁盤混合分布式存儲(chǔ)模型 HDStore ; 步驟(3)、利用HDStore管理journal文件和segment文件,優(yōu)化數(shù)據(jù)讀寫;即:把數(shù)據(jù) 讀寫頻繁的journal文件放置在較小容量的SSD上,把數(shù)據(jù)隨機(jī)訪問的segment文件放置 在較大容量的HDD上; 步驟(4)、下載并生成Lubm數(shù)據(jù)集,對(duì)該數(shù)據(jù)集進(jìn)行預(yù)處理,為數(shù)據(jù)裝載入Bigdata系 統(tǒng),測(cè)試裝載時(shí)間和查詢時(shí)間。
2. 如權(quán)利要求1所述的分布式大數(shù)據(jù)的SSD磁盤和HDD磁盤混合存儲(chǔ)方法,其特征在 于,所述Journal文件為數(shù)據(jù)項(xiàng)i的有限集合,作為集群中每一個(gè)節(jié)點(diǎn)上的數(shù)據(jù)項(xiàng)i,由原始 數(shù)據(jù)記錄r和時(shí)間戳t共同構(gòu)成。
3. 如權(quán)利要求1所述的分布式大數(shù)據(jù)的SSD磁盤和HDD磁盤混合存儲(chǔ)方法,其特征在 于,所述segment文件由Journal文件構(gòu)建,構(gòu)建流程具體包括以下步驟: 在初始狀態(tài)下,集群中的每個(gè)節(jié)點(diǎn)僅有一個(gè)journal文件;隨著journal文件中數(shù)據(jù)項(xiàng) 的增加,journal文件容量達(dá)到上限,這樣通過從journal文件中轉(zhuǎn)移數(shù)據(jù)到segment文件 中,構(gòu)建出一個(gè)新的segment文件。
4. 如權(quán)利要求1所述的分布式大數(shù)據(jù)的SSD磁盤和HDD磁盤混合存儲(chǔ)方法,其特征于, 所述HDStore數(shù)據(jù)存儲(chǔ)模型的體系結(jié)構(gòu),從下層向上層包括:用于機(jī)器與機(jī)器之間通訊的 集群管理層、為單個(gè)節(jié)點(diǎn)的存儲(chǔ)介質(zhì)基于小容量的SSD磁盤和大容量的HDD磁盤、用來管理 磁盤設(shè)備的Linux操作系統(tǒng);通過不同的服務(wù)對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)管理的Bigdata數(shù)據(jù)庫;用 于支持多種大數(shù)據(jù)語義的應(yīng)用層。
5. 如權(quán)利要求1所述的分布式大數(shù)據(jù)的SSD磁盤和HDD磁盤混合存儲(chǔ)方法,其特征于, 所述SSD磁盤和HDD磁盤混合分布式存儲(chǔ)模型HDStore在分布式環(huán)境下,還包括以下三種 配置: HDStore中journal文件和segment文件同時(shí)放置在HDD磁盤中; HDStore中journal文件和segment文件同時(shí)放置在SSD磁盤中; HDStore中journal文件放置在SSD磁盤中,segment文件放置在HDD磁盤中。
【文檔編號(hào)】G06F17/30GK104216988SQ201410448162
【公開日】2014年12月17日 申請(qǐng)日期:2014年9月4日 優(yōu)先權(quán)日:2014年9月4日
【發(fā)明者】馮志杰, 馮志勇, 王鑫, 饒國(guó)政 申請(qǐng)人:天津大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1