本發(fā)明涉及容器技術(shù)領(lǐng)域,具體為一種基于容器技術(shù)的數(shù)據(jù)采集和處理系統(tǒng)。
背景技術(shù):
Linux容器作為一類操作系統(tǒng)層面的虛擬化技術(shù)成果,旨在立足于單一Linux主機交付多套隔離性Linux環(huán)境。與虛擬機不同,容器系統(tǒng)并不需要運行特定的訪客操作系統(tǒng)。相反,容器共享同一套主機操作系統(tǒng)內(nèi)核,同時利用訪客操作系統(tǒng)的系統(tǒng)庫以交付必要的系統(tǒng)功能。由于無需借助于專門的操作系統(tǒng),因此容器在啟動速度上要遠遠優(yōu)于虛擬機,容器能夠利用Namespaces、Apparmor、SELinux配置、chroot以及CGroups等Linux內(nèi)核功能,從而交付一套類似于虛擬機的隔離性環(huán)境。Linux安全模塊能夠確保來自容器的主機設(shè)備與內(nèi)核訪問行為受到妥善管理,從而避免入侵活動的發(fā)生。除此之外,容器還能夠通過其主機操作系統(tǒng)運行多種不同Linux發(fā)行版——只要各類操作系統(tǒng)擁有同樣的底層CPU架構(gòu)要求??傮w而言,容器技術(shù)提供了一種立足于各類Linux發(fā)行版的容器鏡像創(chuàng)建方式,同時利用API進行容器生命周期管理,通過客戶端工具實現(xiàn)與該API的交互,進而提供快照以及不同容器主機之間容器實例遷移等能力,在Linux容器技術(shù)持續(xù)發(fā)展的情況下,容器技術(shù)由于系統(tǒng)消耗開銷小,應(yīng)用隔離性好,調(diào)度方便,部署簡易,更新簡單等特點,正在得到越來越大規(guī)模的使用。
在傳統(tǒng)的數(shù)據(jù)采集和分析系統(tǒng)中,由于數(shù)據(jù)分析方法的不確定性,存在隨時可能變更和對計算依賴大的問題,因此通常做法是進行數(shù)據(jù)采集后,先進行存儲,然后再進行計算分析。
在進行計算分析時,對相同數(shù)據(jù)也可能存在多種不同的分析計算方法,得出不同的結(jié)果或進行不同的后續(xù)操作,同時由于方法的多變,隨時可能更新計算方法或添加更多新的計算方法,現(xiàn)有的基于容器技術(shù)的數(shù)據(jù)采集和處理系統(tǒng)并不能很好的應(yīng)對這些變化,造成數(shù)據(jù)處理緩慢。
技術(shù)實現(xiàn)要素:
本發(fā)明要解決的技術(shù)問題是克服現(xiàn)有的缺陷,提供一種基于容器技術(shù)的數(shù)據(jù)采集和處理系統(tǒng),數(shù)據(jù)處理模塊可以進行接收數(shù)據(jù)的實時處理,可以將數(shù)據(jù)處理模塊與數(shù)據(jù)采集模塊部署在一起,實現(xiàn)了多種數(shù)據(jù)處理方式的同時部署,同時在數(shù)據(jù)處理方式變更的情況下,可以很容易的進行更新,各個數(shù)據(jù)處理模塊隔離,互相不會干擾和影響,每個模塊可以專注與自身的處理過程,數(shù)據(jù)處理效率高,可以有效解決背景技術(shù)中的問題。
為實現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案:一種基于容器技術(shù)的數(shù)據(jù)采集和處理系統(tǒng),包括數(shù)據(jù)采集模塊、數(shù)據(jù)傳遞模塊、包裝有數(shù)據(jù)處理模塊的Linux容器、容器管理調(diào)度平臺, 其中,數(shù)據(jù)采集模塊為傳統(tǒng)數(shù)據(jù)采集系統(tǒng)中的采集模塊,數(shù)據(jù)采集模塊將采集到的數(shù)據(jù)發(fā)送給數(shù)據(jù)傳遞模塊,數(shù)據(jù)傳遞模塊負責(zé)數(shù)據(jù)的分發(fā),通過發(fā)現(xiàn)模塊從容器管理調(diào)度平臺上獲取到Linux容器信息,然后將數(shù)據(jù)分別分發(fā)給每個可用的Linux容器,Linux容器負責(zé)接收數(shù)據(jù),并處理數(shù)據(jù)和后續(xù)操作,容器管理調(diào)度平臺負責(zé)啟動、停止、更新等調(diào)度Linux容器。
作為本發(fā)明的一種優(yōu)選技術(shù)方案,用戶需要新增數(shù)據(jù)處理應(yīng)用時,容器管理調(diào)度平臺啟動新應(yīng)用,并更新應(yīng)用記錄,用戶需要刪除數(shù)據(jù)處理應(yīng)用時,容器管理調(diào)度平臺刪除應(yīng)用,并更新應(yīng)用記錄,用戶需要更新數(shù)據(jù)處理應(yīng)用時,容器管理調(diào)度平臺啟動新應(yīng)用,刪除舊應(yīng)用,并更新應(yīng)用記錄。
作為本發(fā)明的一種優(yōu)選技術(shù)方案,數(shù)據(jù)傳遞模塊不斷讀取容器管理調(diào)度平臺的應(yīng)用記錄,在數(shù)據(jù)無更新的情況下,等待一段時間后再次進行讀取,在有數(shù)據(jù)更新的情況下,根據(jù)更新,開啟新的數(shù)據(jù)傳輸通道到新的應(yīng)用上。
作為本發(fā)明的一種優(yōu)選技術(shù)方案,所述Linux容器不少于三個,數(shù)據(jù)處理模塊包裝在Linux容器內(nèi),稱其為數(shù)據(jù)處理應(yīng)用。
作為本發(fā)明的一種優(yōu)選技術(shù)方案,數(shù)據(jù)傳遞模塊包括數(shù)據(jù)壓縮處理器,所述數(shù)據(jù)壓縮處理器由信號變換模塊、A/D轉(zhuǎn)換模塊、高速緩存模塊、數(shù)據(jù)壓縮模塊、數(shù)據(jù)分包模塊和數(shù)據(jù)存儲模塊組成,其中,信號變換模塊,對數(shù)據(jù)采集模塊采集的數(shù)據(jù)信號進行抬升和限幅;A/D轉(zhuǎn)換模塊,與所述信號變換模塊連接,把采集到的數(shù)據(jù)信號轉(zhuǎn)換成數(shù)字量信號;高速緩存模塊,與所述A/D轉(zhuǎn)換模塊連接,對完成A/D轉(zhuǎn)換的數(shù)據(jù)進行高速緩存;數(shù)據(jù)壓縮模塊,與所述高速緩存模塊連接,對高速緩存模塊中的數(shù)據(jù)進行壓縮處理;數(shù)據(jù)分包模塊,與所述數(shù)據(jù)壓縮模塊連接,將壓縮后的數(shù)據(jù)進行分包處理;數(shù)據(jù)存儲模塊,與所述數(shù)據(jù)分包模塊連接,并且對數(shù)據(jù)信號存儲。
與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:本基于容器技術(shù)的數(shù)據(jù)采集和處理系統(tǒng),第一,數(shù)據(jù)處理模塊可以進行接收數(shù)據(jù)的實時處理,可以將數(shù)據(jù)處理模塊與數(shù)據(jù)采集模塊部署在一起;第二,可以通過添加,刪除,更新容器,來隨意的增加,移除和更新數(shù)據(jù)處理模塊,實現(xiàn)了多種數(shù)據(jù)處理方式的同時部署,同時在數(shù)據(jù)處理方式變更的情況下,可以很容易的進行更新;第三,各個數(shù)據(jù)處理模塊隔離,互相不會干擾和影響,每個模塊可以專注與自身的處理過程。整個系統(tǒng)數(shù)據(jù)處理有條理,處理效率高。
附圖說明
圖1為本發(fā)明框架結(jié)構(gòu)示意圖;
圖2為本發(fā)明用戶控制和數(shù)據(jù)傳遞流程圖;
圖3為本發(fā)明數(shù)據(jù)傳遞模塊示意圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
請參閱圖1-3,本發(fā)明提供一種技術(shù)方案:一種基于容器技術(shù)的數(shù)據(jù)采集和處理系統(tǒng),包括數(shù)據(jù)采集模塊、數(shù)據(jù)傳遞模塊、包裝有數(shù)據(jù)處理模塊的Linux容器、容器管理調(diào)度平臺, 其中,數(shù)據(jù)采集模塊為傳統(tǒng)數(shù)據(jù)采集系統(tǒng)中的采集模塊,數(shù)據(jù)采集模塊將采集到的數(shù)據(jù)發(fā)送給數(shù)據(jù)傳遞模塊,數(shù)據(jù)傳遞模塊包括數(shù)據(jù)壓縮處理器,所述數(shù)據(jù)壓縮處理器由信號變換模塊、A/D轉(zhuǎn)換模塊、高速緩存模塊、數(shù)據(jù)壓縮模塊、數(shù)據(jù)分包模塊和數(shù)據(jù)存儲模塊組成,其中,信號變換模塊,對數(shù)據(jù)采集模塊采集的數(shù)據(jù)信號進行抬升和限幅;A/D轉(zhuǎn)換模塊,與所述信號變換模塊連接,把采集到的數(shù)據(jù)信號轉(zhuǎn)換成數(shù)字量信號;高速緩存模塊,與所述A/D轉(zhuǎn)換模塊連接,對完成A/D轉(zhuǎn)換的數(shù)據(jù)進行高速緩存;數(shù)據(jù)壓縮模塊,與所述高速緩存模塊連接,對高速緩存模塊中的數(shù)據(jù)進行壓縮處理;數(shù)據(jù)分包模塊,與所述數(shù)據(jù)壓縮模塊連接,將壓縮后的數(shù)據(jù)進行分包處理;數(shù)據(jù)存儲模塊,與所述數(shù)據(jù)分包模塊連接,并且對數(shù)據(jù)信號存儲,數(shù)據(jù)傳遞模塊負責(zé)數(shù)據(jù)的分發(fā),通過發(fā)現(xiàn)模塊從容器管理調(diào)度平臺上獲取到Linux容器信息,然后將數(shù)據(jù)分別分發(fā)給每個可用的Linux容器,Linux容器不少于三個,Linux容器負責(zé)接收數(shù)據(jù),并處理數(shù)據(jù)和后續(xù)操作,容器管理調(diào)度平臺負責(zé)啟動、停止、更新等調(diào)度Linux容器,系統(tǒng)由數(shù)據(jù)采集模塊,數(shù)據(jù)傳遞模塊,運行與Linux容器中的數(shù)據(jù)處理模塊和容器管理調(diào)度平臺組成,數(shù)據(jù)采集模塊負責(zé)采集數(shù)據(jù),并將采集到的數(shù)據(jù)發(fā)送給數(shù)據(jù)傳遞模塊,通過將傳統(tǒng)的數(shù)據(jù)處理模塊包裝在Linux容器內(nèi),稱其為數(shù)據(jù)處理應(yīng)用,數(shù)據(jù)傳遞模塊拿到數(shù)據(jù)后,通過讀取容器管理調(diào)度平臺內(nèi)的記錄,發(fā)現(xiàn)有若干數(shù)據(jù)處理應(yīng)用,則將數(shù)據(jù)分別發(fā)送給數(shù)據(jù)處理應(yīng)用,進行數(shù)據(jù)處理,不同的數(shù)據(jù)處理應(yīng)用,可以進行不同的數(shù)據(jù)處理操作,例如存儲,分析,告警,數(shù)據(jù)存儲應(yīng)用受到容器管理調(diào)度平臺的調(diào)度和控制,通過容器管理調(diào)度平臺,用戶可以隨意的增加,運行,停止,刪除,更新數(shù)據(jù)處理應(yīng)用,用戶通過容器管理調(diào)度平臺進行操作后,容器管理調(diào)度平臺更新本身記錄的容器相關(guān)信息,數(shù)據(jù)處理模塊通過讀取更新后的容器信息,將數(shù)據(jù)傳遞到相應(yīng)的數(shù)據(jù)處理應(yīng)用中,數(shù)據(jù)處理模塊可以進行接收數(shù)據(jù)的實時處理,可以將數(shù)據(jù)處理模塊與數(shù)據(jù)采集模塊部署在一起。
用戶需要新增數(shù)據(jù)處理應(yīng)用時,容器管理調(diào)度平臺啟動新應(yīng)用,并更新應(yīng)用記錄,用戶需要刪除數(shù)據(jù)處理應(yīng)用時,容器管理調(diào)度平臺刪除應(yīng)用,并更新應(yīng)用記錄,用戶需要更新數(shù)據(jù)處理應(yīng)用時,容器管理調(diào)度平臺啟動新應(yīng)用,刪除舊應(yīng)用,并更新應(yīng)用記錄,數(shù)據(jù)傳遞模塊不斷讀取容器管理調(diào)度平臺的應(yīng)用記錄,在數(shù)據(jù)無更新的情況下,等待一段時間后再次進行讀取,在有數(shù)據(jù)更新的情況下,根據(jù)更新,開啟新的數(shù)據(jù)傳輸通道到新的應(yīng)用上,可以通過添加,刪除,更新容器,來隨意的增加,移除和更新數(shù)據(jù)處理模塊,實現(xiàn)了多種數(shù)據(jù)處理方式的同時部署,同時在數(shù)據(jù)處理方式變更的情況下,可以很容易的進行更新,各個數(shù)據(jù)處理模塊隔離,互相不會干擾和影響,每個模塊可以專注與自身的處理過程。整個系統(tǒng)數(shù)據(jù)處理有條理,處理效率高。
本基于容器技術(shù)的數(shù)據(jù)采集和處理系統(tǒng),第一,數(shù)據(jù)處理模塊可以進行接收數(shù)據(jù)的實時處理,可以將數(shù)據(jù)處理模塊與數(shù)據(jù)采集模塊部署在一起;第二,可以通過添加,刪除,更新容器,來隨意的增加,移除和更新數(shù)據(jù)處理模塊,實現(xiàn)了多種數(shù)據(jù)處理方式的同時部署,同時在數(shù)據(jù)處理方式變更的情況下,可以很容易的進行更新;第三,各個數(shù)據(jù)處理模塊隔離,互相不會干擾和影響,每個模塊可以專注與自身的處理過程。整個系統(tǒng)數(shù)據(jù)處理有條理,處理效率高。
盡管已經(jīng)示出和描述了本發(fā)明的實施例,對于本領(lǐng)域的普通技術(shù)人員而言,可以理解在不脫離本發(fā)明的原理和精神的情況下可以對這些實施例進行多種變化、修改、替換和變型,本發(fā)明的范圍由所附權(quán)利要求及其等同物限定。