[0028] Or-next-rule=”ture”/>
[0029] .......
[0030]
[0031] 。
[0032] 進一步,所述上下文感知算法實現(xiàn)智慧城市大數(shù)據(jù)的存儲中,存儲方法包括[0033] (1)緩存
框架單元將元數(shù)據(jù)庫中的數(shù)據(jù)加載至緩存器中并為所述的緩存器創(chuàng)建連接池;
[0034] (2)元數(shù)據(jù)分析模
塊響應(yīng)用戶提交的元數(shù)據(jù)分析指令,并將元數(shù)據(jù)分析指令對應(yīng)的元數(shù)據(jù)分析消息發(fā)送至元數(shù)據(jù)分析服務(wù)端;
[0035] (3)元數(shù)據(jù)分析服務(wù)端根據(jù)元數(shù)據(jù)分析任務(wù)通過緩存框架單元查詢緩存器,并獲得對應(yīng)的元數(shù)據(jù)分析結(jié)果;
[0036] (4)元數(shù)據(jù)分析服務(wù)端將元數(shù)據(jù)分析結(jié)果對應(yīng)的分析結(jié)果消息發(fā)送至元數(shù)據(jù)分析模塊;
[0037] (5)元數(shù)據(jù)分析模塊解析元數(shù)據(jù)分析服務(wù)端發(fā)送的分析結(jié)果消息得到元數(shù)據(jù)分析結(jié)果,并顯示元數(shù)據(jù)分析結(jié)果。
[0038] 進一步,所述的緩存框架單元包括數(shù)據(jù)加載模塊,所述的緩存框架單元將所述的元數(shù)據(jù)庫中的數(shù)據(jù)加載至所述的緩存服務(wù)中,包括以下步驟:
[0039] 1)所述的數(shù)據(jù)加載模塊連接所述的元數(shù)據(jù)庫;
[0040] 2)所述的數(shù)據(jù)加載模塊查詢所述的元數(shù)據(jù)庫中的元數(shù)據(jù)實例表,并根據(jù)所述的元數(shù)據(jù)實例表創(chuàng)建并保存哈希值映射表;
[0041] 3)所述的數(shù)據(jù)加載模塊將所述的元數(shù)據(jù)庫中的數(shù)據(jù)加載至所述的緩存器中;
[0042] 所述的數(shù)據(jù)加載模塊查詢所述的元數(shù)據(jù)庫中的元數(shù)據(jù)實例表,并根據(jù)所述的元數(shù)據(jù)實例表創(chuàng)建并保存哈希值映射表,包括以下步驟:
[0043] (a)所述的數(shù)據(jù)加載模塊創(chuàng)建哈希值映射表;
[0044] (b)所述的數(shù)據(jù)加載模塊查詢所述的元數(shù)據(jù)庫中的元數(shù)據(jù)實例表,并獲取元數(shù)據(jù)實例序列號、元數(shù)據(jù)類型和元數(shù)據(jù)名稱三個字段所對應(yīng)的數(shù)據(jù);
[0045] (c)所述的數(shù)據(jù)加載模塊對元數(shù)據(jù)實例序列號進行哈希運算,并獲得所述的元數(shù)據(jù)實例序列號對應(yīng)的哈希值;
[0046] (d)所述的數(shù)據(jù)加載模塊將所述的元數(shù)據(jù)實例序列號與所對應(yīng)的哈希值保存至所述的哈希值映射表;
[0047] 所述的數(shù)據(jù)加載模塊對元數(shù)據(jù)實例序列號進行哈希運算,具體為:
[0048] 所述的數(shù)據(jù)加載模塊根據(jù)Java對象的HashCode()函數(shù)方法、MD5算法或SHA-1算法對元數(shù)據(jù)實例序列號進行哈希運算;
[0049] 所述的數(shù)據(jù)加載模塊將所述的元數(shù)據(jù)庫中的數(shù)據(jù)加載至所述的緩存器中,包括以下步驟:
[0050] (A)所述的數(shù)據(jù)加載模塊將所述的元數(shù)據(jù)庫中的元數(shù)據(jù)實例表加載到所述的緩存器中;
[0051] (B)所述的數(shù)據(jù)加載模塊將所述的元數(shù)據(jù)庫中的元數(shù)據(jù)組合關(guān)系表加載到所述的緩存器中;
[0052] (C)所述的數(shù)據(jù)加載模塊將所述的元數(shù)據(jù)庫中的元數(shù)據(jù)依賴關(guān)系表加載到所述的緩存器中;
[0053] 所述的緩存器包括數(shù)個緩存子服務(wù)器,所述的數(shù)據(jù)加載模塊將所述的元數(shù)據(jù)庫中的元數(shù)據(jù)實例表加載到所述的緩存器中,包括以下步驟:
[0054] a)所述的數(shù)據(jù)加載模塊根據(jù)所述的哈希值對所述的緩存子服務(wù)器的數(shù)量取模,并用取模后的值作為該元數(shù)據(jù)實例表中的數(shù)據(jù)對應(yīng)緩存的緩存子服務(wù)器的下標;
[0055] b)所述的數(shù)據(jù)加載模塊以所述的元數(shù)據(jù)實例序列號為鍵值,以所述的元數(shù)據(jù)類型和所述的元數(shù)據(jù)名稱為變量將所述的元數(shù)據(jù)實例表的數(shù)據(jù)保存至所對應(yīng)的緩存子服務(wù)器中;
[0056] 所述的數(shù)據(jù)加載模塊將所述的元數(shù)據(jù)庫中的元數(shù)據(jù)組合關(guān)系表加載到所述的緩存器中,包括以下步驟:
[0057] A)所述的數(shù)據(jù)加載模塊查詢所述的元數(shù)據(jù)庫中的元數(shù)據(jù)組合關(guān)系表,并獲取元數(shù)據(jù)實例序列號和組合關(guān)系元數(shù)據(jù)序列號兩個字段的數(shù)據(jù);
[0058] B)所述的數(shù)據(jù)加載模塊以所述的元數(shù)據(jù)實例序列號為鍵值,以所述的組合關(guān)系元數(shù)據(jù)序列號為變量將所述的元數(shù)據(jù)組合關(guān)系表的數(shù)據(jù)保存至所對應(yīng)的緩存子服務(wù)器中;
[0059] 所述的緩存框架單元包括連接池管理模塊和緩存配置模塊,所述的連接池管理模塊根據(jù)所述的緩存配置模塊中存儲的所述的緩存器的相關(guān)配置信息,為所述的緩存器創(chuàng)建連接池;
[0060] 所述的元數(shù)據(jù)分析服務(wù)端包括任務(wù)調(diào)度模塊、分布式緩存
接口和分析消息接收隊列,所述的元數(shù)據(jù)分析服務(wù)端根據(jù)所述的元數(shù)據(jù)分析任務(wù)通過緩存框架單元查詢緩存器,包括以下步驟:
[0061] (一)所述的分析消息接收隊列接收所述的元數(shù)據(jù)分析模塊發(fā)送的所述的元數(shù)據(jù)分析消息;
[0062] (二)所述的任務(wù)調(diào)度模塊解析所述的元數(shù)據(jù)分析消息并得到所述的元數(shù)據(jù)分析任務(wù);
[0063] (三)所述的任務(wù)調(diào)度模塊根據(jù)所述的元數(shù)據(jù)分析任務(wù)通過所述的分布式緩存接口調(diào)用所述的緩存框架單元;
[0064] (四)所述的任務(wù)調(diào)度模塊通過所述的分布式緩存框架服務(wù)器查詢所述的分布式緩存服務(wù)器;
[0065] 所述的緩存框架單元還包括
應(yīng)用程序編程接口,所述的獲得對應(yīng)的元數(shù)據(jù)分析結(jié)果,包括以下步驟:
[0066] 第一,所述的任務(wù)調(diào)度模塊獲得所述的元數(shù)據(jù)庫中的元數(shù)據(jù)實例序列,并將所述的緩存器中以元數(shù)據(jù)實例序列號為鍵值的緩存數(shù)據(jù)為根節(jié)點,并將所述的根節(jié)點加入到分析結(jié)果對象樹中;
[0067] 第二,所述的任務(wù)調(diào)度模塊將元數(shù)據(jù)實例序列號加入到任務(wù)集中作為進行元數(shù)據(jù)分析的初始對象;
[0068] 第三,所述的任務(wù)調(diào)度模塊以元數(shù)據(jù)實例序列號為參數(shù),并通過調(diào)用所述的應(yīng)用程序編程接口在所述的元數(shù)據(jù)組合關(guān)系模塊和所述的元數(shù)據(jù)依賴關(guān)系模塊中查找組合關(guān)系元數(shù)據(jù)序列號和依賴關(guān)系元數(shù)據(jù)序列號,形成組合關(guān)系元數(shù)據(jù)序列號集與依賴關(guān)系元數(shù)據(jù)序列號集;
[0069] 第四,所述的任務(wù)調(diào)度模塊為所述的組合關(guān)系元數(shù)據(jù)序列號集中的各個組合關(guān)系元數(shù)據(jù)序列號啟動一個查詢線程,以所述的各個組合關(guān)系元數(shù)據(jù)序列號為參數(shù)在所述的元數(shù)據(jù)實例模塊中查詢得到對應(yīng)的元數(shù)據(jù)實例并加入到以所述的元數(shù)據(jù)實例序列號為根節(jié)點的分析結(jié)果對象樹中;
[0070] 第五,所述的任務(wù)調(diào)度模塊為所述的依賴關(guān)系元數(shù)據(jù)序列號集中的各個依賴關(guān)系元數(shù)據(jù)序列號啟動一個查詢線程,以所述的各個依賴關(guān)系元數(shù)據(jù)序列號為參數(shù)在所述的元數(shù)據(jù)實例模塊中查詢得到對應(yīng)的元數(shù)據(jù)實例并加入到以所述的元數(shù)據(jù)實例序列號為根節(jié)點的分析結(jié)果對象樹中;
[0071] 第六,所述的任務(wù)調(diào)度模塊從所述的任務(wù)集中刪除元數(shù)據(jù)實例序列號,將所述的組合關(guān)系元數(shù)據(jù)序列號集與依賴關(guān)系元數(shù)據(jù)序列號集加入到所述的任務(wù)集中;
[0072] 第七,所述的任務(wù)調(diào)度模將所述的任務(wù)集中的各個關(guān)系元數(shù)據(jù)序列號作為元數(shù)據(jù)實例序列號,返回上述步驟第二,直到所述的任務(wù)集為空。
[0073] 進一步,所述的元數(shù)據(jù)分析模塊包括圖形化界面子模塊,所述的元數(shù)據(jù)分析模塊響應(yīng)用戶提交的元數(shù)據(jù)分析指令,包括以下步驟:
[0074] 所述的圖形化界面子模塊顯示圖形化界面;
[0075] 所述的圖形化界面子模塊響應(yīng)用戶提交的元數(shù)據(jù)分析指令并得到所對應(yīng)的元數(shù)據(jù)分析任務(wù);
[0076] 所述的元數(shù)據(jù)分析模塊還包括任務(wù)解析子模塊和解析消息發(fā)送隊列,將所述的元數(shù)據(jù)分析指令對應(yīng)的元數(shù)據(jù)分析消息發(fā)送至元數(shù)據(jù)分析服務(wù)端,包括以下步驟:
[0077] 所述的任務(wù)解析模塊將所述元數(shù)據(jù)分析任務(wù)的數(shù)據(jù)封裝為對應(yīng)的元數(shù)據(jù)分析消息,并將所對應(yīng)的元數(shù)據(jù)分析消息發(fā)送至所述的解析消息發(fā)送隊列;
[0078] 所述的解析消息發(fā)送隊列將所述的元數(shù)據(jù)分析消息發(fā)送至所述的元數(shù)據(jù)分析服務(wù)端;
[0079] 所述的元數(shù)據(jù)分析服務(wù)端還包括分析消息發(fā)送隊列,所述的元數(shù)據(jù)分析服務(wù)端將所述的元數(shù)據(jù)分析結(jié)果對應(yīng)的分析結(jié)果消息發(fā)送至所述的元數(shù)據(jù)分析模塊,包括以下步驟:
[0080] 所述的任務(wù)調(diào)度模塊將所對應(yīng)的元數(shù)據(jù)分析結(jié)果封裝為所對應(yīng)分析結(jié)果消息;
[0081] 所述的分析消息發(fā)送隊列發(fā)送所述的對應(yīng)的分析結(jié)果消息至所述的元數(shù)據(jù)分析模塊;
[0082] 任務(wù)調(diào)度模塊將所對應(yīng)的元數(shù)據(jù)分析結(jié)果封裝為所對應(yīng)分析結(jié)果消息,具體為:
[0083] 所述的任務(wù)調(diào)度模塊將所對應(yīng)的元數(shù)據(jù)分析結(jié)果以XML方式進行封裝,并得到所對應(yīng)分析結(jié)果消息;
[0084] 所述的元數(shù)據(jù)分析模塊包括任務(wù)解析子模塊和解析消息接收隊列,所述的任務(wù)解析子模塊解析所述的元數(shù)據(jù)分析模塊發(fā)送的分析結(jié)果消息得到元數(shù)據(jù)分析結(jié)果,并顯示所述的元數(shù)據(jù)分析結(jié)果,包括以下步驟:
[0085] 所述的解析消息接收隊列接收所述的元數(shù)據(jù)分析模塊發(fā)送的分析結(jié)果消息;
[0086] 所述的任務(wù)解析模塊解析所述的分析結(jié)果消息并得到所述的元數(shù)據(jù)分析結(jié)果,以及將所述的元數(shù)據(jù)分析結(jié)果發(fā)送至所述的圖形化界面子模塊;
[0087] 所述的圖形化界面子模塊顯示所述的元數(shù)據(jù)分析結(jié)果;
[0088] 所述的圖形化界面子模塊顯示所述的元數(shù)據(jù)分析結(jié)果,具體為:
[0089] 所述的圖形化界面子模塊以圖形的方式顯示所述的元數(shù)據(jù)分析結(jié)果。
[0090] 進一步,所述基于上下文感知的智慧城市云計算分析方法還包括:采用相空間熱力學(xué)的分析方法對云計算平臺進行監(jiān)控分析;所述監(jiān)控分析包括廣義
溫度的定義分析,所述廣義溫度的計算公式為:
[0091]
[0092] 式(1)中,Tt為云計算平臺在t時刻的廣義溫度,其取值范圍是[0,1],Vt為云計算平臺在t時刻的速度,Vmax為云計算平臺的最大速度,其值為
[0093] Vt的計算公式為:
[0094]
[0095] 式(2)中,Xt+1為計算節(jié)點在t+1時刻的x軸坐標,Xt為計算節(jié)點在t時刻的x軸坐標,yt+1為計算節(jié)點在t+1時刻的y軸坐標,yt為計算節(jié)點在t時刻的y軸坐標。
[0096] 進一步,相空間的坐標體系由與計算節(jié)點的CPU占用率對應(yīng)的x軸和與計算節(jié)點的內(nèi)存占用率對應(yīng)的y軸構(gòu)成,設(shè)任一時刻外部對云計算平臺只有兩個負載
請求輸入?yún)?shù)ai和bi,一秒鐘內(nèi)有l(wèi)次負載請求;
[0097] 所述監(jiān)控分析還包括廣義絕對溫度T的定義分析,所述廣義絕對溫度T的計算公式為:
[0098]
[0099] 式(3)中,為云計算平臺在任一時刻的總平均速度,為一秒時間間隔內(nèi)云計算平臺的運動平均速度;Δv為m個計算節(jié)點一秒內(nèi)的速度在外界負載輸入影響下的速度變化,m為云計算平臺內(nèi)的計算節(jié)點的數(shù)量,X為計算節(jié)點的x軸坐標,y為計算節(jié)點的y軸坐標;
[0100] 所述監(jiān)控分析還包括廣義
絕對零度T0,所述廣義絕對零度T0的值為零,表示所有計算節(jié)點的負載均為0,且無任何外部負載請求的狀態(tài);
[0101] 所述監(jiān)控分析還包括廣義熵和廣義歸一化熵的定義分析,所述廣義熵的計算公式為:
[0102] S=klnΩ???(4)
[0103] 式(4)中,S為廣義熵,k為玻爾茲曼常數(shù),Ω為微觀狀態(tài)數(shù);
[0104] 所述廣義歸一化熵的計算公式為:
[0105]
[0106] 式(5)中,K為廣義歸一化熵,S1為云計算平臺當前的廣義熵,S2為云計算平臺在平衡態(tài)時的廣義熵,k為玻爾茲曼常數(shù),Ω1為云計算平臺當前的微觀狀態(tài)數(shù),Ω2為云計算平臺在平衡態(tài)時的微觀狀態(tài)數(shù)。
[0107] 進一步,所述廣義歸一化熵的近似計算方法如下:假設(shè)云計算系統(tǒng)需要監(jiān)控分析的計算節(jié)點數(shù)為m,將相空間劃分為一個n×n的網(wǎng)格,m個計算節(jié)點的當前工作參數(shù)映射到相空間并落入n×n的網(wǎng)格中,在平衡態(tài)時,m個計算節(jié)點會以隨機的方式落入到n×n個網(wǎng)格中,m個計算節(jié)點的參數(shù)落入n×n個網(wǎng)格的微觀狀態(tài)數(shù)Ω2=(n×n)m;
[0108] 而在非平衡態(tài)時,m個計算節(jié)點會落入到l個網(wǎng)格中,這時1≤l≤n×n,m個計算節(jié)點的參數(shù)落入l個網(wǎng)格內(nèi),其微觀狀態(tài)數(shù)Ω1=lm,此時,所述廣義歸一化熵的計算公式為當l=1時,所述廣義歸一化熵K為0,這時m個計算節(jié)點參數(shù)全部落入一個網(wǎng)格內(nèi),云計算平臺處于理想的均衡狀態(tài);當l=n×n時,所述廣義歸一化熵K為1,這時m個計算節(jié)點參數(shù)隨機分布于相空間內(nèi),云計算平臺處于非常不理想的均衡狀態(tài);所述廣義歸一化熵K值越高表明云計算平臺當前均衡狀態(tài)越不理想;
[0109] 所述相空間劃分為n×n網(wǎng)格,網(wǎng)格n×n的
密度與計算節(jié)點數(shù)量成正比,劃分網(wǎng)格n×n滿足以下條件:m>n×n;
[0110] 所述監(jiān)控分析還包括相空間投影點
重心位置的定義分析,所述相空間投影點重心位置G(x0,y0)的計算公式為:
[0111]
[0112] 式(6)中,X0為G(x0,y0)的x軸坐標,y0為G(x0,y0)的y軸坐標,Xj為n×n中每個網(wǎng)格中心的x軸坐標,y1為n×n中每個網(wǎng)格中心的y軸坐標,m為云計算平臺中計算節(jié)點的數(shù)量。
[0113] 本發(fā)明提供的基于上下文感知的智慧城市云計算分析方法,基于上下文感知的云計算平臺為用戶提供了一種新型、可靠、高效的數(shù)據(jù)服務(wù)模式;面向智慧城市大數(shù)據(jù)的存儲管理服務(wù)中,復(fù)雜、多源、動態(tài)大數(shù)據(jù)的存儲出現(xiàn)了效率低和可靠性差的問題。本發(fā)明采用基于上下文感知的云計算平臺的四層結(jié)構(gòu),上下文感知算法實現(xiàn)智慧城市大數(shù)據(jù)的存儲;理論分析和模式測試結(jié)果表明基于上下文感知的云計算平臺滿足了動態(tài)大數(shù)據(jù)的可靠存儲的前提下,降低了數(shù)據(jù)分布式影響,極大提高了智慧城市大數(shù)據(jù)的存儲管理能力。
[0114] 本發(fā)明通過緩存將元數(shù)據(jù)庫中的元數(shù)據(jù)信息加載到緩存器中,實現(xiàn)在緩存器中直接查詢元數(shù)據(jù)間的關(guān)系,不需查詢數(shù)據(jù)庫,不產(chǎn)生磁盤I/O,查詢效率極高,由于不使用元數(shù)據(jù)庫中元數(shù)據(jù)表結(jié)構(gòu),因此不需要數(shù)據(jù)表連接運算,從而需要大量計算資源,大大降低了系統(tǒng)使用的計算資源。
[0115] 同時,本發(fā)明通過創(chuàng)建連接池提高對緩存器的
訪問性能,由于數(shù)據(jù)訪問連接的創(chuàng)建和銷毀都是非常消耗系統(tǒng)資源的,通過提供數(shù)據(jù)連接池,預(yù)先創(chuàng)建好多個數(shù)據(jù)連接,需要建立連接的時候直接從池中取一個連接使用,使用完成后還回池中,避免數(shù)據(jù)連接頻繁地創(chuàng)建、釋放連接的資源消耗。
[0116] 本發(fā)明的緩存實現(xiàn)了元數(shù)據(jù)分析的系統(tǒng)及方法架構(gòu)簡單,具有極高的可伸縮性,可以根據(jù)需要增加緩存器;使用維護方便快捷,工作性能穩(wěn)定可靠,為企業(yè)元數(shù)據(jù)分析應(yīng)用的進一步發(fā)展奠定了堅實的基礎(chǔ),具有更廣泛的應(yīng)用范圍。
[0117] 本發(fā)明將已經(jīng)很成熟并有深入的理論支撐的相空間熱力學(xué)的分析方法應(yīng)用于云計算分析,能夠?qū)崿F(xiàn)對云計算環(huán)境下的海量節(jié)點的集群整體進行從微觀到宏觀的監(jiān)控,直接對集群整體的狀態(tài)進行迅速高效的判斷,從而對集群整體的負載情況以及集群調(diào)度策略是否得當進行有效判定;本發(fā)明為云計算平臺的健康、快速發(fā)展打下了堅實的基礎(chǔ)。
[0118] 本發(fā)明的云計算平臺的廣義溫度反映了平臺當前狀態(tài)下服務(wù)器的活躍程度,平臺的廣義溫度越高,表明平臺此刻的負載量越大,而如果平臺的廣義溫度越低,說明平臺的負載量越小。在廣義溫度為0時,說明平臺處于關(guān)機狀態(tài)或完全沒有任務(wù)請求的狀態(tài);而廣義溫度為1時,說明平臺處于滿負荷狀態(tài),即所有的節(jié)點都在運行。
[0119] 由于本發(fā)明的平臺的廣義溫度的變化量是和用戶的信息請求息息相關(guān)的,用戶請求量的增加必然會導(dǎo)致平臺溫度的增加,因此為了有效控制平臺的溫度的變化速率,平臺往往會采用一些調(diào)度算法來降低整個平臺的節(jié)點負荷,即減小平臺的溫度的變化速率,有效的維持平臺的負載均衡度。因此監(jiān)控方法可以通過觀察平臺廣義溫度的變化量來實時監(jiān)控平臺負載量的變化情況,如果平臺溫度過高,或者平臺外界請求過多,監(jiān)控平臺便可以通知平臺采取一定的調(diào)度策略來使整個平臺達到一種均衡的狀態(tài)。
附圖說明
[0120] 圖1是本發(fā)明
實施例提供的基于上下文感知的智慧城市云計算分析方法
流程圖。
具體實施方式
[0121] 為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合實施例,對本發(fā)明進行進一步詳細說明。應(yīng)當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0122] 下面結(jié)合附圖對本發(fā)明的應(yīng)用原理作詳細的描述。
[0123] 如圖1所示,本發(fā)明實施例提供的基于上下文感知的智慧城市云計算分析方法包括以下步驟:
[0124] S101:首先上下文數(shù)據(jù)轉(zhuǎn)化為一個參數(shù)列表用于定義規(guī)則里的設(shè)置文件;規(guī)則的規(guī)則定義包含一個列表的元素定期評估的引擎;
[0125] S102:基于上下文感知的相關(guān)規(guī)則包含兩個部分:規(guī)則定義和規(guī)則實現(xiàn);其中規(guī)則定義部分是根據(jù)rule-def標簽是復(fù)雜的規(guī)則,那些觸發(fā)某個動作如果true.Complex靈便的評估規(guī)則名稱屬性,描述一個屬性來指定動作觸發(fā)和可能的參數(shù)的一個屬性的行動。
[0126] 本發(fā)明實施例的具體步驟如下:
[0127] 首先上下文數(shù)據(jù)轉(zhuǎn)化為一個參數(shù)列表用于定義規(guī)則里的設(shè)置文件。規(guī)則的規(guī)則定義包含一個列表的元素定期評估的引擎。由幾個元素組成的規(guī)則是:條件(表示為布爾表達式,基于規(guī)則實現(xiàn))、行為(動作觸發(fā)規(guī)則條件得到滿足時),和行動(字符串參數(shù)作為參數(shù)傳遞給操作)。使用的規(guī)則實現(xiàn)指定不同的表情評估上下文。字符串字段等于快車平等之間的上下文參數(shù)和一個字符串。這規(guī)則可以應(yīng)用于上下文參數(shù)的字符串val-問題,比如用戶的名字。用戶還可以指定高級功能:他可以將規(guī)則應(yīng)用布爾代數(shù),或者他可以實現(xiàn)定制的聚合功能。在第二種情況下,數(shù)據(jù)是首次超過了組件,結(jié)果進一步用于評價規(guī)則。代表操作之間的基本類型和允許的規(guī)則制定不同的上下文參數(shù)的限制值。結(jié)合時他們可以導(dǎo)致更復(fù)雜的條件:
[0128] Rule=Rule?OR?Rule|Rule?AND?Rule|Rule?Impl。
[0129] 基于上下文感知的相關(guān)規(guī)則包含兩個部分:規(guī)則定義和規(guī)則實現(xiàn)。其中規(guī)則定義部分是根據(jù)rule-def標簽是復(fù)雜的規(guī)則,那些觸發(fā)某個動作如果true.Complex靈便的評估規(guī)則名稱屬性,描述一個屬性來指定動作觸發(fā)和可能的參數(shù)的一個屬性的行動。
[0130]
[0131]
[0133]
[0134] Or-next-rule=”ture”/>
[0135] .......
[0136]
[0137] 。
[0138] 進一步,所述上下文感知算法實現(xiàn)智慧城市大數(shù)據(jù)的存儲中,存儲方法包括[0139] (1)緩存框架單元將元數(shù)據(jù)庫中的數(shù)據(jù)加載至緩存器中并為所述的緩存器創(chuàng)建連接池;
[0140] (2)元數(shù)據(jù)分析模塊響應(yīng)用戶提交的元數(shù)據(jù)分析指令,并將元數(shù)據(jù)分析指令對應(yīng)的元數(shù)據(jù)分析消息發(fā)送至元數(shù)據(jù)分析服務(wù)端;
[0141] (3)元數(shù)據(jù)分析服務(wù)端根據(jù)元數(shù)據(jù)分析任務(wù)通過緩存框架單元查詢緩存器,并獲得對應(yīng)的元數(shù)據(jù)分析結(jié)果;
[0142] (4)元數(shù)據(jù)分析服務(wù)端將元數(shù)據(jù)分析結(jié)果對應(yīng)的分析結(jié)果消息發(fā)送至元數(shù)據(jù)分析模塊;
[0143] (5)元數(shù)據(jù)分析模塊解析元數(shù)據(jù)分析服務(wù)端發(fā)送的分析結(jié)果消息得到元數(shù)據(jù)分析結(jié)果,并顯示元數(shù)據(jù)分析結(jié)果。
[0144] 進一步,所述的緩存框架單元包括數(shù)據(jù)加載模塊,所述的緩存框架單元將所述的元數(shù)據(jù)庫中的數(shù)據(jù)加載至所述的緩存服務(wù)中,包括以下步驟:
[0145] 1)所述的數(shù)據(jù)加載模塊連接所述的元數(shù)據(jù)庫;
[0146] 2)所述的數(shù)據(jù)加載模塊查詢所述的元數(shù)據(jù)庫中的元數(shù)據(jù)實例表,并根據(jù)所述的元數(shù)據(jù)實例表創(chuàng)建并保存哈希值映射表;
[0147] 3)所述的數(shù)據(jù)加載模塊將所述的元數(shù)據(jù)庫中的數(shù)據(jù)加載至所述的緩存器中;
[0148] 所述的數(shù)據(jù)加載模塊查詢所述的元數(shù)據(jù)庫中的元數(shù)據(jù)實例表,并根據(jù)所述的元數(shù)據(jù)實例表創(chuàng)建并保存哈希值映射表,包括以下步驟:
[0149] (a)所述的數(shù)據(jù)加載模塊創(chuàng)建哈希值映射表;
[0150] (b)所述的數(shù)據(jù)加載模塊查詢所述的元數(shù)據(jù)庫中的元數(shù)據(jù)實例表,并獲取元數(shù)據(jù)實例序列號、元數(shù)據(jù)類型和元數(shù)據(jù)名稱三個字段所對應(yīng)的數(shù)據(jù);
[0151] (c)所述的數(shù)據(jù)加載模塊對元數(shù)據(jù)實例序列號進行哈希運算,并獲得所述的元數(shù)據(jù)實例序列號對應(yīng)的哈希值;
[0152] (d)所述的數(shù)據(jù)加載模塊將所述的元數(shù)據(jù)實例序列號與所對應(yīng)的哈希值保存至所述的哈希值映射表;
[0153] 所述的數(shù)據(jù)加載模塊對元數(shù)據(jù)實例序列號進行哈希運算,具體為:
[0154] 所述的數(shù)據(jù)加載模塊根據(jù)Java對象的HashCode()函數(shù)方法、MD5算法或SHA-1算法對元數(shù)據(jù)實例序列號進行哈希運算;
[0155] 所述的數(shù)據(jù)加載模塊將所述的元數(shù)據(jù)庫中的數(shù)據(jù)加載至所述的緩存器中,包括以下步驟:
[0156] (A)所述的數(shù)據(jù)加載模塊將所述的元數(shù)據(jù)庫中的元數(shù)據(jù)實例表加載到所述的緩存器中;
[0157] (B)所述的數(shù)據(jù)加載模塊將所述的元數(shù)據(jù)庫中的元數(shù)據(jù)組合關(guān)系表加載到所述的緩存器中;
[0158] (C)所述的數(shù)據(jù)加載模塊將所述的元數(shù)據(jù)庫中的元數(shù)據(jù)依賴關(guān)系表加載到所述的緩存器中;
[0159] 所述的緩存器包括數(shù)個緩存子服務(wù)器,所述的數(shù)據(jù)加載模塊將所述的元數(shù)據(jù)庫中的元數(shù)據(jù)實例表加載到所述的緩存器中,包括以下步驟:
[0160] a)所述的數(shù)據(jù)加載模塊根據(jù)所述的哈希值對所述的緩存子服務(wù)器的數(shù)量取模,并用取模后的值作為該元數(shù)據(jù)實例表中的數(shù)據(jù)對應(yīng)緩存的緩存子服務(wù)器的下標;
[0161] b)所述的數(shù)據(jù)加載模塊以所述的元數(shù)據(jù)實例序列號為鍵值,以所述的元數(shù)據(jù)類型和所述的元數(shù)據(jù)名稱為變量將所述的元數(shù)據(jù)實例表的數(shù)據(jù)保存至所對應(yīng)的緩存子服務(wù)器中;
[0162] 所述的數(shù)據(jù)加載模塊將所述的元數(shù)據(jù)庫中的元數(shù)據(jù)組合關(guān)系表加載到所述的緩存器中,包括以下步驟:
[0163] A)所述的數(shù)據(jù)加載模塊查詢所述的元數(shù)據(jù)庫中的元數(shù)據(jù)組合關(guān)系表,并獲取元數(shù)據(jù)實例序列號和組合關(guān)系元數(shù)據(jù)序列號兩個字段的數(shù)據(jù);
[0164] B)所述的數(shù)據(jù)加載模塊以所述的元數(shù)據(jù)實例序列號為鍵值,以所述的組合關(guān)系元數(shù)據(jù)序列號為變量將所述的元數(shù)據(jù)組合關(guān)系表的數(shù)據(jù)保存至所對應(yīng)的緩存子服務(wù)器中;
[0165] 所述的緩存框架單元包括連接池管理模塊和緩存配置模塊,所述的連接池管理模塊根據(jù)所述的緩存配置模塊中存儲的所述的緩存器的相關(guān)配置信息,為所述的緩存器創(chuàng)建連接池;
[0166] 所述的元數(shù)據(jù)分析服務(wù)端包括任務(wù)調(diào)度模塊、分布式緩存接口和分析消息接收隊列,所述的元數(shù)據(jù)分析服務(wù)端根據(jù)所述的元數(shù)據(jù)分析任務(wù)通過緩存框架單元查詢緩存器,包括以下步驟:
[0167] (一)所述的分析消息接收隊列接收所述的元數(shù)據(jù)分析模塊發(fā)送的所述的元數(shù)據(jù)分析消息;
[0168] (二)所述的任務(wù)調(diào)度模塊解析所述的元數(shù)據(jù)分析消息并得到所述的元數(shù)據(jù)分析任務(wù);
[0169] (三)所述的任務(wù)調(diào)度模塊根據(jù)所述的元數(shù)據(jù)分析任務(wù)通過所述的分布式緩存接口調(diào)用所述的緩存框架單元;
[0170] (四)所述的任務(wù)調(diào)度模塊通過所述的分布式緩存框架服務(wù)器查詢所述的分布式緩存服務(wù)器;
[0171] 所述的緩存框架單元還包括應(yīng)用程序編程接口,所述的獲得對應(yīng)的元數(shù)據(jù)分析結(jié)果,包括以下步驟:
[0172] 第一,所述的任務(wù)調(diào)度模塊獲得所述的元數(shù)據(jù)庫中的元數(shù)據(jù)實例序列,并將所述的緩存器中以元數(shù)據(jù)實例序列號為鍵值的緩存數(shù)據(jù)為根節(jié)點,并將所述的根節(jié)點加入到分析結(jié)果對象樹中;
[0173] 第二,所述的任務(wù)調(diào)度模塊將元數(shù)據(jù)實例序列號加入到任務(wù)集中作為進行元數(shù)據(jù)分析的初始對象;
[0174] 第三,所述的任務(wù)調(diào)度模塊以元數(shù)據(jù)實例序列號為參數(shù),并通過調(diào)用所述的應(yīng)用程序編程接口在所述的元數(shù)據(jù)組合關(guān)系模塊和所述的元數(shù)據(jù)依賴關(guān)系模塊中查找組合關(guān)系元數(shù)據(jù)序列號和依賴關(guān)系元數(shù)據(jù)序列號,形成組合關(guān)系元數(shù)據(jù)序列號集與依賴關(guān)系元數(shù)據(jù)序列號集;
[0175] 第四,所述的任務(wù)調(diào)度模塊為所述的組合關(guān)系元數(shù)據(jù)序列號集中的各個組合關(guān)系元數(shù)據(jù)序列號啟動一個查詢線程,以所述的各個組合關(guān)系元數(shù)據(jù)序列號為參數(shù)在所述的元數(shù)據(jù)實例模塊中查詢得到對應(yīng)的元數(shù)據(jù)實例并加入到以所述的元數(shù)據(jù)實例序列號為根節(jié)點的分析結(jié)果對象樹中;
[0176] 第五,所述的任務(wù)調(diào)度模塊為所述的依賴關(guān)系元數(shù)據(jù)序列號集中的各個依賴關(guān)系元數(shù)據(jù)序列號啟動一個查詢線程,以所述的各個依賴關(guān)系元數(shù)據(jù)序列號為參數(shù)在所述的元數(shù)據(jù)實例模塊中查詢得到對應(yīng)的元數(shù)據(jù)實例并加入到以所述的元數(shù)據(jù)實例序列號為根節(jié)點的分析結(jié)果對象樹中;
[0177] 第六,所述的任務(wù)調(diào)度模塊從所述的任務(wù)集中刪除元數(shù)據(jù)實例序列號,將所述的組合關(guān)系元數(shù)據(jù)序列號集與依賴關(guān)系元數(shù)據(jù)序列號集加入到所述的任務(wù)集中;
[0178] 第七,所述的任務(wù)調(diào)度模將所述的任務(wù)集中的各個關(guān)系元數(shù)據(jù)序列號作為元數(shù)據(jù)實例序列號,返回上述步驟第二,直到所述的任務(wù)集為空。
[0179] 進一步,所述的元數(shù)據(jù)分析模塊包括圖形化界面子模塊,所述的元數(shù)據(jù)分析模塊響應(yīng)用戶提交的元數(shù)據(jù)分析指令,包括以下步驟:
[0180] 所述的圖形化界面子模塊顯示圖形化界面;
[0181] 所述的圖形化界面子模塊響應(yīng)用戶提交的元數(shù)據(jù)分析指令并得到所對應(yīng)的元數(shù)據(jù)分析任務(wù);
[0182] 所述的元數(shù)據(jù)分析模塊還包括任務(wù)解析子模塊和解析消息發(fā)送隊列,將所述的元數(shù)據(jù)分析指令對應(yīng)的元數(shù)據(jù)分析消息發(fā)送至元數(shù)據(jù)分析服務(wù)端,包括以下步驟:
[0183] 所述的任務(wù)解析模塊將所述元數(shù)據(jù)分析任務(wù)的數(shù)據(jù)封裝為對應(yīng)的元數(shù)據(jù)分析消息,并將所對應(yīng)的元數(shù)據(jù)分析消息發(fā)送至所述的解析消息發(fā)送隊列;
[0184] 所述的解析消息發(fā)送隊列將所述的元數(shù)據(jù)分析消息發(fā)送至所述的元數(shù)據(jù)分析服務(wù)端;
[0185] 所述的元數(shù)據(jù)分析服務(wù)端還包括分析消息發(fā)送隊列,所述的元數(shù)據(jù)分析服務(wù)端將所述的元數(shù)據(jù)分析結(jié)果對應(yīng)的分析結(jié)果消息發(fā)送至所述的元數(shù)據(jù)分析模塊,包括以下步驟:
[0186] 所述的任務(wù)調(diào)度模塊將所對應(yīng)的元數(shù)據(jù)分析結(jié)果封裝為所對應(yīng)分析結(jié)果消息;
[0187] 所述的分析消息發(fā)送隊列發(fā)送所述的對應(yīng)的分析結(jié)果消息至所述的元數(shù)據(jù)分析模塊;
[0188] 任務(wù)調(diào)度模塊將所對應(yīng)的元數(shù)據(jù)分析結(jié)果封裝為所對應(yīng)分析結(jié)果消息,具體為:
[0189] 所述的任務(wù)調(diào)度模塊將所對應(yīng)的元數(shù)據(jù)分析結(jié)果以XML方式進行封裝,并得到所對應(yīng)分析結(jié)果消息;
[0190] 所述的元數(shù)據(jù)分析模塊包括任務(wù)解析子模塊和解析消息接收隊列,所述的任務(wù)解析子模塊解析所述的元數(shù)據(jù)分析模塊發(fā)送的分析結(jié)果消息得到元數(shù)據(jù)分析結(jié)果,并顯示所述的元數(shù)據(jù)分析結(jié)果,包括以下步驟:
[0191] 所述的解析消息接收隊列接收所述的元數(shù)據(jù)分析模塊發(fā)送的分析結(jié)果消息;
[0192] 所述的任務(wù)解析模塊解析所述的分析結(jié)果消息并得到所述的元數(shù)據(jù)分析結(jié)果,以及將所述的元數(shù)據(jù)分析結(jié)果發(fā)送至所述的圖形化界面子模塊;
[0193] 所述的圖形化界面子模塊顯示所述的元數(shù)據(jù)分析結(jié)果;
[0194] 所述的圖形化界面子模塊顯示所述的元數(shù)據(jù)分析結(jié)果,具體為:
[0195] 所述的圖形化界面子模塊以圖形的方式顯示所述的元數(shù)據(jù)分析結(jié)果。
[0196] 進一步,所述基于上下文感知的智慧城市云計算分析方法還包括:采用相空間熱力學(xué)的分析方法對云計算平臺進行監(jiān)控分析;所述監(jiān)控分析包括廣義溫度的定義分析,所述廣義溫度的計算公式為:
[0197]
[0198] 式(1)中,Tt為云計算平臺在t時刻的廣義溫度,其取值范圍是[0,1],Vt為云計算平臺在t時刻的速度,Vmax為云計算平臺的最大速度,其值為
[0199] Vt的計算公式為:
[0200]
[0201] 式(2)中,Xt+1為計算節(jié)點在t+1時刻的x軸坐標,Xt為計算節(jié)點在t時刻的x軸坐標,yt+1為計算節(jié)點在t+1時刻的y軸坐標,yt為計算節(jié)點在t時刻的y軸坐標。
[0202] 進一步,相空間的坐標體系由與計算節(jié)點的CPU占用率對應(yīng)的x軸和與計算節(jié)點的內(nèi)存占用率對應(yīng)的y軸構(gòu)成,設(shè)任一時刻外部對云計算平臺只有兩個負載請求輸入?yún)?shù)ai和bi,一秒鐘內(nèi)有l(wèi)次負載請求;
[0203] 所述監(jiān)控分析還包括廣義絕對溫度T的定義分析,所述廣義絕對溫度T的計算公式為:
[0204]
[0205] 式(3)中,為云計算平臺在任一時刻的總平均速度,為一秒時間間隔內(nèi)云計算平臺的運動平均速度;Δv為m個計算節(jié)點一秒內(nèi)的速度在外界負載輸入影響下的速度變化,m為云計算系統(tǒng)內(nèi)的計算節(jié)點的數(shù)量,X為計算節(jié)點的x軸坐標,y為計算節(jié)點的y軸坐標;
[0206] 所述監(jiān)控分析還包括廣義絕對零度T0,所述廣義絕對零度T0的值為零,表示所有計算節(jié)點的負載均為0,且無任何外部負載請求的狀態(tài);
[0207] 所述監(jiān)控分析還包括廣義熵和廣義歸一化熵的定義分析,所述廣義熵的計算公式為:
[0208] S=klnΩ???(4)
[0209] 式(4)中,S為廣義熵,k為玻爾茲曼常數(shù),Ω為微觀狀態(tài)數(shù);
[0210] 所述廣義歸一化熵的計算公式為:
[0211]
[0212] 式(5)中,K為廣義歸一化熵,S1為云計算平臺當前的廣義熵,S2為云計算平臺在平衡態(tài)時的廣義熵,k為玻爾茲曼常數(shù),Ω1為云計算平臺當前的微觀狀態(tài)數(shù),Ω2為云計算平臺在平衡態(tài)時的微觀狀態(tài)數(shù)。
[0213] 進一步,所述廣義歸一化熵的近似計算方法如下:假設(shè)云計算系統(tǒng)需要監(jiān)控分析的計算節(jié)點數(shù)為m,將相空間劃分為一個n×n的網(wǎng)格,m個計算節(jié)點的當前工作參數(shù)映射到相空間并落入n×n的網(wǎng)格中,在平衡態(tài)時,m個計算節(jié)點會以隨機的方式落入到n×n個網(wǎng)格m中,m個計算節(jié)點的參數(shù)落入n×n個網(wǎng)格的微觀狀態(tài)數(shù)Ω2=(n×n) ;
[0214] 而在非平衡態(tài)時,m個計算節(jié)點會落入到l個網(wǎng)格中,這時1≤l≤n×n,m個計算節(jié)點的參數(shù)落入l個網(wǎng)格內(nèi),其微觀狀態(tài)數(shù)Ω1=lm,此時,所述廣義歸一化熵的計算公式為當l=1時,所述廣義歸一化熵K為0,這時m個計算節(jié)點參數(shù)全部落入一個網(wǎng)格內(nèi),云計算平臺處于理想的均衡狀態(tài);當l=n×n時,所述廣義歸一化熵K為1,這時m個計算節(jié)點參數(shù)隨機分布于相空間內(nèi),云計算平臺處于非常不理想的均衡狀態(tài);所述廣義歸一化熵K值越高表明云計算平臺當前均衡狀態(tài)越不理想;
[0215] 所述相空間劃分為n×n網(wǎng)格,網(wǎng)格n×n的密度與計算節(jié)點數(shù)量成正比,劃分網(wǎng)格n×n滿足以下條件:m>n×n;
[0216] 所述監(jiān)控分析還包括相空間投影點重心位置的定義分析,所述相空間投影點重心位置G(x0,y0)的計算公式為:
[0217]
[0218] 式(6)中,X0為G(x0,y0)的x軸坐標,y0為G(x0,y0)的y軸坐標,Xj為n×n中每個網(wǎng)格中心的x軸坐標,y1為n×n中每個網(wǎng)格中心的y軸坐標,m為云計算平臺中計算節(jié)點的數(shù)量。
[0219] 以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何
修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。