摘 要: 設計云計算平臺下的大數據分流系統,實現優(yōu)化數據聚類和模式識別。傳統的云計算平臺下的大數據分流系統采用的是開源碼Linux嵌入式系統設計方法,分流系統通過耦合線圈連接到云計算平臺的交換機中,導致分流系統中的數據出現漏分和錯分。提出基于功能子程序動態(tài)加載和TinyOS優(yōu)先級調度的云計算平臺下大數據分流系統優(yōu)化設計方法。設計的云計算平臺下大數據分流模塊主要包括控制器模塊、電源管理模塊、數據存儲器模塊、傳輸通信模塊、以太網模塊和顯示模塊。采用TinyOS優(yōu)先級調度方法進行大數據信息流的特征采集和調度,得到大數據分流系統主控制器的芯片接口電路圖和串口通信電路圖。選用MBM29LV400BC作為片選和讀、寫信號的地址線,將大數據從12位的A/D結果轉換成16位,最后在Linux操作系統中采用功能子程序動態(tài)加載方法進行系統的軟件開發(fā),實現系統優(yōu)化設計。仿真結果表明,采用該系統能有效實現對云計算平臺中的大數據分流,準確度高,性能優(yōu)越。
關鍵詞: 云計算; 大數據分流系統; TinyOS; 優(yōu)先級調度
中圖分類號: TN915?34; TP391.9 文獻標識碼: A 文章編號: 1004?373X(2016)02?0028?05
Design and optimization of large data streaming system based on
cloud computing platform
JIANG Mingyue
(Jilin Institute of Chemical Technology, Jilin 132022, China)
Abstract: The large data streaming system based on cloud computing platform is design to realize optimization of data clustering and pattern recognition. The optimization design method of big data streaming system with dynamic loading based on function subroutine and TinyOS priority scheduling is proposed, which is based on cloud computing platform. The designed big data streaming module based on cloud computing platform mainly includes controller module, power management module, data storage unit module, communication module, Ethernet module and display module. TinyOS priority scheduling method is used to collect the large data stream characteristics and dispatch the large data stream, so as to get chip interface circuit diagram and serial communication circuit diagram of big data streaming system’s master controller. MBM29LV400BC is chosen as the address line of the chip selection and read?write signals to convert the big data from 12?bit A/D result to 16?bit one. The function subroutine dynamic loading method is adopted in the Linux operating system to develop the system software and realize optimization design of the system. The simulation results show that this system can effectively realize the large data distribution with high accuracy and superior performance.
Key words: cloud computing; big data streaming system; TinyOS; priority scheduling
0 引 言
云計算是信息革命的重要產物,通過云計算和云存儲,實現對海量大數據的協同管理和調度,當前云計算信息系統廣泛應用在大數據信息資源調度和分配中。由于云計算采用的是分布式計算的方法,可以通過傳感節(jié)點進行原始數據采集和數據的無線傳輸,在云計算平臺下,通過連接傳感器網絡與其他網絡構成一個龐大數據信息庫。通過云計算將海量的網絡資源數據融合到一個資源數據池中,實現及時、快速、精確地計算和數據調度。在云計算環(huán)境下,由于數據的來源和數據的服務用途具有巨大的差異性,而且云計算接口和通信協議存在很大的差別,導致云計算中的大數據具有不同的屬性,在云計算環(huán)境下,計算資源、存儲資源與軟件資源的來源具有多重屬性,形成多源信息資源的云計算和云存儲,需要對云計算環(huán)境下的多源大數據進行分流處理,提高數據聚類的準確性,為實現模式識別提供基礎[1]。
云計算平臺下的大數據分流系統節(jié)點數目眾多,節(jié)點受環(huán)境的限制,各層協議設計需要考慮大數據信息流的內部特征,進行大數據的信息特征提取,設計的大數據分流系統具有數據傳感、信號處理和無線通信等能力,實現了對大數據信息進行分流操作,數據采集和特征存儲的目的[2]。傳統方法中,云計算平臺下的大數據分流方法主要采用的是基于K?means聚類算法的大數據分流系統設計方法,基于模糊C均值的大數據分流系統設計方法和基于粒子群分割聚類方法進行云計算平臺大數據分流系統設計[3?5];但是,這些方法進行大數據分流過程中,容易導致數據的漏分和錯分。對此,相關文獻進行了系統的改進設計。文獻[6]提出一種基于K均值聚類云計算平臺下大數據分流系統模型,對群體中的個體數據進行遍歷歷經,增大覆蓋的監(jiān)測區(qū)域,提高數據的分流性能,但是系統設計中需要進行資源高維配置和拓撲控制,導致分流過程中計算量大,增大了系統的計算開銷;文獻[7]提出一種基于多跳節(jié)點隨機分配的云計算平臺下大數據分流模型,構建以數據為中心的網絡,并應用于目標跟蹤的傳感器模型中,實現數據分類和模式識別,將系統功能模塊化處理,提高了分流性能,但是該系統需要使用上下文轉換來支持并操作,導致系統的中斷時間過程容易產生分流誤差;文獻[8]中提出的云計算平臺下大數據分流系統采用的放源碼的Linux嵌入式系統設計方法,分流系統通過耦合線圈連接到云計算平臺的交換機中,導致分流系統中的數據出現漏分和錯分。
針對上述問題,本文提出基于功能子程序動態(tài)加載和TinyOS優(yōu)先級調度的云計算平臺下大數據分流系統優(yōu)化設計方法。首先進行云計算平臺下的大數據分流系統的總體模型構建,進行大數據分流的TinyOS操作系統體系結構設計;然后采用 S3C2440作為系統控制核心進行分流系統的硬件結構設計;最后在Linux操作系統中采用功能子程序動態(tài)加載方法進行系統的軟件開發(fā)。仿真實驗進行了性能驗證,展示了本文設計的大數據分流系統的優(yōu)越性能。
1 云計算平臺下大數據分流系統的總體設計和
功能模塊分析
1.1 云計算平臺下大數據分流系統的總體設計
在云計算平臺下進行大數據分流是提高云計算的并行計算能力,實現數據聚類和模式識別的基礎?;谠朴嬎闫脚_進行的大數據分流系統是通過對多源信息資源進行特征提取和數據分區(qū),實現對云計算平臺下的大數據采集、處理、發(fā)布。
大數據分流系統是實現云計算平臺下的多源信息資源整合的基礎設施,云計算信息系統作為一種開源的框架,通過對云計算平臺下大數據分流,可以實現數據的無線收發(fā)和數據聚類。本文設計的云計算平臺下的大數據分流系統具有擴展性、穩(wěn)定可靠性和開放性等特點。擴展性是指云計算平臺下大數據分流時是開源的,所以其面向的對象非常廣泛,通過大數據分流發(fā)送和接收通知上層的射頻字節(jié),實現數據串口通信和無線收發(fā);可靠性是指在云計算大數據信息分流系統采用了分布式的處理方法,當其中的一臺或者幾臺設備出現故障時,可以通知高層次的主動消息組件進行替代性工作,包括后級的數據采集與處理系統都具有擴展性和開放性。本文設計的云計算平臺下大數據分流系統的總體模型如圖1所示。
圖1 云計算平臺下大數據分流系統的總體模型
在上述系統總體模型設計的基礎上,進行系統的網絡設計。云計算平臺下大數據分流系統采用分布式加權自組網的形式,網絡中的簇內節(jié)點在每輪向其相應的簇頭發(fā)送的數據長度時,產生能量消耗,采用ZigBee通信技術進行CDMA模塊設計。當分流系統的數據分發(fā)節(jié)點競選為簇頭時,置[ru]為0,傳輸距離大于或等于閾值d0時,節(jié)點的剩余能量逐漸減少,功率放大器采用多路徑衰減信道傳輸模型,此時的能耗系數是[εmp],G是在最近的[1P]輪未當選候選簇頭的節(jié)點集合,在分布式加權自組網網絡中,使用32位ARM處理器和嵌入式網關進行數據通信,節(jié)點發(fā)送l b數據所消耗超過了承載能力,需要在mach?mini2440.c中把其中的16 934 400進行處理,在密集信道中產生間隙性混疊頻段的功耗,Linux的內核在編譯后即可下載到目標板運行,實現數據分流,數據分流的算法實現過程描述為:
Make menuconfig進行內核的配置讀入新的子簇[SubCi],[SubCi∈Cj,j∈[1,k]];
While ([SubCi]不為空)
根據[CFΔi]計算[SubCi]與所有云計算平臺的數據分流簇[Cj]的中心[CenCj]的距離,確定最小距離[dist(SubCk,CenCl),l∈[1,k]];
While(數據聚類的中心點發(fā)生改變)
選擇Sound card supprt,將云計算大數據的聚類中心[SubCi]加入到[Cl]中,[SubCi][∈][Cl];
[i←i+1];
讀入新的數據聚類向量[SubCi],[SubCi?Cl],[j∈[1,k]];運行:
mkdir ?p /var/lock
mkdir ?p /var/run
mkdir ?p /var/tmp
計算所有數據分流簇[Cj]中代表簇中心的子簇[CenCj],生成的根文件系統,使得[Cj]中各子簇到其相應的簇中心[CenCj]的系統傳遞函數最小。由此實現數據分流。
1.2 系統的功能模塊設計
本文設計的云計算平臺下大數據分流模塊主要包括了控制器模塊、電源管理模塊、數據存儲器模塊、傳輸通信模塊、以太網模塊和顯示模塊?,F根據上述數據分流系統的總體設計和數據分流系統設計,采用TinyOS優(yōu)先級調度方法進行大數據信息流的特征采集和調度,讀取大數據的特征采樣值,并在DSP中進行數字FIR濾波,通過PCI總線送采樣數據或處理結果到PC機,實現數據分流,然后輸出動態(tài)增益控制碼到功放管和變壓器,進行DSP信息處理,大數據分流處理過程如圖2所示。
圖2 大數據分流處理過程
其中,主控制器是整個嵌入式網關的核心,采用韓國三星公司生產的以32位的 RISC ARM920T 為內核網絡微控制器,以ARM920T為核心的32位的RISC微處理器設計大數據分流系統的主控制器,采用TSXM,TSYM,TSXP,TSYP作為四線觸摸屏接口控制信號,實現斷執(zhí)行程序采集,主控器的芯片接口電路設計如圖3所示。
圖3 大數據分流系統主控制器的芯片接口圖
電源控制模塊是為云計算平臺下的大數據分流系統提供電源供電,采用ARM處理器進行電源控制模塊設計。供電電壓為DC 3.3 V和1.25 V,采用DC 5 V作為電路板總體供電電源,在LM1117芯片兩端都加上0.1 μF和100 μF的電容進行電源的FIR濾波。系統的電源能控制模塊電路設計如圖4所示。
圖4 系統的電源能控制模塊電路
在數據存儲器模塊設計中采用擴展1片128 MB的FLASH芯片和2片SDRAM芯片HY57V561620并聯的形式,以滿足ARM的數據存儲需求,并調入SDRAM中進行使用,由于不需要外擴設備,所以僅僅只用USB的設備控制端口,通過RS 232進行Linux終端控制,實現大數據的分流云存儲,大數據分流系統的數據存儲功能模塊設計硬件電路如圖5所示。通過TinyOS優(yōu)先級調度,每個端口都可以在中斷模式或DMA模式下工作,提高數據分流性能。
圖5 大數據分流系統的數據存儲功能模塊
2 大數據分流系統軟硬件設計關鍵技術實現
2.1 云計算平臺下的大數據分流系統硬件設計關鍵技術
在上述功能模塊設計的基礎上,本文針對傳統的云計算平臺下大數據分流系統采用的放源碼Linux嵌入式系統設計方法,分流系統通過耦合線圈連接到云計算平臺的交換機中,導致分流系統中的數據出現漏分和錯分的問題,本文進行系統的改進設計。這里提出一種基于功能子程序動態(tài)加載和TinyOS優(yōu)先級調度的云計算平臺下大數據分流系統優(yōu)化設計方法。
其設計步驟如下,對上述設計的控制器模塊、電源管理模塊、數據存儲器模塊進行集成設計,并采用DM9000 網卡芯片進行系統的傳輸通信模塊、以太網模塊和顯示模塊的設計,選擇一個10/100M自適應的PHY和4 KB DWORD值的SRAM進行網關設計,網絡接口使用RJ45 連接頭,調試系統時需要使用Linux下的NFS文件系統,即內核放入系統中,獲得合適的220 V標準交流電,通過兩個DC?DC電源轉換模塊分別將12 V電壓轉換為5 V和±15 V電源,對S3C2440A芯片、FLASH芯片、SDRAM芯片等進行供電。用DSP單獨構成一個數據分流系統的特征處理器,實現對大數據分流系統的串口設計,串口電路如圖6所示。結合圖6,通過(R/X) PHASE設置接收大數據分流信息的同步脈沖,按照DSP串口0的引腳引出15針插座到數據分流信息系統的三個通道BCLKX0,BDX0和BFSX0中,當系統要求高的數據聚類性能時,采用5409A串口通信方法發(fā)送采樣值,利用雙端口的64 K Word空間,選用MBM29LV400BC作為片選和讀、寫信號的地址線,數據分流系統的FLASH與DSP控制器的連線圖如圖7所示。通過上述設計實現云計算平臺下的大數據分流系統的硬件設計,通過數據分流,將大數據從12位的A/D結果轉換成16位,采用±10 V的雙極性輸入,實現對云計算平臺下的大數據分流系統設計。
圖6 大數據分流系統的串口設計
圖7 FLASH與DSP控制器的連線圖
2.2 系統軟件開發(fā)
在上述硬件平臺設計的基礎上,在Linux操作系統中采用功能子程序動態(tài)加載方法進行系統的軟件開發(fā),采用CrossBow公司的telosB無線模塊構建網絡協調器實現大數據分流節(jié)點數據的動態(tài)組網與數據傳輸,軟件開發(fā)平臺采用開放源碼的Linux操作系統。目標板與宿主機通常使用232串口、網線、USB線連接,在Linux中使用GCC編譯器編譯出的二進制代碼,使用Linux?2.6.32.2 的缺省目標平臺成為ARM 的平臺,修改總目錄下的Makefile。
原文件中的數據傳輸協議為:
export KBUILD_BUILDHOST := $(SUBARCH)
ARCH ?= $(SUBARCH)
CROSS_COMPILE ?=
改為:
export KBUILD_BUILDHOST := $(SUBARCH)
ARCH ?= arm
CROSS_COMPILE ?= arm?linux?
在大數據分流系統設計中,為了達到減小系統開支的目的,增強系統的穩(wěn)定性,基于功能子程序動態(tài)加載和TinyOS優(yōu)先級調度,在文件MinePressureCollectionC.nc里面完成FLASH存儲器初始化操作,軟件的接口程序描述為:
interface Timer
interface Read
interface ReadStream
//Read pressure sensor′s data
interface Leds; //Indication
interface Boot;
在上面的程序片段中,DisseminationControl為一個廣播協議,LowPowerListening可以設置傳感器節(jié)點的占空比,以節(jié)省功耗,由此實現對云計算平臺下的大數據分流系統數據采集和分流調度。
3 仿真實驗與結果分析
為了測試本文設計系統的性能,進行了仿真實驗。試驗平臺為通用PC機,CPU為Intel? CoreTM i7?2600@3.40 GHz,內存為4×4 GB DDR3@1600 9?9?9?24。首先進行系統的硬件調試,調試過程中設置Check為一個定時器,用來實現開發(fā)的PC機與嵌入式的移動開發(fā)設備之間的連接;采用DM9000網絡模塊來實現采集數據的遠程傳輸,由此開始采集傳感器信息,然后發(fā)送至基站。數據采樣的程序為:
ecall ReadStream.postBuffer(pressureSamples, PRESSURE_
SAMPLES
在上述仿真環(huán)境設定的基礎上,進行分流系統的反轉參數設置,如表1所示。
表1 仿真參數設置
系統采用了PHP和MySQL實現數據分流編程仿真。在Device Drivers 菜單中,選擇SD/MMC 設備,實現數據分流的內核映象文件讀取,數據讀取界面如圖8所示。
圖8 數據讀取界面
最后得到本文設計的數據系統仿真結果如圖9所示。由圖可見,采用本文設計系統通過對云計算平臺下的大數據進行聚類處理和特征提取,根據功能子程序動態(tài)加載和TinyOS優(yōu)先級調度,實現數據分流,分流準確度較高,提高了模式識別能力。
圖9 大數據分流系統仿真輸出結果
4 結 語
在云計算環(huán)境下,計算資源、存儲資源與軟件資源的來源具有多重屬性,形成多源信息資源的云計算和云存儲,需要對云計算環(huán)境下的多源大數據進行分流處理,提高數據聚類的準確性,為實現模式識別提供基礎。
本文提出基于功能子程序動態(tài)加載和TinyOS優(yōu)先級調度的云計算平臺下大數據分流系統優(yōu)化設計方法。首先進行云計算平臺下的大數據分流系統的總體模型構建;采用 S3C2440作為系統控制核心進行分流系統的硬件結構設計;最后在Linux操作系統中采用功能子程序動態(tài)加載方法進行系統的軟件開發(fā)。實驗結果表明,采用本文設計系統能有效實現對云計算平臺中的大數據分流處理,性能優(yōu)越。
參考文獻
[1] 鄧異,梁燕,周勇.水聲換能器基陣信號采集系統優(yōu)化設計[J].物聯網技術,2015,5(4):36?37.
(上接第32頁)
[2] 張睿.基于多徑PID控制的網絡終端動態(tài)干擾監(jiān)測設計[J].科技通報,2014,30(6):188?190.
[3] 程艷合,楊文革.壓縮域直擴測控通信信號偽碼跟蹤方法研究[J].電子與信息學報,2015,37(8):2028?2032.
[4] 吳志軍,李光,岳猛.基于信號互相關的低速率拒絕服務攻擊檢測方法[J].電子學報,2014,42(9):1760?1766.
[5] 梁華東,韓江洪.采用雙譜多類小波包特征的雷達信號聚類分選[J].光子學報,2014,43(3):1?8.
[6] 匡桂娟,曾國蓀,熊煥亮.關注用戶服務評價反饋的云資源再分配方法[J].計算機應用,2015,35(7):1837?1842.
[7] WU Tao CHEN Lifei GUO Gongde. High?dimensional data clustering algorithm with subspace optimization [J]. Journal of Computer Applications, 2014, 34(8): 2279?2284.
[8] 辛宇,楊靜,湯楚蘅,等.基于局部語義聚類的語義重疊社區(qū)發(fā)現算法[J].計算機研究與發(fā)展,2015,52(7):1510?1521.