亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種集群系統(tǒng)中數據存儲方法與裝置的制作方法

文檔序號:6402636閱讀:96來源:國知局
專利名稱:一種集群系統(tǒng)中數據存儲方法與裝置的制作方法
技術領域
本發(fā)明涉及集群通信技術領域,更具體的說是涉及一種集群系統(tǒng)中數據存儲方法
與裝置。
背景技術
為了實時獲取服務器集群是否正常運行,需要對服務器集群進行監(jiān)控,對服務器集群進行監(jiān)控主要包括根據通信協(xié)議采集服務器運行數據(是封裝的數據,便于傳輸),存儲采集的服務器運行數據,根據存儲的服務器運行數據分析集群運行是否正常。其中所述運行數據進一步可以包括狀態(tài)數據和性能數據,所述狀態(tài)數據是指一些數值固定的數據,比如CPU型號;所述性能數據可以包括CPU使用率、網絡流量使用信息等一些動態(tài)變化的數據。在采集服務器運行數據 時,若集群中的服務器型號不同,基于SNMP協(xié)議采集的數據具有相同的維度,可以統(tǒng)一存儲管理。但是,基于IPMI協(xié)議主要通過服務器中傳感器采集數據,采集的數據維度一般不同,比如服務器中傳感器的名稱不同,傳感器種類不同,這些會導致采集數據的異構性,數據存儲起來較困難。目前互聯網公司采用的都是由服務器生產廠商提供的IPMI管理系統(tǒng),如果組成集群的服務器來自于多個廠商,那么,在對服務器集群監(jiān)控時就會有多套IPMI管理系統(tǒng),即不同型號服務器運行數據保存在不同的數據庫中。當維護人員要通過所有服務器的運行數據來檢測集群的運行狀態(tài)時,需要在不同的IPMI管理系統(tǒng)之間進行數據的調取和比較,當集群規(guī)模較大時,存儲的服務器運行數據量較大,使得集群的維護難度較大,效率較低。

