基于內(nèi)存計算的可定制多模式大數(shù)據(jù)處理系統(tǒng)的制作方法
【專利摘要】本發(fā)明提供了一種基于內(nèi)存計算的可定制多模式大數(shù)據(jù)處理系統(tǒng),包括:數(shù)據(jù)存儲層模塊、基于內(nèi)存的數(shù)據(jù)共享和管理層模塊、基于內(nèi)存計算的通用執(zhí)行框架層模塊以及訪問接口層模塊;其中,采用了數(shù)據(jù)的分布式內(nèi)存抽象機制、位置感知性調(diào)度機制、分布式混合列式存儲機制。本發(fā)明構建了海量數(shù)據(jù)存儲,提供面向集群并發(fā)計算的內(nèi)存數(shù)據(jù)管理和共享框架,并提供高效、按需定制的大數(shù)據(jù)多模式通用處理框架,支持批處理、實時數(shù)據(jù)流計算,對數(shù)據(jù)的靈活分析與深度利用提供支撐。
【專利說明】
基于內(nèi)存計算的可定制多模式大數(shù)據(jù)處理系統(tǒng)
技術領域
[0001]本發(fā)明涉及大數(shù)據(jù)技術(基礎平臺)領域的系統(tǒng),具體地,涉及基于內(nèi)存計算的可定制多模式大數(shù)據(jù)處理系統(tǒng)。
【背景技術】
[0002]大數(shù)據(jù)處理技術是海量數(shù)據(jù)處理的計算模式實現(xiàn),基于大數(shù)據(jù)存儲與管理技術展開,是大數(shù)據(jù)分析挖掘與應用的核心支撐。隨著海量數(shù)據(jù)處理需求多樣化的發(fā)展,要求大數(shù)據(jù)處理技術能夠在統(tǒng)一的通用處理框架下,能夠提供批處理、流處理、圖處理等多種處理模式的數(shù)據(jù)處理功能,具備綜合化數(shù)據(jù)處理功能;與此同時,各行業(yè)、各領域的大數(shù)據(jù)處理需求向細粒度、可定制化方向發(fā)展,一方面要求大數(shù)據(jù)處理技術在保證系統(tǒng)作業(yè)吞吐的前提下,能夠提供細粒度調(diào)度操控接口,適應不同類型、不同優(yōu)先級等多方面的作業(yè)處理需求,另一方面要求大數(shù)據(jù)處理技術不斷完善處理模式與處理效率,支持迭代、共享等多種處理邏輯,并適應數(shù)據(jù)加速膨脹的發(fā)展現(xiàn)狀,在各種模式下不斷提升處理效率。然而,盡管大數(shù)據(jù)處理技術及相關領域快速發(fā)展,但目前尚未出現(xiàn)能夠同時滿足高效的、支持定制模式的大數(shù)據(jù)處理系統(tǒng)。
[0003]經(jīng)對現(xiàn)有技術的文獻檢索發(fā)現(xiàn),名稱為“一種用于大數(shù)據(jù)處理的計算系統(tǒng)及計算方法”的專利文獻(申請?zhí)?201310455174.2 ;公開號:CN103488775A),公開了一種用于大數(shù)據(jù)處理的計算系統(tǒng),其包括數(shù)據(jù)存儲模塊、消息傳輸模塊和計算模型模塊、以及編程接口模塊,可作為一種通用的大數(shù)據(jù)處理系統(tǒng),但其采用的技術方案先進性不足,無法滿足數(shù)據(jù)處理的實時性需求,同時無法支持交互式查詢、流數(shù)據(jù)分析、圖處理等多種處理模式,可定制性效果不佳,另外系統(tǒng)整體吞吐性能也有待進一步提升。
[0004]又經(jīng)檢索發(fā)現(xiàn),專利名稱為“一種基于分布式內(nèi)存計算的大數(shù)據(jù)實時處理系統(tǒng)及方法”的專利文獻(申請?zhí)?201510110508.1;公開號:CN104636199A),公開了一種基于分布式內(nèi)存計算的大數(shù)據(jù)實時處理系統(tǒng)及方法,其實現(xiàn)了分布式內(nèi)存集中使用,內(nèi)存計算過程數(shù)據(jù)可恢復,以及數(shù)據(jù)實時增量計算,數(shù)據(jù)訪問速度快,可提供實時的分析結(jié)果。但其僅支持對數(shù)據(jù)的實時處理,所支持的處理模式單一,難以支持批處理、圖處理等處理需求;另外其所處理的數(shù)據(jù)規(guī)模限于集群內(nèi)存容量,無法支撐數(shù)據(jù)量超過內(nèi)存范圍的海量數(shù)據(jù)處理。
[0005]為此,有必要發(fā)展高效的可定制多模式大數(shù)據(jù)處理系統(tǒng),從而實現(xiàn)突破基于內(nèi)存的分布式批處理技術、高可靠性實時流處理、多模式計算資源統(tǒng)一管理,形成多模式綜合化海量數(shù)據(jù)處理編程支撐能力、細粒度可定制作業(yè)調(diào)度能力、迭代等復雜處理邏輯支撐能力,顯著提升數(shù)據(jù)處理效率。
【發(fā)明內(nèi)容】
[0006]針對現(xiàn)有技術中的缺陷,本發(fā)明的目的是提供一種基于內(nèi)存計算的可定制多模式大數(shù)據(jù)處理系統(tǒng)。
[0007]根據(jù)本發(fā)明提供的一種基于內(nèi)存計算的可定制多模式大數(shù)據(jù)處理系統(tǒng),包括:數(shù)據(jù)存儲層模塊、基于內(nèi)存的數(shù)據(jù)共享和管理層模塊、基于內(nèi)存計算的通用執(zhí)行框架層模塊以及訪問接口層模塊;
[0008]數(shù)據(jù)存儲層模塊,用于數(shù)據(jù)存儲;
[0009]基于內(nèi)存的數(shù)據(jù)共享和管理層模塊,用于銜接數(shù)據(jù)存儲層模塊與基于內(nèi)存計算的通用執(zhí)行框架層模塊,將數(shù)據(jù)存儲層模塊存儲的數(shù)據(jù)資源載入內(nèi)存并按需共享;
[0010]基于內(nèi)存計算的通用執(zhí)行框架層模塊,用于數(shù)據(jù)處理編程;
[0011]訪問接口層模塊,用于提供數(shù)據(jù)訪問接口。
[0012]優(yōu)選地,所述數(shù)據(jù)存儲層模塊包括如下任一個或任多個模塊:
[0013]分布式文件系統(tǒng)模塊,用于對數(shù)據(jù)進行存儲;
[0014]分布式數(shù)據(jù)庫模塊,用于在基于列的數(shù)據(jù)表上建立二級索引,所述二級索引包括全局索引和本地索引;
[0015]分布式消息隊列模塊,用于提供實時在線和批量離線處理數(shù)據(jù)的消息派發(fā)服務;
[0016]分布式同步系統(tǒng)模塊,用于提供高可用的分布式數(shù)據(jù)管理和系統(tǒng)協(xié)調(diào)框架,保證分布式環(huán)境中數(shù)據(jù)的強一致性。
[0017]優(yōu)選地,所述基于內(nèi)存的數(shù)據(jù)共享和管理層模塊,用于從數(shù)據(jù)存儲層模塊中加載需要頻繁訪問的數(shù)據(jù),對基于工作集的任務提供抽象分布式的內(nèi)存抽象,允許在執(zhí)行多個任務時顯式地將工作集緩存在內(nèi)存中。
[0018]優(yōu)選地,所述基于內(nèi)存的數(shù)據(jù)共享和管理層模塊,采用數(shù)據(jù)的分布式內(nèi)存抽象機制;
[0019]所述數(shù)據(jù)的分布式內(nèi)存抽象機制,具體為:對分布在集群中的數(shù)據(jù),抽象成具有業(yè)務含義的邏輯視圖,并存儲于分布式集群的內(nèi)存中。
[0020]優(yōu)選地,所述基于內(nèi)存的數(shù)據(jù)共享和管理層模塊,采用位置感知性調(diào)度機制;
[0021 ]所述位置感知性調(diào)度機制,具體為:在分布式集群中,根據(jù)存儲在全局節(jié)點中數(shù)據(jù)塊分布特征進行調(diào)度。
[0022]優(yōu)選地,所述基于內(nèi)存計算的通用執(zhí)行框架層模塊,采用分布式混合列式存儲機制;
[0023]所述分布式混合列式存儲機制,具體為:將數(shù)據(jù)以鍵值對的形式經(jīng)過序列化后存儲在內(nèi)存、SSD和磁盤中的混合存儲機制。
[0024]與現(xiàn)有技術相比,本發(fā)明具有如下的有益效果:
[0025]1、構建了海量數(shù)據(jù)存儲、高度彈性擴展、自主管理修復、無單點故障的安全可信分布式持久化存儲,對數(shù)據(jù)提供跨內(nèi)存、SSD、磁盤等復雜異構存儲設備進行透明、高效的分級存儲,解決存儲虛擬化、數(shù)據(jù)動態(tài)分布、存儲集群、異構存儲設備數(shù)據(jù)交換等問題,提升大數(shù)據(jù)存儲的支撐效能;
[0026]2、提供面向集群并發(fā)計算的內(nèi)存數(shù)據(jù)管理和共享框架,主要解決內(nèi)存分布式文件系統(tǒng)容錯問題、面向多個應用框架的內(nèi)存共享和隔離管理問題、面向多個應用框架的共享內(nèi)存數(shù)據(jù)高性能訪問問題、共享數(shù)據(jù)去冗余問題以及分布式內(nèi)存數(shù)據(jù)的回收管理問題,用以銜接底層分布式持久化存儲和上層通用分布式計算框架,提升不同處理模式間的數(shù)據(jù)共享效率和數(shù)據(jù)處理效率;
[0027]3、提供高效、按需定制的大數(shù)據(jù)多模式通用處理框架,支持批處理、實時數(shù)據(jù)流計算、實時交互式查詢分析、高效快速迭代分析能力、圖計算、復雜邏輯處理等多模式綜合化海量數(shù)據(jù)處理編程、細粒度可定制作業(yè)調(diào)度,對數(shù)據(jù)的靈活分析與深度利用提供支撐;
[0028]4、提供廣泛易用的訪問接口,支持JDBC、ODBC、JAVA/C++AP1、REST等訪問方式;
[0029]5、可優(yōu)選地引入lineage技術(允許基于數(shù)據(jù)衍生過程重建部分數(shù)據(jù)集的信息)和檢查點算法(在特定時刻將內(nèi)存數(shù)據(jù)持久化到磁盤作為檢查點,用于保存和恢復程序運行狀態(tài)的相關算法,具體包括異步檢查點算法和一致檢查點算法)實現(xiàn)共享數(shù)據(jù)容錯機制和去冗余機制,使得海量數(shù)據(jù)在分布式集群中以內(nèi)存的速度進行共享和訪問,極大地提高了分布式系統(tǒng)數(shù)據(jù)處理吞吐量,將lineage技術引入分布式內(nèi)存存儲系統(tǒng),繞開重復復制帶來的吞吐量低下的局限性,實現(xiàn)共享數(shù)據(jù)去冗余機制;
[0030]6、采用檢查點算法限定重復計算過程的范圍并解決所需資源的獲取,通過再次對任務的操作進行計算來恢復出錯或丟失的數(shù)據(jù),實現(xiàn)分布式內(nèi)存數(shù)據(jù)的容錯機制;
[0031]7、優(yōu)選地可引入“off-heap”堆外內(nèi)存技術(將對象從堆中脫離出來序列化,然后存儲在內(nèi)存中,就像存儲到磁盤上一樣但仍然在RAM中;對象在這種狀態(tài)下必須先反序列化而不能直接使用,其不受垃圾回收GC機制收集)實現(xiàn)新的內(nèi)存回收機制來避免傳統(tǒng)的JVM垃圾回收機制對堆的開銷,在分布式集群內(nèi)存中實現(xiàn)對大數(shù)據(jù)集對象的管理,提升數(shù)據(jù)共享效率和數(shù)據(jù)處理效率;
[0032]8、優(yōu)選地可引入優(yōu)化的倒排索引技術(根據(jù)屬性的值來查找記錄,而不是由記錄來確定屬性值的索引方式。索引表中每一項都包括一個屬性值和具有該屬性值的記錄地址,用于確定屬性值和存儲位置的映射關系WPElastic Search分布式全文檢索技術(基于Elasticsearch實現(xiàn)的全文分布式檢索技術,其中Elasticsearch是一個基于Lucene的搜索引起,穩(wěn)定可靠快速,具有良好的水平擴展能力,是專門為分布式環(huán)境設計的)的對分布式列式數(shù)據(jù)庫的非主鍵列和分布式內(nèi)存數(shù)據(jù)集建立索引,實現(xiàn)更加高效的基于列的數(shù)據(jù)表上建立二級索引(全局/本地索引),支持高速的數(shù)據(jù)檢索、搜索和統(tǒng)計,并支持對文本建立增量全文索引。
【附圖說明】
[0033]通過閱讀參照以下附圖對非限制性實施例所作的詳細描述,本發(fā)明的其它特征、目的和優(yōu)點將會變得更明顯:
[0034]圖1為基于內(nèi)存計算的可定制多模式大數(shù)據(jù)處理系統(tǒng)的層次組成圖。
[0035]圖2為基于內(nèi)存計算的可定制多模式大數(shù)據(jù)處理系統(tǒng)的調(diào)用關系圖。
【具體實施方式】
[0036]下面結(jié)合具體實施例對本發(fā)明進行詳細說明。以下實施例將有助于本領域的技術人員進一步理解本發(fā)明,但不以任何形式限制本發(fā)明。應當指出的是,對本領域的普通技術人員來說,在不脫離本發(fā)明構思的前提下,還可以做出若干變化和改進。這些都屬于本發(fā)明的保護范圍。
[0037]本發(fā)明提供一種基于內(nèi)存計算的可定制多模式大數(shù)據(jù)處理系統(tǒng),本發(fā)明提供批處理、實時數(shù)據(jù)流計算、實時交互式查詢分析、高效快速迭代分析能力圖計算、復雜邏輯處理等多模式綜合化海量數(shù)據(jù)處理編程支撐能力、細粒度作業(yè)調(diào)度能力,具有根據(jù)需求進行靈活定制、采用基于內(nèi)存計算的數(shù)據(jù)處理效率顯著提升等優(yōu)點。
[0038]根據(jù)本發(fā)明提供的一種基于內(nèi)存計算的可定制多模式大數(shù)據(jù)處理系統(tǒng),包括:數(shù)據(jù)存儲層模塊、基于內(nèi)存的數(shù)據(jù)共享和管理層模塊、基于內(nèi)存計算的通用執(zhí)行框架層模塊以及訪問接口層模塊;
[0039]數(shù)據(jù)存儲層模塊,用于數(shù)據(jù)存儲;
[0040]基于內(nèi)存的數(shù)據(jù)共享和管理層模塊,用于銜接數(shù)據(jù)存儲層模塊與基于內(nèi)存計算的通用執(zhí)行框架層模塊,將數(shù)據(jù)存儲層模塊存儲的數(shù)據(jù)資源載入內(nèi)存并按需共享;
[0041]基于內(nèi)存計算的通用執(zhí)行框架層模塊,用于數(shù)據(jù)處理編程;
[0042]訪問接口層模塊,用于提供數(shù)據(jù)訪問接口。
[0043]所述數(shù)據(jù)存儲層模塊包括如下任一個或任多個模塊:
[0044]分布式文件系統(tǒng)模塊,用于對數(shù)據(jù)進行存儲;
[0045]分布式數(shù)據(jù)庫模塊,用于在基于列的數(shù)據(jù)表上建立二級索引,所述二級索引包括全局索引和本地索引;
[0046]分布式消息隊列模塊,用于提供實時在線和批量離線處理數(shù)據(jù)的消息派發(fā)服務;
[0047]分布式同步系統(tǒng)模塊,用于提供高可用的分布式數(shù)據(jù)管理和系統(tǒng)協(xié)調(diào)框架,保證分布式環(huán)境中數(shù)據(jù)的強一致性。
[0048]所述基于內(nèi)存的數(shù)據(jù)共享和管理層模塊,用于從數(shù)據(jù)存儲層模塊中加載需要頻繁訪問的數(shù)據(jù),對基于工作集的任務提供抽象分布式的內(nèi)存抽象,允許在執(zhí)行多個任務時顯式地將工作集緩存在內(nèi)存中。
[0049]所述基于內(nèi)存的數(shù)據(jù)共享和管理層模塊,采用數(shù)據(jù)的分布式內(nèi)存抽象機制;
[0050]所述數(shù)據(jù)的分布式內(nèi)存抽象機制,具體為:對分布在集群中的數(shù)據(jù),抽象成具有業(yè)務含義的邏輯視圖,并存儲于分布式集群的內(nèi)存中。
[0051]所述基于內(nèi)存的數(shù)據(jù)共享和管理層模塊,采用位置感知性調(diào)度機制;
[0052]所述位置感知性調(diào)度機制,具體為:在分布式集群中,根據(jù)存儲在全局節(jié)點中數(shù)據(jù)塊分布特征進行調(diào)度。
[0053]所述基于內(nèi)存計算的通用執(zhí)行框架層模塊,采用分布式混合列式存儲機制;
[0054]所述分布式混合列式存儲機制,具體為:將數(shù)據(jù)以鍵值對的形式經(jīng)過序列化后存儲在內(nèi)存、SSD和磁盤中的混合存儲機制。
[0055]接下來對本發(fā)明進行更為詳細的描述。
[0056]本發(fā)明提供的基于內(nèi)存計算的可定制多模式大數(shù)據(jù)處理系統(tǒng),從下至上依次包括數(shù)據(jù)存儲層模塊、基于內(nèi)存的數(shù)據(jù)共享和管理層模塊、基于內(nèi)存計算的通用執(zhí)行框架層模塊以及訪問接口層模塊。
[0057]數(shù)據(jù)存儲層模塊具體包括分布式文件系統(tǒng)模塊、分布式數(shù)據(jù)庫模塊、分布式消息隊列模塊和分布式同步系統(tǒng)模塊,用于數(shù)據(jù)持久化存儲,支持多種模式的大數(shù)據(jù)處理提供存儲支撐,其中,所述持久化存儲是相較于內(nèi)存方式的瞬時數(shù)據(jù)存儲而言的,例如磁盤存儲。分布式文件系統(tǒng)模塊對海量結(jié)構化、半結(jié)構化、非結(jié)構化多種類型數(shù)據(jù)進行存儲,以達到具備高可用性、高可靠性、安全性、高效性和高擴展性等的海量數(shù)據(jù)存儲能力;分布式數(shù)據(jù)庫模塊提供面向列的、全方位的事務處理能力,通過在基于列的數(shù)據(jù)表上建立二級索引(全局/本地索引),支持高速的數(shù)據(jù)檢索、搜索和統(tǒng)計,根據(jù)索引進行低延遲檢索,支持大量用戶同時進行高并發(fā)數(shù)據(jù)插入、修改、查詢和檢索,支持對文本建立增量全文索引,并且通過全文關鍵字索引支持低延遲全文關鍵字檢索,為分布式內(nèi)存分析引擎提供高效數(shù)據(jù)掃描接口,充分利用分布式列式數(shù)據(jù)庫的內(nèi)部數(shù)據(jù)結(jié)構以及全局/輔助索引進行SQL執(zhí)行加速,可以滿足高速的聯(lián)機分析處理數(shù)據(jù)分析應用需求。
[0058]基于內(nèi)存的數(shù)據(jù)共享和管理層模塊,用以銜接底層數(shù)據(jù)存儲層模塊分布式持久化存儲和上層通用分布式計算框架,將數(shù)據(jù)存儲中的海量數(shù)據(jù)資源最大限度地載入內(nèi)存并按需共享,提升不同處理模式間的數(shù)據(jù)共享效率和數(shù)據(jù)處理效率。具體地,面向集群并發(fā)計算的所述基于內(nèi)存的數(shù)據(jù)共享和管理層模塊,從數(shù)據(jù)存儲層模塊中加載需要頻繁訪問的數(shù)據(jù),對基于工作集的任務(即多個并行操作重用中間結(jié)果的這類任務),通過內(nèi)存分布式文件系統(tǒng)容錯機制、面向多個應用框架的內(nèi)存共享和隔離管理機制、面向多個應用框架的共享內(nèi)存數(shù)據(jù)高性能訪問機制、共享數(shù)據(jù)去冗余機制以及分布式內(nèi)存數(shù)據(jù)的回收管理機制、數(shù)據(jù)的分布式內(nèi)存抽象支持自動容錯、位置感知性調(diào)度和可伸縮性,允許在執(zhí)行多個任務時顯式地將工作集緩存在內(nèi)存中,加速工作集共享和重用,提升不同處理模式間的數(shù)據(jù)共享效率和數(shù)據(jù)處理效率,其中,所述顯示地是指,將不同框架下的數(shù)據(jù)集合以統(tǒng)一對象的方式存儲在內(nèi)存中,方便各應用框架的數(shù)據(jù)共享和處理訪問。
[0059]基于內(nèi)存的分布式通用計算框架層模塊,支持批處理、實時數(shù)據(jù)流計算、實時交互式查詢分析、高效快速迭代分析、圖計算、復雜邏輯處理等多模式綜合化海量數(shù)據(jù)處理編程、細粒度可定制作業(yè)調(diào)度,對數(shù)據(jù)的靈活分析與深度利用提供支撐。具體地,所述基于內(nèi)存計算的通用執(zhí)行框架層模塊,采用跨磁盤、SSD、內(nèi)存三層架構的分布式混合列式存儲,最大限度地將數(shù)據(jù)資源載入內(nèi)存,利用內(nèi)存訪問速度優(yōu)勢,縮短數(shù)據(jù)查詢時間,減少磁盤訪問次數(shù),提供分布式內(nèi)存計算任務調(diào)度框架和分布式內(nèi)存計算任務執(zhí)行引擎,提高整體的數(shù)據(jù)查詢處理速度、數(shù)據(jù)對象容量和數(shù)據(jù)吞吐量。主要用于解決海量數(shù)據(jù)的交互式數(shù)據(jù)挖掘和迭代分析效率問題,提高任務響應性能。
[0060]訪問接口模塊提供JDBC、0DBC、AP1、REST等廣泛易用的訪問接口,便于應用編程調(diào)用。
[0061]進一步地,根據(jù)不同的模式需要定制所述系統(tǒng)中不同模塊形成不同的支撐平臺,達到實現(xiàn)需要。
[0062]實施舉例1:針對實時流計算模型的定制化平臺
[0063]為支持流計算模式,實時流轉(zhuǎn)的數(shù)據(jù),需要一個分布式的、高性能、高可靠性的消息處理和計算平臺。需要定制所述系統(tǒng)的數(shù)據(jù)存儲模塊中分布式文件系統(tǒng)、分布式實時數(shù)據(jù)庫、分布式消息隊列,基于內(nèi)存的分布式通用計算框架層模塊,以及訪問接口模塊。
[0064]本發(fā)明所述系統(tǒng)中基于內(nèi)存的通用計算框架包括實時流處理引擎,提供了強大的流計算表達能力,支持復雜的應用邏輯,生產(chǎn)系統(tǒng)的消息通過實時消息隊列進入計算集群,在集群內(nèi)以流水線方式被依次處理,完成數(shù)據(jù)轉(zhuǎn)換、特征提取、策略檢查、分析告警等復雜服務計算,最終輸出到分布式實時數(shù)據(jù)庫等存儲集群,實時生成告警頁面、實時展示頁面等。系統(tǒng)具備強擴展性、強容錯、低延遲、高吞吐等特點,成熟應用于實時數(shù)據(jù)(如傳感器數(shù)據(jù))的實時告警、風險控制、在線統(tǒng)計和挖掘等業(yè)務。
[0065]具體過程是:數(shù)據(jù)不斷的從數(shù)據(jù)源產(chǎn)生,比如在線業(yè)務數(shù)據(jù)、實時抓取的數(shù)據(jù)、從其他系統(tǒng)導入的數(shù)據(jù)等等,數(shù)據(jù)統(tǒng)一進入一個大吞吐量消息隊列系統(tǒng)。每條進入的數(shù)據(jù),都會分別流轉(zhuǎn)到流處理平臺和批處理平臺中,這兩個平臺采用不同的計算模型,同時完成對數(shù)據(jù)的計算。其中,流處理平臺會在每條數(shù)據(jù)接受到的時刻就完成相應的計算工作,并在合適的時機根據(jù)輸出的配置,將結(jié)果輸出到數(shù)據(jù)存儲模塊。而批處理平臺,會先積攢一段時間的數(shù)據(jù),然后在這些數(shù)據(jù)的基礎上運用某種算法模型,完成計算,計算結(jié)果同樣會輸出到數(shù)據(jù)存儲模塊。
[0066]實施舉例2:批處理模式的定制化平臺
[0067]批處理模式需要克服流處理不能縱觀全局數(shù)據(jù)的缺點,需要縱觀一段時期內(nèi)的數(shù)據(jù)總體,結(jié)合新老數(shù)據(jù)執(zhí)行任務。高效批處理模式需要定制本系統(tǒng)的數(shù)據(jù)存儲模塊中分布式文件系統(tǒng)、分布式實時數(shù)據(jù)庫、分布式消息隊列,面向集群并發(fā)計算的內(nèi)存數(shù)據(jù)共享和管理層模塊,基于內(nèi)存的分布式通用計算框架層模塊,以及訪問接口模塊。
[0068]具體過程是:數(shù)據(jù)不斷的從數(shù)據(jù)源產(chǎn)生,比如在線業(yè)務數(shù)據(jù)、實時抓取的數(shù)據(jù)、從其他系統(tǒng)導入的數(shù)據(jù)等等,數(shù)據(jù)統(tǒng)一進入一個大吞吐量消息隊列系統(tǒng)。每條進入的數(shù)據(jù),都會流轉(zhuǎn)到批處理平臺中,經(jīng)過一段時間的數(shù)據(jù)積累,然后在這些數(shù)據(jù)的基礎上運用某種算法模型,完成計算,計算結(jié)果同樣會輸出到數(shù)據(jù)存儲模塊。
[0069I本發(fā)明的特點包括:
[0070]I)在一個通用的大數(shù)據(jù)處理框架內(nèi),提供基于內(nèi)存計算的流數(shù)據(jù)實時分析、數(shù)據(jù)批量處理、圖計算、交互式查詢、迭代分析等多種模式的數(shù)據(jù)處理功能;
[0071]2)通過提供一個高效的面向集群并發(fā)計算的內(nèi)存數(shù)據(jù)共享和管理框架,允許文件以內(nèi)存的速度在集群框架下進行可靠的共享,并讓不同的作業(yè)以及框架都能以內(nèi)存的速度進行文件緩存和數(shù)據(jù)共享,可以減少哪些需要經(jīng)常使用數(shù)據(jù)集通過訪問磁盤來獲得的次數(shù),支持不同處理模式間的數(shù)據(jù)共享,使得可以在集群里以訪問內(nèi)存的速度來訪問數(shù)據(jù),使得整個系統(tǒng)的數(shù)據(jù)吞吐率提升數(shù)百倍;
[0072]3)在統(tǒng)一系統(tǒng)平臺下支持多模式計算集群,通過分布式集群資源配置和調(diào)度管理建立統(tǒng)一分布式數(shù)據(jù)集,動態(tài)創(chuàng)建交互式分析集群、批處理集群以及實時流處理集群等多種不同模式的數(shù)據(jù)集群,提供資源配額管理、動態(tài)資源調(diào)配、資源共享的能力,進而通過數(shù)據(jù)共享和管理框架實現(xiàn)不同模式間的高效共享和處理;
[0073]4)廣泛的訪問接口,提供JDBC、0DBC、AP1、REST多種訪問方式,在多種情況下使用。
[0074]本領域技術人員知道,除了以純計算機可讀程序代碼方式實現(xiàn)本發(fā)明提供的系統(tǒng)及其各個裝置以外,完全可以通過將方法步驟進行邏輯編程來使得本發(fā)明提供的系統(tǒng)及其各個裝置以邏輯門、開關、專用集成電路、可編程邏輯控制器以及嵌入式微控制器等的形式來實現(xiàn)相同功能。所以,本發(fā)明提供的系統(tǒng)及其各項裝置可以被認為是一種硬件部件,而對其內(nèi)包括的用于實現(xiàn)各種功能的裝置也可以視為硬件部件內(nèi)的結(jié)構;也可以將用于實現(xiàn)各種功能的裝置視為既可以是實現(xiàn)方法的軟件模塊又可以是硬件部件內(nèi)的結(jié)構。
[0075]以上對本發(fā)明的具體實施例進行了描述。需要理解的是,本發(fā)明并不局限于上述特定實施方式,本領域技術人員可以在權利要求的范圍內(nèi)做出各種變化或修改,這并不影響本發(fā)明的實質(zhì)內(nèi)容。在不沖突的情況下,本申請的實施例和實施例中的特征可以任意相互組合。
【主權項】
1.一種基于內(nèi)存計算的可定制多模式大數(shù)據(jù)處理系統(tǒng),其特征在于,包括:數(shù)據(jù)存儲層模塊、基于內(nèi)存的數(shù)據(jù)共享和管理層模塊、基于內(nèi)存計算的通用執(zhí)行框架層模塊以及訪問接口層模塊; 數(shù)據(jù)存儲層模塊,用于數(shù)據(jù)存儲; 基于內(nèi)存的數(shù)據(jù)共享和管理層模塊,用于銜接數(shù)據(jù)存儲層模塊與基于內(nèi)存計算的通用執(zhí)行框架層模塊,將數(shù)據(jù)存儲層模塊存儲的數(shù)據(jù)資源載入內(nèi)存并按需共享; 基于內(nèi)存計算的通用執(zhí)行框架層模塊,用于數(shù)據(jù)處理編程; 訪問接口層模塊,用于提供數(shù)據(jù)訪問接口。2.根據(jù)權利要求1所述的基于內(nèi)存計算的可定制多模式大數(shù)據(jù)處理系統(tǒng),其特征在于,所述數(shù)據(jù)存儲層模塊包括如下任一個或任多個模塊: 分布式文件系統(tǒng)模塊,用于對數(shù)據(jù)進行存儲; 分布式數(shù)據(jù)庫模塊,用于在基于列的數(shù)據(jù)表上建立二級索引,所述二級索引包括全局索引和本地索引; 分布式消息隊列模塊,用于提供實時在線和批量離線處理數(shù)據(jù)的消息派發(fā)服務; 分布式同步系統(tǒng)模塊,用于提供高可用的分布式數(shù)據(jù)管理和系統(tǒng)協(xié)調(diào)框架,保證分布式環(huán)境中數(shù)據(jù)的強一致性。3.根據(jù)權利要求1所述的基于內(nèi)存計算的可定制多模式大數(shù)據(jù)處理系統(tǒng),其特征在于,所述基于內(nèi)存的數(shù)據(jù)共享和管理層模塊,用于從數(shù)據(jù)存儲層模塊中加載需要頻繁訪問的數(shù)據(jù),對基于工作集的任務提供抽象分布式的內(nèi)存抽象,允許在執(zhí)行多個任務時顯式地將工作集緩存在內(nèi)存中。4.根據(jù)權利要求1所述的基于內(nèi)存計算的可定制多模式大數(shù)據(jù)處理系統(tǒng),其特征在于,所述基于內(nèi)存的數(shù)據(jù)共享和管理層模塊,采用數(shù)據(jù)的分布式內(nèi)存抽象機制; 所述數(shù)據(jù)的分布式內(nèi)存抽象機制,具體為:對分布在集群中的數(shù)據(jù),抽象成具有業(yè)務含義的邏輯視圖,并存儲于分布式集群的內(nèi)存中。5.根據(jù)權利要求1所述的基于內(nèi)存計算的可定制多模式大數(shù)據(jù)處理系統(tǒng),其特征在于,所述基于內(nèi)存的數(shù)據(jù)共享和管理層模塊,采用位置感知性調(diào)度機制; 所述位置感知性調(diào)度機制,具體為:在分布式集群中,根據(jù)存儲在全局節(jié)點中數(shù)據(jù)塊分布特征進行調(diào)度。6.根據(jù)權利要求1所述的基于內(nèi)存計算的可定制多模式大數(shù)據(jù)處理系統(tǒng),其特征在于,所述基于內(nèi)存計算的通用執(zhí)行框架層模塊,采用分布式混合列式存儲機制; 所述分布式混合列式存儲機制,具體為:將數(shù)據(jù)以鍵值對的形式經(jīng)過序列化后存儲在內(nèi)存、SSD和磁盤中的混合存儲機制。
【文檔編號】G06F17/30GK106021484SQ201610333546
【公開日】2016年10月12日
【申請日】2016年5月18日
【發(fā)明人】馮偉, 王金華
【申請人】中國電子科技集團公司第三十二研究所