基于Spark云網(wǎng)絡(luò)的海洋大數(shù)據(jù)主從索引系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及數(shù)據(jù)處理領(lǐng)域,尤其涉及大數(shù)據(jù)處理,具體是指一種基于Spark云網(wǎng) 絡(luò)的海洋大數(shù)據(jù)主從索引系統(tǒng)及方法。
【背景技術(shù)】
[0002] 我國海洋建設(shè)主要把握四個目標:管理、共享、決策及服務(wù),然而我國在建設(shè)信息 化平臺的過程中仍存在諸如海洋信息資源整合標準不完善、信息傳輸渠道不順暢、數(shù)據(jù)訪 問通信差等問題。大數(shù)據(jù)技術(shù)的發(fā)展,組織網(wǎng)絡(luò)的復(fù)雜,日益加重了海洋信息的處理壓力, 主要表現(xiàn)在:1、隨著海洋物聯(lián)網(wǎng)的大規(guī)模布局,諸多信息平臺針對秒級數(shù)據(jù)處理及數(shù)據(jù)訪 問的壓力日益加劇;2、海上應(yīng)急及預(yù)警應(yīng)用對實時性及精確性也日益增加,數(shù)據(jù)高頻率、高 強度的查詢難以得到保證;3、傳統(tǒng)封閉式鏈路制約了海洋信息互聯(lián),各物理設(shè)備之間的訪 問增加了大量的時間和空間開支。因此,如何實現(xiàn)快速、全面、實時的獲取數(shù)據(jù)成為本領(lǐng)域 技術(shù)人員迫切解決的技術(shù)問題。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明的目的是克服了上述現(xiàn)有技術(shù)的缺點,提供了一種將物聯(lián)網(wǎng)基于一致性哈 希串聯(lián)起來、通過云計算實現(xiàn)查詢請求的分配和平衡、從而提高動態(tài)網(wǎng)絡(luò)布局下平臺的查 詢性能和穩(wěn)定性的基于Spark云網(wǎng)絡(luò)的海洋大數(shù)據(jù)主從索引系統(tǒng)及方法。
[0004] 為了實現(xiàn)上述目的,本發(fā)明的基于Spark云網(wǎng)絡(luò)的海洋大數(shù)據(jù)主從索引系統(tǒng)及方 法具有如下構(gòu)成:
[0005] 該基于Spark云網(wǎng)絡(luò)的海洋大數(shù)據(jù)主從索引系統(tǒng),其主要特點是,所述的系統(tǒng)包 括:
[0006] 數(shù)據(jù)采集及布局模塊,用以采集數(shù)據(jù)并對采集到的數(shù)據(jù)進行云布局;
[0007] 數(shù)據(jù)動態(tài)融合模塊,用以基于樣本驅(qū)動的數(shù)據(jù)融合機制確定數(shù)據(jù)的物理布局;
[0008] 數(shù)據(jù)自適應(yīng)劃分模塊,用以聚類符合用戶需求導(dǎo)向及敏感的數(shù)據(jù);
[0009] 數(shù)據(jù)時態(tài)主從索引模塊,用以基于Spark云網(wǎng)絡(luò)服務(wù)框架,依托時間維度為延伸 載體,響應(yīng)客戶端的查詢并進行查詢處理。
[0010] 進一步地,所述的數(shù)據(jù)采集及布局模塊包括數(shù)據(jù)采集網(wǎng)絡(luò);所述的數(shù)據(jù)采集網(wǎng)路 集成包括臺站、浮標、船舶、衛(wèi)星的海洋環(huán)境監(jiān)測數(shù)據(jù),并形成一致性哈希訪問鏈路。
[0011] 本發(fā)明還涉及一種基于Spark云網(wǎng)絡(luò)的海洋大數(shù)據(jù)主從索引方法,其主要特點 是,所述的方法包括以下步驟:
[0012] (1)數(shù)據(jù)采集及布局模塊采集數(shù)據(jù)并對采集到的數(shù)據(jù)進行云布局;
[0013] (2)數(shù)據(jù)動態(tài)融合模炔基于樣本驅(qū)動的數(shù)據(jù)融合機制確定數(shù)據(jù)的物理布局;
[0014] (3)數(shù)據(jù)自適應(yīng)劃分模塊聚類符合用戶需求導(dǎo)向及敏感的數(shù)據(jù);
[0015] (4)數(shù)據(jù)時態(tài)主從索引模炔基于Spark云網(wǎng)絡(luò)服務(wù)框架,依托時間維度為延伸載 體,響應(yīng)客戶端的查詢并進行查詢處理。
[0016] 進一步地,所述的步驟(1)具體為:
[0017] 所述的數(shù)據(jù)采集及布局模塊集成包括臺站、浮標、船舶、衛(wèi)星的海洋環(huán)境監(jiān)測數(shù)據(jù) 采集網(wǎng)絡(luò),組成一致性哈希訪問鏈路。
[0018] 進一步地,所述的步驟(2)具體包括以下步驟:
[0019] (2. 1)數(shù)據(jù)動態(tài)融合模塊通過訓(xùn)練采集到的數(shù)據(jù)以獲取數(shù)據(jù)的特征及內(nèi)部規(guī)律;
[0020] (2. 2)數(shù)據(jù)動態(tài)融合模塊根據(jù)采集到的數(shù)據(jù)的空間自相關(guān)性及空間異構(gòu)型將各類 數(shù)據(jù)存儲到各分布式計算平臺上。
[0021] 進一步地,所述的步驟(3)具體為:
[0022] 所述的數(shù)據(jù)自適應(yīng)劃分模塊以需求為導(dǎo)向和以用戶行為為基礎(chǔ),動態(tài)分配和劃分 各計算節(jié)點內(nèi)部數(shù)據(jù)。
[0023] 進一步地,所述的,響應(yīng)客戶端的查詢并進行查詢處理,具體包括以下步驟:
[0024] (4. 1)數(shù)據(jù)時態(tài)主從索引模塊響應(yīng)客戶端的查詢;
[0025] (4. 2)查詢接收器通過時態(tài)主索引找到所有與待查詢數(shù)據(jù)相關(guān)的節(jié)點,并建立查 詢鏈接;
[0026] (4. 3)執(zhí)行并行化的局部索引搜索,并將最終的數(shù)據(jù)返回到客戶端。
[0027] 采用了該發(fā)明中的基于Spark云網(wǎng)絡(luò)的海洋大數(shù)據(jù)主從索引系統(tǒng)及方法,該發(fā)明 中提出的一種基于關(guān)鍵字B+-tree和L-RR*的主從復(fù)合索引架構(gòu),以物聯(lián)網(wǎng)作為海洋信息 采集的觸角,初次提出了海洋物理云部署,并基于云架構(gòu)實現(xiàn)了多源空間數(shù)據(jù)的快速獲取 及查詢,提供數(shù)據(jù)的一站式調(diào)用服務(wù)。通過實證分析及運用,該方法通過挖掘海洋數(shù)據(jù)布局 及特征以準確高效地建立適用于海洋大數(shù)據(jù)的分布式索引技術(shù),結(jié)合Spark云平臺保證了 系統(tǒng)高性能計算及實時信息查詢響應(yīng)。
【附圖說明】
[0028] 圖1為本發(fā)明的海洋大數(shù)據(jù)分布式索引總層次圖。
[0029] 圖2為本發(fā)明的海洋大數(shù)據(jù)主從索引框架。
[0030] 圖3為本發(fā)明的海洋物聯(lián)網(wǎng)云布局示意圖。
[0031] 圖4為本發(fā)明的動態(tài)數(shù)據(jù)融合策略示意圖。
[0032] 圖5為本發(fā)明的基于磁盤的LL-R*樹局部索引示意圖。
【具體實施方式】
[0033] 為了能夠更清楚地描述本發(fā)明的技術(shù)內(nèi)容,下面結(jié)合具體實施例來進行進一步的 描述。
[0034] 本發(fā)明的技術(shù)任務(wù)是按以下方式實現(xiàn)的:一種基于Spark的海洋大數(shù)據(jù)主從索引 策略,包括海洋物理網(wǎng)云布局、數(shù)據(jù)動態(tài)融合、數(shù)據(jù)自適應(yīng)劃分以及主從索引結(jié)構(gòu)。
[0035] 所述海洋物聯(lián)網(wǎng)云布局方法以一致性哈希方式組織形成物理云,并根據(jù)一致性網(wǎng) 絡(luò)規(guī)則實現(xiàn)各數(shù)據(jù)中心計算節(jié)點的實時互動,以保證訪問效率。所述數(shù)據(jù)動態(tài)融合方法以 數(shù)據(jù)為驅(qū)動,計算數(shù)據(jù)源內(nèi)部區(qū)間距離差,以實現(xiàn)數(shù)據(jù)源的合理劃分,并將其分布到各相關(guān) 節(jié)點,形成以用戶行為為導(dǎo)向的數(shù)據(jù)分布特征。所述數(shù)據(jù)自適應(yīng)劃分方法用于動態(tài)調(diào)節(jié)各 計算節(jié)點內(nèi)部數(shù)據(jù)資源,即解決了節(jié)點內(nèi)部數(shù)據(jù)塊碎片化問題,同時提高了局部關(guān)聯(lián)數(shù)據(jù) 的訪問效率。所述主從索引結(jié)構(gòu),實時反饋用戶查詢請求,保證實時化、精確化和快速化的 系統(tǒng)響應(yīng)。
[0036] 由于信息平臺的運行環(huán)境時刻在變化,海洋物理網(wǎng)數(shù)據(jù)實時傳輸,對于給定的索 引結(jié)構(gòu),其快速的查詢請求會造成系統(tǒng)查詢資源的匱乏,導(dǎo)致查詢請求排隊延遲,為了解決 網(wǎng)絡(luò)并發(fā)訪問問題,本發(fā)明通過將物聯(lián)網(wǎng)基于一致性哈希串聯(lián)起來,通過云計算實現(xiàn)查詢 請求的分配和平衡,從而提高動態(tài)網(wǎng)絡(luò)布局下平臺的查詢性能和穩(wěn)定性。
[0037] 在圖1,是具有五層體系的海洋大數(shù)據(jù)主從索引結(jié)構(gòu)(ML-Cloud),其中底層表示 為Spark云服務(wù)平臺,部署于可橫向拓展的服務(wù)器集群上。第二第三層為整個索引結(jié)構(gòu)的 核心,其中第二層為時空傳感器數(shù)據(jù)索引生成器和響應(yīng)器。其索引框架如圖2所示,索引 生成器封裝了基于MapReduce的批量并行操作符用于準實時建立、更新以及重組索引,當 傳感數(shù)據(jù)進入HBase后觸發(fā)該裝置;響應(yīng)器接受來自客戶端的查詢請求,當客戶端請求數(shù) 據(jù)時,索引響應(yīng)器首先解析查詢參數(shù)并定位其空間范圍和時間間隔(關(guān)鍵字B+樹),并將 相關(guān)消息傳送至工作節(jié)點,交由L-RR*完成剩余數(shù)據(jù)解析。第三層為分布式緩沖區(qū)管理器 (Cache),置入部分L-RR*索引于內(nèi)存掛起,同時由自適應(yīng)劃分(如圖5)所得的高頻熱點數(shù) 據(jù)也將常駐內(nèi)存以保證實時數(shù)據(jù)檢索。頂層為數(shù)據(jù)傳輸通道和收集器(Tunnel),由一體化 的海洋物聯(lián)網(wǎng)布局所得,通過一致性哈希原則將其轉(zhuǎn)換成網(wǎng)絡(luò)互聯(lián)的物理云(如圖3),傳 感器采集數(shù)據(jù)后,進入Tunnel形成若干個實時的先進先出(FIFO)隊列,且每一隊列接受來 自傳感網(wǎng)絡(luò)的數(shù)據(jù)對象或數(shù)據(jù)流;當數(shù)據(jù)聚集到一定規(guī)模時(nvQv,nv為隊列的數(shù)量,Qv為 單一隊列的數(shù)據(jù)容量),可通過數(shù)據(jù)動態(tài)融合策略(如圖4)將數(shù)據(jù)有規(guī)律地分布式存儲到 各個計算節(jié)點上。
[0038] 在圖2,海洋大數(shù)據(jù)主從索引結(jié)構(gòu)由基于HBase的關(guān)鍵字B+樹索引組成和基于磁 盤的L-RR*樹組成,以實現(xiàn)高吞吐量的數(shù)據(jù)訪問和準實時的數(shù)據(jù)檢索。全局索引的葉子結(jié) 點指向局部L-RR*索引樹的根結(jié)點,當查詢請求響應(yīng)掛起時,局部索引對象將會被置入內(nèi) 存緩沖區(qū),且所有計算節(jié)點和workers都以并行的方式計算各自的中間結(jié)果,主從節(jié)點收 集來自任務(wù)追蹤器的反饋結(jié)果并將最終結(jié)果傳輸?shù)娇蛻舳恕?br>[0039] 在圖3,給出了海洋物聯(lián)網(wǎng)云布局模式,每個監(jiān)測站點以一致性哈希的網(wǎng)絡(luò)方式組 成新一代的物理云結(jié)構(gòu)。每一個從節(jié)點表示為一個計算節(jié)點(數(shù)據(jù)中心),且為每一節(jié)點由 兩部分內(nèi)容組成,Node = concatenate (HashobjID,L-RR*) :(1)計算節(jié)點由網(wǎng)絡(luò)的形式組 織,并對每一個節(jié)點其進行一致性哈希編碼,得到一個固定的HashobjID作為其索引緩沖 區(qū)(index buffer)的標識符,節(jié)點間通過網(wǎng)絡(luò)地址互相對等訪問;(2)為每一節(jié)點建立對 應(yīng)的局部索引L-RR*,如圖5所示,以實現(xiàn)數(shù)據(jù)的高效管理以及查詢響應(yīng)。每一個計算節(jié)點 都享有一個獨立存儲空間,主節(jié)點(Master Node)負責發(fā)送及接受查詢請求。
[0040] 在圖 4,給出 了動態(tài)數(shù)據(jù)融合方法(Adaptive Method of Data Merging Strategy)示意圖;給定m個連續(xù)區(qū)間I1,…,Im,及其各自參考中心值C1,…,c m,計算每 一區(qū)間內(nèi)部距離差Dist (Ik,ck),初始由各相鄰區(qū)間的參考中心值的距離差決定,其次可通 過計算每一區(qū)間的屬性值出現(xiàn)頻次作進一步判斷,并逐步合并Diff差值最小的 兩個相鄰區(qū)間(It,It+1),It= I tU I t+1,最終獲取新數(shù)據(jù)區(qū)劃I1, . . .,Ini,,為了提高數(shù)據(jù)利 用率及查詢效率,可將劃分后的數(shù)據(jù)分布式存儲到相應(yīng)的計算節(jié)點。執(zhí)行動態(tài)數(shù)據(jù)融合需 滿足以下規(guī)則:
[0041] (1)如若每個數(shù)據(jù)區(qū)間的密度超出磁盤或者單個數(shù)據(jù)塊的空間容量,即N > St/ cst;
[0042] (2)如若每對相鄰區(qū)間其參考中心值距離差大于特定值,- <j_.> SlJlJ不 可能出現(xiàn)在同一組域內(nèi),其中藏表示為數(shù)值屬性中相鄰值間的平均距離。
[0043] 在圖5,基于數(shù)據(jù)自適應(yīng)