發(fā)明內容
本申請實施例提供一種集群系統(tǒng)中數據存儲方法與裝置,以解決現有技術中由不同型號服務器構成的集群中,服務器運行數據存在異構性無法統(tǒng)一存儲,造成的集群整體的管理維護分散的技術問題,為具有異構性的數據提供一種統(tǒng)一的數據存儲方式,將所有型號的服務器運行數據存儲在數據庫的同一張表中,提高服務器運行數據的集中度和集群整體的維護效率。為解決上述技術問題,本發(fā)明提供一種集群系統(tǒng)中數據存儲方法與裝置,本發(fā)明提供如下技術方案:一種集群系統(tǒng)中數據存儲方法,所述方法包括:對采集的服務器運行數據進行解析;若解析出的數據是基于智能平臺管理IPMI協(xié)議采集的數據,根據解析出的服務器標識ID確定所述服務器對應的初始映射關系表,所述初始映射關系表記錄了所述服務器中至少一個傳感器名稱與表字段名之間的映射關系,不同服務器對應的初始映射表中使用相同的表字段名;執(zhí)行基于IPMI協(xié)議采集的數據轉化步驟以去除數據異構性,所述基于IPMI協(xié)議采集的數據轉化步驟包括:判斷解析出的所有被采集傳感器的名稱在所述初始映射關系表是否都有記錄,若是,則根據初始映射關系表建立被采集傳感器的數值與表字段名之間的目標映射關系表;若否,在所述初始映射關系表中增加新的表字段名,并建立所述新表字段名與未記錄的被采集傳感器名稱之間的映射關系;執(zhí)行所述根據初始映射關系表建立被采集傳感器的數值與表字段名之間的目標映射關系表的步驟;根據所述目標映射關系表,生成SQL語句將所述基于IPMI協(xié)議采集的數據存入數據庫。優(yōu)選的,所述根據解析出的服務器標識ID確定所述服務器對應的初始映射關系表包括:根據所述服務器標識ID以數據庫檢索的方式確定服務器型號標識;根據所述服務器型號標識確定所述服務器對應的初始映射關系表。優(yōu)選的,所述初始映射關系表以哈希索引表的方式建立,則根據所述服務器的型號確定所述服務器對應的初始映射表包括:根據服務器型號對應的標識,通過哈希方式查找所述預先存儲的初始映射關系表。優(yōu)選的,所述對采集的服務器運行數據進行解析,包括:根據Epoll方式獲取由可讀文件描述符組成的隊列;從可讀文件描述符隊列中獲取隊列頭指示的文件描述符;根據所述隊列頭指示的文件描述符獲取服務器運行原始數據,包括:從Socket中讀取預設個數的字節(jié),以確定 所述隊列頭指示的文件描述符描述的服務器運行數據的長度;根據確定的數據長度,從所 述文件描述符描述的文件中讀取該長度值的數據;根據預設數據格式從所述長度的數據中讀取服務器的原始數據。優(yōu)選的,若解析出的數據是基于簡單網絡管理SNMP協(xié)議采集的數據,執(zhí)行基于SNMP協(xié)議采集的數據的存儲步驟;所述基于SNMP協(xié)議采集的數據的存儲步驟包括:建立解析出的數據及所述解析出的數據對應的參數名稱之間的映射關系表;根據所述映射關系表中的狀態(tài)數據,通過SQL語句更新所述狀態(tài)數據在數據庫中的值;將所述映射關系表中的性能數據通過SQL語句存入數據庫。 優(yōu)選的,所述數據庫為關系型數據庫。本發(fā)明還提供一種集群系統(tǒng)中數據存儲裝置,其特征在于,所述裝置包括:數據解析模塊,用于對采集的服務器運行數據進行解析;初始映射表獲取模塊,用于解析出的數據是基于IPMI協(xié)議采集的數據時,根據解析出的服務器標識ID確定所述服務器對應的初始映射關系表,所述初始映射關系表記錄了所述服務器中至少一個傳感器名稱與表字段名之間的映射關系,不同服務器對應的初始映射表中使用相同的表字段名;第一執(zhí)行模塊,用于執(zhí)行基于IPMI協(xié)議采集的數據的轉化以去除數據的異構性,所述第一執(zhí)行模塊包括:判斷子模塊,用于判斷所有被采集傳感器的名稱在所述初始映射關系表是否都有記錄;生成子模塊,用于所述判斷子模塊的結果為是時,根據初始映射關系表建立被采集傳感器的數值與表字段名之間目標映射關系表;表字段名新增模塊,用于所述判斷子模塊的結果為否時,在所述初始映射關系表中增加新的表字段名,并建立所述新表字段名與未記錄的被采集傳感器名稱之間的映射關系;觸發(fā)子模塊,用于觸發(fā)所述生成子模塊。數據存儲模塊,用于根據所述目標映射關系表,生成SQL語句將所述基于IPMI協(xié)議采集的數據存入數據庫。優(yōu)選的,所述初始映射表獲取模塊包括:服務器型號標識確定子模塊,用于根據解析出的服務器標識ID以數據庫檢索的方式確定服務器型號標識;初始映射關系表確定子模塊,用于根據所述服務器型號標識確定所述服務器對應的初始映射關系表。優(yōu)選的,所述初始映射關系表以哈希索引表的方式建立,則初始映射關系表確定子模塊,具體用于根據服務器型號對應的標識,通過哈希方式查找所述預先存儲的初始映射關系表。優(yōu)選的,所述數據解析模塊包括:描述符隊列獲取子模塊,用于根據Epoll方式獲取由可讀文件描述符組成的隊列;描述符讀取子模 塊,用于從可讀文件描述符隊列中獲取隊列頭指示的文件描述符;原始數據讀取子模塊,用于根據所述隊列頭指示的文件描述符獲取服務器運行原始數據具體包括:從Socket中讀取預設個數的字節(jié),以確定所述隊列頭指示的文件描述符描述的服務器運行數據的長度;根據確定的數據長度,從所述文件描述符描述的文件中讀取該長度值的數據;根據預設數據格式從所述長度的數據中讀取服務器的原始數據。優(yōu)選的,所述裝置還包括:第二執(zhí)行模塊,用于解析出的數據是基于SNMP協(xié)議采集的數據時,執(zhí)行基于SNMP協(xié)議采集的數據的存儲;所述第二執(zhí)行模塊包括:映射關系表建立子模塊,用于解析出的數據是基于SNMP協(xié)議采集的數據時,建立解析出的數據及所述數據對應的參數名稱之間的映射關系表;狀態(tài)數據存儲子模塊,用于根據所述映射關系表中的狀態(tài)數據,通過SQL語句更新所述狀態(tài)數據在數據庫中的值;性能數據存儲子模塊,用于將所述映射關系表中的性能數據,通過SQL語句存入數據庫。本發(fā)明的技術方案中,集群中每個服務器都有對應的傳感器名稱與表字段名之間的初始映射關系表,然后根據所述初始關系映射表與采集的傳感器的數值建立目標映射關系表。所述目標映射關系表中記錄的是表字段名與被采集傳感器的數值之間的關系,通過初始映射關系表與目標映射關系表的比較可知,此時得到的目標映射關系表中僅僅有傳感器對應的數值與表字段名之間的映射關系,已經沒有傳感器名稱了。同時,本發(fā)明中對于每個服務器對應的初始映射表中使用的表字段名相同,至此,目標映射關系表中記錄的數據已經沒有異構性。如果將表字段名看作參數名稱的話,對應的傳感器數值就是參數值,這是一種簡單的一一對應關系,在存儲時,只要建立具有上述表字段名的一張表,然后將對應的采集值存放在對應的表字段名下即可。只不過對于不同的服務器來說,參數值代表的物理意義可能不同。目標映射關系表已經去掉了由傳感器名稱和個數不同帶來的數據異構性,此時,就可以采用統(tǒng)一的SQL語句將所述采集的服務器運行數據存入數據庫。通過本發(fā)明的技術方案可以將不同型號服務器基于IPMI協(xié)議的數據統(tǒng)一存儲在一張表中,對于維護人員來說,需要監(jiān)測集群整體的運行狀態(tài)時,只需要在同一張表中進行數據的讀取和比較,即使集群規(guī)模較大,在同一張表中查找數據進行比較的速度也是較快的,降低了集群的維護難度,提高了集群的維護效率。


