[發(fā)明專利]一種歷史數(shù)據(jù)收集及存儲(chǔ)的方法在審
| 申請(qǐng)?zhí)枺?/td> | 201710272937.8 | 申請(qǐng)日: | 2017-04-24 |
| 公開(公告)號(hào): | CN107273403A | 公開(公告)日: | 2017-10-20 |
| 發(fā)明(設(shè)計(jì))人: | 王培財(cái);劉奮民 | 申請(qǐng)(專利權(quán))人: | 西安電子科技大學(xué) |
| 主分類號(hào): | G06F17/30 | 分類號(hào): | G06F17/30 |
| 代理公司: | 西安長(zhǎng)和專利代理有限公司61227 | 代理人: | 黃偉洪 |
| 地址: | 710071 陜西省*** | 國(guó)省代碼: | 陜西;61 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 歷史數(shù)據(jù) 收集 存儲(chǔ) 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明屬于自動(dòng)化控制技術(shù)領(lǐng)域,尤其涉及一種用于從實(shí)時(shí)數(shù)據(jù)庫中獲取歷史數(shù)據(jù)并高效管理的文件格式存放數(shù)據(jù)的方法。
背景技術(shù)
現(xiàn)代自動(dòng)化控制系統(tǒng)規(guī)模越來越大,處理能力越來越強(qiáng)。其支持的點(diǎn)數(shù)數(shù)也越來越多。由此產(chǎn)生的數(shù)據(jù)量就更加龐大。歷史數(shù)據(jù)庫負(fù)責(zé)數(shù)據(jù)的收集,將需要的數(shù)據(jù)保存到磁盤上,并提供查詢。
目前,自動(dòng)化控制系統(tǒng)的歷史數(shù)據(jù)庫大多采用成熟的商用數(shù)據(jù)庫,如ACCESS、SQL SERVER、Oracle、Sybase等。但是,對(duì)于提供趨勢(shì)查詢的歷史數(shù)據(jù)庫,由于對(duì)變化較快的過程量,其采樣頻率也相應(yīng)的增高,比如一秒,這樣對(duì)于有上萬個(gè)點(diǎn)的系統(tǒng)來說,其一天的數(shù)據(jù)條數(shù)將達(dá)到億級(jí)別。這樣高的數(shù)據(jù)量和頻率,如果用商用數(shù)據(jù)庫來存儲(chǔ)管理,那將會(huì)是一個(gè)很大的負(fù)擔(dān),占用過多的系統(tǒng)資源,同時(shí),商用數(shù)據(jù)庫不能滿足歷史數(shù)據(jù)收集的時(shí)限性要求。而且,商業(yè)數(shù)據(jù)庫不提供壓縮功能,這對(duì)不斷增多的歷史數(shù)據(jù)存儲(chǔ)是個(gè)很大的難題。
另外,歷史數(shù)據(jù)的存儲(chǔ)主要依賴硬盤,但對(duì)于有大量的存盤數(shù)據(jù),存盤速度對(duì)高頻率訪問硬盤的影響是不利的。
發(fā)明內(nèi)容
針對(duì)現(xiàn)有技術(shù)存在的問題,本發(fā)明提供了一種歷史數(shù)據(jù)收集及存儲(chǔ)的方法。
本發(fā)明是這樣實(shí)現(xiàn)的,一種歷史數(shù)據(jù)收集及存儲(chǔ)的方法,提供一種自定義的數(shù)據(jù)存儲(chǔ)文件格式,通過緩沖區(qū)來減少磁盤I/O次數(shù)和提高系統(tǒng)的實(shí)時(shí)性能,通過新的文件存儲(chǔ)格式和文件存放組織形式來提高數(shù)據(jù)查詢效率,并且可通過壓縮工具來壓縮數(shù)據(jù)以減少磁盤空間占用。
為了實(shí)現(xiàn)上述目的,本發(fā)明的實(shí)施例提出了一種歷史數(shù)據(jù)收集及存儲(chǔ)的方法,在系統(tǒng)開機(jī)時(shí),歷史服務(wù)進(jìn)程啟動(dòng)。首先加載全變量歷史庫收集索引表,該表由工程師站組態(tài)編譯下裝而來。根據(jù)采集點(diǎn)個(gè)數(shù)和數(shù)據(jù)值存儲(chǔ)大小以及采集周期來確定待采集數(shù)據(jù)的十分鐘大小,并據(jù)此創(chuàng)建兩個(gè)內(nèi)存緩沖區(qū)。然后對(duì)收集索引表進(jìn)行初始化;程序運(yùn)行時(shí)根據(jù)索引表周期收集各個(gè)點(diǎn)項(xiàng)的數(shù)據(jù)值并記錄數(shù)據(jù)庫信息。運(yùn)行時(shí)要周期性判斷當(dāng)前的收集內(nèi)存區(qū)是否滿十分鐘,當(dāng)滿十分鐘時(shí),就要進(jìn)行換區(qū),空的用來存儲(chǔ)新的數(shù)據(jù),滿的則轉(zhuǎn)儲(chǔ)到磁盤文件。這樣兩個(gè)緩沖區(qū),交替進(jìn)行收集和轉(zhuǎn)儲(chǔ)。
進(jìn)一步,每個(gè)磁盤文件都是一個(gè)獨(dú)立的文件,他們有自己的索引結(jié)構(gòu),用來獨(dú)立提供對(duì)本文件數(shù)據(jù)點(diǎn)的查詢,即根據(jù)索引表和給定時(shí)刻就可以確定某個(gè)點(diǎn)的數(shù)據(jù)在整十分鐘的位置。
進(jìn)一步,以日期來命名文件夾,具體是xxx年xx月xx日,文件夾下包含當(dāng)天所有的整十分鐘數(shù)據(jù)文件。每個(gè)磁盤文件的命名是該文件的收集起始時(shí)刻在一天24小時(shí)中所處的第幾個(gè)十分鐘的序號(hào)來命名的,這樣查詢時(shí),根據(jù)查詢時(shí)間,可以快速定位到目標(biāo)文件,提高查詢效率。
進(jìn)一步,開機(jī)時(shí),歷史庫進(jìn)程讀入組態(tài)生成的索引文件到內(nèi)存,并根據(jù)索引文件初始化各索引部分。
進(jìn)一步,根據(jù)所有需要收集數(shù)值的變量個(gè)數(shù)和采集周期以及每個(gè)值的大小,確定十分鐘內(nèi)存數(shù)值緩沖區(qū)的大小,然后據(jù)此創(chuàng)建兩個(gè)相應(yīng)大小的內(nèi)存緩沖區(qū);
進(jìn)一步,包括兩個(gè)內(nèi)存緩沖區(qū),分別為#0和#1號(hào)區(qū),當(dāng)一個(gè)收集滿時(shí),另一個(gè)開始收集,收集滿的則開始轉(zhuǎn)儲(chǔ)到磁盤文件,一個(gè)緩沖區(qū)存儲(chǔ)為一個(gè)獨(dú)立的磁盤文件;根據(jù)數(shù)據(jù)收集時(shí)間的起始時(shí)刻折算成其在24小時(shí)中處于第幾個(gè)整十分鐘,以此序號(hào)作為文件名,檢索時(shí)提供查詢時(shí)間便可快速定位到目標(biāo)數(shù)據(jù)所在的文件;滿十分鐘的緩沖區(qū)轉(zhuǎn)儲(chǔ)時(shí),每個(gè)數(shù)據(jù)文件都有自己一份復(fù)制的數(shù)據(jù)索引結(jié)構(gòu),可以單獨(dú)提供索引查詢。
本發(fā)明的優(yōu)點(diǎn)和積極效果:較之以往的設(shè)計(jì)只用一個(gè)內(nèi)存緩沖區(qū)的方式,本發(fā)明采用兩個(gè)內(nèi)存緩沖區(qū)的方式,交替用來收集,收集滿了就轉(zhuǎn)儲(chǔ)為磁盤文件,這樣可以確保收集過程中,數(shù)據(jù)不會(huì)丟失,且存儲(chǔ)過程可以以低優(yōu)先級(jí)進(jìn)行,盡最大程度滿足了歷史數(shù)據(jù)收集的時(shí)限性。再者,根據(jù)本發(fā)明的索引結(jié)構(gòu),做到了歷史數(shù)據(jù)的收集完全是基于時(shí)間,這樣在查詢時(shí)也只需根據(jù)時(shí)間即可定位到目標(biāo)數(shù)據(jù),大大降低了系統(tǒng)的復(fù)雜性;本設(shè)計(jì)的索引結(jié)構(gòu)一般只有幾百K 到幾M,這占用非常小的系統(tǒng)內(nèi)存,同時(shí)通過索引結(jié)構(gòu)來代替歷史數(shù)據(jù)的時(shí)間戳的方法,可以大大降低存儲(chǔ)空間的需求。以往的設(shè)計(jì)是所有的磁盤歷史數(shù)據(jù)索引共用一個(gè)大的索引結(jié)構(gòu),本發(fā)明改為每個(gè)文件自帶一個(gè)小的索引結(jié)構(gòu),這樣可以保證在工程變更,索引結(jié)構(gòu)變化后,以前的文件還能夠獨(dú)立查詢而不受影響。本發(fā)明提供的方法能夠保證歷史數(shù)據(jù)的收集的實(shí)時(shí)性,方便歷史數(shù)據(jù)的管理和查詢,提高系統(tǒng)性能。
附圖說明
圖1本發(fā)明提供的歷史數(shù)據(jù)收集及存儲(chǔ)的方法收集表圖;
圖2本發(fā)明提供的收集類型表結(jié)構(gòu)圖;
圖3本發(fā)明提供的收集組表圖;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于西安電子科技大學(xué),未經(jīng)西安電子科技大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710272937.8/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F17-00 特別適用于特定功能的數(shù)字計(jì)算設(shè)備或數(shù)據(jù)處理設(shè)備或數(shù)據(jù)處理方法
G06F17-10 .復(fù)雜數(shù)學(xué)運(yùn)算的
G06F17-20 .處理自然語言數(shù)據(jù)的
G06F17-30 .信息檢索;及其數(shù)據(jù)庫結(jié)構(gòu)
G06F17-40 .數(shù)據(jù)的獲取和記錄
G06F17-50 .計(jì)算機(jī)輔助設(shè)計(jì)
- 一種推薦系統(tǒng)及推薦方法
- 一種通訊終端快捷訪問歷史數(shù)據(jù)的裝置及方法
- 歷史數(shù)據(jù)歸檔方法及歷史數(shù)據(jù)歸檔裝置
- 一種實(shí)時(shí)數(shù)據(jù)庫的存儲(chǔ)方法
- 一種數(shù)據(jù)拆分存儲(chǔ)方法及裝置
- 一種機(jī)電設(shè)備物聯(lián)網(wǎng)系統(tǒng)中減少服務(wù)器壓力的方法
- 一種歷史數(shù)據(jù)輸出處理方法及裝置
- 歷史數(shù)據(jù)的清理方法及其系統(tǒng)、存儲(chǔ)介質(zhì)、電子設(shè)備
- 一種實(shí)現(xiàn)業(yè)務(wù)通用歷史數(shù)據(jù)管理的系統(tǒng)及其方法
- 基于統(tǒng)一支撐平臺(tái)的電網(wǎng)歷史數(shù)據(jù)管理方法及系統(tǒng)
- 動(dòng)態(tài)存儲(chǔ)管理裝置及方法
- 一種存儲(chǔ)方法、服務(wù)器及存儲(chǔ)控制器
- 一種基于存儲(chǔ)系統(tǒng)的控制方法及裝置
- 一種信息的存儲(chǔ)控制方法
- 一種數(shù)據(jù)存儲(chǔ)方法及裝置
- 數(shù)據(jù)存儲(chǔ)方法、裝置、計(jì)算機(jī)設(shè)備以及存儲(chǔ)介質(zhì)
- 一種數(shù)據(jù)存儲(chǔ)控制方法及裝置
- 存儲(chǔ)設(shè)備、存儲(chǔ)系統(tǒng)及存儲(chǔ)方法
- 物料存儲(chǔ)方法及系統(tǒng)
- 基于雙芯智能電表的數(shù)據(jù)分類存儲(chǔ)方法和裝置
- 一種數(shù)據(jù)庫讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