為了更清楚地說明本申請實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請中記載的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。圖1為本發(fā)明一種集群系統(tǒng)中數據存儲方法實施例1的流程圖;圖2為本 發(fā)明一種集群系統(tǒng)中數據存儲方法實施例2的流程3為本發(fā)明一種集群系統(tǒng)中數據存儲方法實施例3的流程圖;圖4為本發(fā)明一種集群系統(tǒng)中數據存儲裝置實施例1的結構示意圖;圖5為本發(fā)明裝置實施例1中第一執(zhí)行模塊403的結構示意圖;圖6為本發(fā)明裝置實施例1中初始映射表獲取模塊402的結構示意圖;圖7為本發(fā)明一種集群系統(tǒng)中數據存儲裝置實施例2的結構示意圖;圖8為本發(fā)明裝置實施例2中數據解析模塊401的結構示意圖;圖9為本發(fā)明實施例在實際應用場景下的一種結構圖。
具體實施例方式為了使本技術領域的人員更好地理解本發(fā)明方案,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。本發(fā)明所有實施例中均以集群系統(tǒng)包括不同型號服務器為前提進行說明。參考圖1所示,為本發(fā)明提供的一種集群系統(tǒng)中數據存儲方法實施例1的流程圖,本實施例具體可以包括:步驟101:解析采集的服務器運行數據。實際應用場景下,服務器運行數據是按照一定的采集協(xié)議采集到的,采集完服務器運行數據后,需要對采集到的數據進行封裝,封裝后數據才能在信道中傳輸。所以在接收到服務器運行數據后首先要進行數據的解析,以獲取采集的服務器原始運行數據。關于數據的解析可以參考現有技術中數據解析的實現方式,這里不再贅述。步驟102:若解析出的數據是基于IPMI協(xié)議采集的數據,根據解析出的服務器標識ID確定所述服務器對應的初始映射關系表。如果解析出的數據是基于IPMI 協(xié)議(Intelligent Platform ManagementInterface,智能平臺管理接口)采集的數據,那么對應的不同型號服務器的基于IPMI協(xié)議采集到的數據存在異構性,為了去除數據的異構性,第一步就是獲取該服務器對應的初始映射關系表。具體的,根據解析出的基于IPMI協(xié)議采集的數據,可以通過數據解析獲取該服務器的ID (標識),然后通過數據庫檢索的方式獲取與該服務器ID對應的服務器型號(或者型號ID),最后,根據確定的服務器型號通過哈希方式查找到對應所述型號服務器的初始映射關系表。優(yōu)選的,所述初始映射關系表以哈希索引表方式建立,對于每個服務器可以預存一個初始映射關系表,在實際操作中,可以為每一種型號的服務器預存一個對應的初始映射關系表,并且不同型號服務器對應的初始映射關系表中使用相同的表字段名。或者,在每次解析完數據后,建立解析出的傳感器名稱與表字段名之間的映射關系表作為初始映射關系表。以預存每一種型號的服務器對應的初始映射關系表、集群中包括的其中兩種不同型號的服務器舉例來說,為了便于描述將所述型號分別記為第一型號和第二型號,參考表I所不由哈希索引表方式建立的第一型號服務器對應的初始映射關系表Al ;表2為由哈希索引表方式建立的第二型號服務器對應的初始映射關系表A2。表I初始映射關系表Al
權利要求
1.一種集群系統(tǒng)中數據存儲方法,其特征在于,所述方法包括: 對采集的服務器運行數據進行解析; 若解析出的數據是基于智能平臺管理IPMI協(xié)議采集的數據,根據解析出的服務器標識ID確定所述服務器對應的初始映射關系表,所述初始映射關系表記錄了所述服務器中至少一個傳感器名稱與表字段名之間的映射關系,不同服務器對應的初始映射表中使用相同的表字段名; 執(zhí)行基于IPMI協(xié)議采集的數據轉化步驟以去除數據異構性,所述基于IPMI協(xié)議采集的數據轉化步驟包括:判斷解析出的所有被采集傳感器的名稱在所述初始映射關系表是否都有記錄,若是,則根據初始映射關系表建立被采集傳感器的數值與表字段名之間的目標映射關系表;若否,在所述初始映射關系表中增加新的表字段名,并建立所述新表字段名與未記錄的被采集傳感器名稱之間的映射關系;執(zhí)行所述根據初始映射關系表建立被采集傳感器的數值與表字段名之間的目標映射關系表的步驟; 根據所述目標映射關系表,生成SQL語句將所述基于IPMI協(xié)議采集的數據存入數據庫。
2.根據權利要求1所述的方法,其特征在于,所述根據解析出的服務器標識ID確定所述服務器對應的初始映射關系表包括: 根據所述服務器標識ID以數據庫檢索的方式確定服務器型號標識; 根據所述服務器型號標識確定所述服務器對應的初始映射關系表。
3.根據權利要求2所述的方法,其特征在于,所述初始映射關系表以哈希索引表的方式建立,則根據所述服務器的型號確定所述服務器對應的初始映射表包括:根據服務器型號對應的標識,通過哈希方式查找所述預先存儲的初始映射關系表。
4.根據權利要求1所述的方法,其特征在于,所述對采集的服務器運行數據進行解析,包括: 根據Epoll方式獲取由可讀文件描述符組成的隊列; 從可讀文件描述符隊列中獲取隊列頭指示的文件描述符; 根據所述隊列頭指示的文件描述符獲取服務器運行原始數據,包括=WSocket中讀取預設個數的字節(jié),以確定所述隊列頭指示的文件描述符描述的服務器運行數據的長度;根據確定的數據長度,從所述文件描述符描述的文件中讀取該長度值的數據;根據預設數據格式從所述長度的數據中讀取服務器的原始數據。
5.根據權利要求1所述的方法,其特征在于,若解析出的數據是基于簡單網絡管理SNMP協(xié)議采集的數據,執(zhí)行基于SNMP協(xié)議采集的數據的存儲步驟; 所述基于SNMP協(xié)議采集的數據的存儲步驟包括:建立解析出的數據及所述解析出的數據對應的參數名稱之間的映射關系表;根據所述映射關系表中的狀態(tài)數據,通過SQL語句更新所述狀態(tài)數據在數據庫中的值;將所述映射關系表中的性能數據通過SQL語句存入數據庫。
6.根據權利要求1-5任一項所述的方法,其特征在于,所述數據庫為關系型數據庫。
7.一種集群系統(tǒng)中數據存儲裝置,其特征在于,所述裝置包括: 數據解析模塊,用于對采集的服務器運行數據進行解析; 初始映射表獲取模塊,用于解析出的數據是基于IPMI協(xié)議采集的數據時,根據解析出的服務器標識ID確定所述服務器對應的初始映射關系表,所述初始映射關系表記錄了所述服務器中至少一個傳感器名稱與表字段名之間的映射關系,不同服務器對應的初始映射表中使用相同的表字段名; 第一執(zhí)行模塊,用于執(zhí)行基于IPMI協(xié)議采集的數據的轉化以去除數據的異構性,所述第一執(zhí)行模塊包括:判斷子模塊,用于判斷所有被采集傳感器的名稱在所述初始映射關系表是否都有記錄;生成子模塊,用于所述判斷子模塊的結果為是時,根據初始映射關系表建立被采集傳感器的數值與表字段名之間目標映射關系表;表字段名新增模塊,用于所述判斷子模塊的結果為否時,在所述初始映射關系表中增加新的表字段名,并建立所述新表字段名與未記錄的被采集傳感器名稱之間的映射關系;觸發(fā)子模塊,用于觸發(fā)所述生成子模塊。
數據存儲模塊,用于根據所述目標映射關系表,生成SQL語句將所述基于IPMI協(xié)議采集的數據存入數據庫。
8.根據權利要求7所述的裝置,其特征在于,所述初始映射表獲取模塊包括: 服務器型號標識確定子模塊,用于根據解析出的服務器標識ID以數據庫檢索的方式確定服務器型號標識; 初始映射關系表確定子模塊,用于根據所述服務器型號標識確定所述服務器對應的初始映射關系表。
9.根據權利要求8所述的裝置, 其特征在于,所述初始映射關系表以哈希索引表的方式建立,則初始映射關系表確定子模塊,具體用于根據服務器型號對應的標識,通過哈希方式查找所述預先存儲的初始映射關系表。
10.根據權利要求7所述的裝置,其特征在于,所述數據解析模塊包括: 描述符隊列獲取子模塊,用于根據Epoll方式獲取由可讀文件描述符組成的隊列; 描述符讀取子模塊,用于從可讀文件描述符隊列中獲取隊列頭指示的文件描述符; 原始數據讀取子模塊,用于根據所述隊列頭指示的文件描述符獲取服務器運行原始數據具體包括:從Socket中讀取預設個數的字節(jié),以確定所述隊列頭指示的文件描述符描述的服務器運行數據的長度;根據確定的數據長度,從所述文件描述符描述的文件中讀取該長度值的數據;根據預設數據格式從所述長度的數據中讀取服務器的原始數據。
11.根據權利要求7所述的裝置,其特征在于,所述裝置還包括: 第二執(zhí)行模塊,用于解析出的數據是基于SNMP協(xié)議采集的數據時,執(zhí)行基于SNMP協(xié)議采集的數據的存儲; 所述第二執(zhí)行模塊包括:映射關系表建立子模塊,用于解析出的數據是基于SNMP協(xié)議采集的數據時,建立解析出的數據及所述數據對應的參數名稱之間的映射關系表;狀態(tài)數據存儲子模塊,用于根據所述映射關系表中的狀態(tài)數據,通過SQL語句更新所述狀態(tài)數據在數據庫中的值;性能數據存儲子模塊,用于將所述映射關系表中的性能數據,通過SQL語句存入數據庫。
全文摘要
本發(fā)明公開了一種集群系統(tǒng)中數據的存儲方法與裝置,所述方法包括對采集的服務器運行數據進行解析;若解析出的數據是基于IPMI協(xié)議采集的數據,根據解析出的服務器標識ID確定對應的初始映射關系表;執(zhí)行基于IPMI協(xié)議采集的數據的轉化步驟,以去除數據異構性;建立所有被采集傳感器的數值與表字段名之間的目標映射關系表;根據所述目標映射關系表,生成SQL語句將所述采集的服務器運行數據存入數據庫。本發(fā)明中,通過設置不同服務器初始映射關系表和建立服務器目標映射關系表的形式去除了數據的異構性,將所有服務器運行數據集中存儲,便于數據的統(tǒng)一管理和集群的維護。
文檔編號G06F17/30GK103235820SQ201310153509
公開日2013年8月7日 申請日期2013年4月27日 優(yōu)先權日2013年4月27日
發(fā)明者周星, 欒利剛, 彭毅 申請人:北京搜狐新媒體信息技術有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1