欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

時(shí)序類型數(shù)據(jù)存取方法

文檔序號(hào):6552519閱讀:453來源:國(guó)知局
時(shí)序類型數(shù)據(jù)存取方法
【專利摘要】本發(fā)明提供一種時(shí)序類型數(shù)據(jù)存取方法,其中,存儲(chǔ)方法包括:接收原始數(shù)據(jù);判斷原始數(shù)據(jù)來源:對(duì)于實(shí)時(shí)數(shù)據(jù),根據(jù)系統(tǒng)配置項(xiàng)的配置,判斷是否需要壓縮處理;對(duì)于歷史數(shù)據(jù),則直接存放在主內(nèi)存緩沖區(qū)中;當(dāng)主內(nèi)存緩沖區(qū)的內(nèi)存使用達(dá)到預(yù)設(shè)的限值,切換內(nèi)存緩沖區(qū)主備,即切換主內(nèi)存緩沖區(qū)和備用內(nèi)存緩沖區(qū);將備用內(nèi)存緩沖區(qū)數(shù)據(jù)按照測(cè)點(diǎn)分塊連續(xù)寫入相應(yīng)日歷史文件尾部,并在寫入文件塊中記錄前一數(shù)據(jù)塊的地址信息;和更新日索引文件最后文件塊的地址。本發(fā)明的數(shù)據(jù)查詢處理采用高速緩存處理機(jī)制,它將最近訪問過的測(cè)點(diǎn)日數(shù)據(jù)緩存在內(nèi)存中,從而提高了訪問過測(cè)點(diǎn)的日數(shù)據(jù)相關(guān)數(shù)據(jù)訪問接口效率。
【專利說明】時(shí)序類型數(shù)據(jù)存取方法

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)處理領(lǐng)域,尤其涉及一種時(shí)序(基于時(shí)間序列)類型數(shù)據(jù)高速存取方法。

【背景技術(shù)】
[0002]傳統(tǒng)的時(shí)序數(shù)據(jù)庫,底層數(shù)據(jù)處理引擎會(huì)有兩種處理方式,一種是采用常規(guī)的小型嵌入式關(guān)系數(shù)據(jù)庫引擎;另一種是采用基于鍵值對(duì)方式的NoSQL數(shù)據(jù)處理引擎。
[0003]其中,NoSQL數(shù)據(jù)存儲(chǔ)不需要固定的表結(jié)構(gòu),通常也不存在Join連接操作,在大數(shù)據(jù)存取上具備關(guān)系型數(shù)據(jù)庫無法比擬的性能優(yōu)勢(shì)。
[0004]但這兩種數(shù)據(jù)處理引擎,其底層都是基于B+樹處理方式,而B+樹算法會(huì)出現(xiàn)隨著數(shù)據(jù)量的大量增加,樹深度會(huì)加大,頁面分裂更頻繁,從而出現(xiàn)寫入和讀取性能顯著下降,無法滿足高速存取的性能要求。


【發(fā)明內(nèi)容】

[0005]本發(fā)明要解決的技術(shù)問題是,針對(duì)現(xiàn)有技術(shù)的不足,提供一種時(shí)序類型數(shù)據(jù)高速存取方法。
[0006]根據(jù)本發(fā)明一個(gè)方面,提供一種時(shí)序類型數(shù)據(jù)高速存儲(chǔ)方法,包括:接收原始數(shù)據(jù);判斷原始數(shù)據(jù)來源:對(duì)于實(shí)時(shí)數(shù)據(jù),根據(jù)系統(tǒng)配置項(xiàng)的配置,判斷是否需要壓縮處理,如果需要壓縮處理則采用數(shù)據(jù)過濾算法過濾掉冗余點(diǎn)并且將處理后的數(shù)據(jù)存放在主內(nèi)存緩沖區(qū)中,如果不需要壓縮處理則直接存放在主內(nèi)存緩沖區(qū)中;對(duì)于歷史數(shù)據(jù),則直接存放在主內(nèi)存緩沖區(qū)中;當(dāng)主內(nèi)存緩沖區(qū)的內(nèi)存使用達(dá)到預(yù)設(shè)的限值,切換內(nèi)存緩沖區(qū)主備,即切換主內(nèi)存緩沖區(qū)和備用內(nèi)存緩沖區(qū);將備用內(nèi)存緩沖區(qū)數(shù)據(jù)按照測(cè)點(diǎn)分塊連續(xù)寫入相應(yīng)日歷史文件尾部,并在寫入文件塊中記錄前一數(shù)據(jù)塊的地址信息,從而形成一個(gè)反向測(cè)點(diǎn)數(shù)據(jù)塊鏈;和更新日索引文件最后文件塊的地址;其中,存放在主、備內(nèi)存緩沖區(qū)中的數(shù)據(jù)為根據(jù)時(shí)間進(jìn)行排序的數(shù)據(jù)。
[0007]可選的,時(shí)序類型數(shù)據(jù)高速存儲(chǔ)方法還包括:如果當(dāng)所述主內(nèi)存緩沖區(qū)已滿而所述備用內(nèi)存緩沖區(qū)還沒有存盤完畢,則對(duì)主內(nèi)存緩沖區(qū)進(jìn)行擴(kuò)容。
[0008]根據(jù)本發(fā)明另一個(gè)方面,提供一種時(shí)序類型數(shù)據(jù)高速讀取方法,包括:根據(jù)要獲取測(cè)點(diǎn)數(shù)據(jù)的日期和測(cè)點(diǎn)ID生成一個(gè)合成主鍵;和根據(jù)此主鍵在歷史數(shù)據(jù)緩存字典表中進(jìn)行查詢,如果在歷史數(shù)據(jù)緩存字典表中存在此主鍵,則直接可以獲取日歷史數(shù)據(jù)序列值,然后可以根據(jù)查詢時(shí)間范圍從日歷史數(shù)據(jù)值中抽取相應(yīng)查詢數(shù)據(jù)。
[0009]可選的,時(shí)序類型數(shù)據(jù)高速讀取方法還包括:如果在數(shù)據(jù)緩存表中不存在此主鍵,則從日歷史文件中來讀取歷史數(shù)據(jù),包括:讀取日索引文件,獲取歷史數(shù)據(jù)最后文件塊地址;通過反向測(cè)點(diǎn)數(shù)據(jù)塊鏈將此ID的整日歷史數(shù)據(jù)塊全部讀取出來;根據(jù)時(shí)間進(jìn)行排序,整理后的日歷史數(shù)據(jù)使用先前的合成主鍵放入到歷史數(shù)據(jù)緩存字典表中;和根據(jù)查詢時(shí)間范圍從日歷史數(shù)據(jù)序列值中抽取相應(yīng)查詢數(shù)據(jù)。
[0010]與現(xiàn)有技術(shù)相比,本發(fā)明的數(shù)據(jù)查詢處理采用高速緩存處理機(jī)制,它將最近訪問過的測(cè)點(diǎn)日數(shù)據(jù)緩存在內(nèi)存中,從而提高了訪問過測(cè)點(diǎn)的日數(shù)據(jù)相關(guān)數(shù)據(jù)訪問接口效率,包括歷史數(shù)據(jù)、斷面數(shù)據(jù)等的訪問。

【專利附圖】

【附圖說明】
[0011]圖1是根據(jù)本發(fā)明一個(gè)實(shí)施例提供的歷史數(shù)據(jù)文件結(jié)構(gòu)示意圖;
[0012]圖2是根據(jù)本發(fā)明另一個(gè)實(shí)施例提供的數(shù)據(jù)存儲(chǔ)和讀取流程圖。

【具體實(shí)施方式】
[0013]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖,對(duì)本發(fā)明進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0014]發(fā)明人經(jīng)研究發(fā)現(xiàn),基于B+樹方式更適合于在同一個(gè)大數(shù)據(jù)文件中進(jìn)行處理,而將歷史數(shù)據(jù)按照自然天方式分文件存儲(chǔ)能夠保證數(shù)據(jù)量增加的情況下存取性能不會(huì)出現(xiàn)下降趨勢(shì),同時(shí)更適合于業(yè)務(wù)系統(tǒng)的應(yīng)用需求。
[0015]基于上述發(fā)現(xiàn),根據(jù)本發(fā)明一個(gè)實(shí)施例,提供一種歷史文件結(jié)構(gòu),如圖1所示。
[0016]其中,索引文件結(jié)構(gòu)采用簡(jiǎn)單高效的連續(xù)文件數(shù)組方式,測(cè)點(diǎn)(即采集點(diǎn),如采集電壓、電流)ID與數(shù)組序號(hào)對(duì)應(yīng),數(shù)組內(nèi)存儲(chǔ)每個(gè)測(cè)點(diǎn)日文件最后歷史數(shù)據(jù)塊的地址信息,當(dāng)為O時(shí)表示沒有歷史數(shù)據(jù)。這樣可以保證一次磁盤讀取操作就可以獲取到索引信息,如果采用索引緩存處理機(jī)制則無需磁盤操作即可獲取索引信息。
[0017]其中,歷史數(shù)據(jù)文件的結(jié)構(gòu)方式為反向數(shù)據(jù)塊鏈表結(jié)構(gòu)(只能從最后遍歷到最前),最后一個(gè)數(shù)據(jù)塊中記錄前一個(gè)數(shù)據(jù)塊地址,一直到塊頭為止。這種方式的優(yōu)勢(shì)在于存儲(chǔ)歷史數(shù)據(jù)時(shí)候可以連續(xù)寫入日歷史文件尾部,因?yàn)闆]有反復(fù)的文件訪問定位,從而使數(shù)據(jù)寫入效率可以達(dá)到磁盤處理的最高效率;也方便數(shù)據(jù)塊碎片整理,可以在歷史數(shù)據(jù)存儲(chǔ)穩(wěn)定以后對(duì)整個(gè)日歷史文件進(jìn)行重新整理,如將分散的數(shù)據(jù)塊鏈表整合成連續(xù)存儲(chǔ),也可以重新過濾歷史數(shù)據(jù),去除冗余點(diǎn),并可以根據(jù)需要精簡(jiǎn)歷史數(shù)據(jù),從而提高數(shù)據(jù)訪問效率。
[0018]根據(jù)本發(fā)明一個(gè)實(shí)施例,提供一種處理基于時(shí)序類型數(shù)據(jù)高速存儲(chǔ)方法,例如調(diào)度自動(dòng)化系統(tǒng)的數(shù)據(jù)采集和存儲(chǔ),如圖2所示的數(shù)據(jù)存貯流程,數(shù)據(jù)存儲(chǔ)方法包括:
[0019]S11、接收原始數(shù)據(jù),例如持續(xù)接收原始數(shù)據(jù);
[0020]S12、判斷原始數(shù)據(jù)來源:
[0021]如果是實(shí)時(shí)數(shù)據(jù),則根據(jù)系統(tǒng)配置項(xiàng)的配置,判斷是否需要壓縮處理,如果需要,則采用旋轉(zhuǎn)門壓縮算法處理,如果不需要?jiǎng)t與歷史數(shù)據(jù)一樣處理,采用旋轉(zhuǎn)門壓縮算法進(jìn)行數(shù)據(jù)過濾,處理后的數(shù)據(jù)會(huì)存放在內(nèi)存緩沖區(qū)中;其中,旋轉(zhuǎn)門壓縮算法是一種直線趨勢(shì)化壓縮算法,在本發(fā)明其他實(shí)施例中,亦可采用其他數(shù)據(jù)過濾算法來過濾掉冗余點(diǎn);
[0022]如果是歷史數(shù)據(jù),則不需要數(shù)據(jù)過濾,直接存放在內(nèi)存緩沖區(qū)中;
[0023]根據(jù)本發(fā)明一個(gè)實(shí)施例,對(duì)于存放在內(nèi)存緩沖區(qū)中的數(shù)據(jù),根據(jù)時(shí)間進(jìn)行排序,例如插入時(shí)就排序處理,一方面能夠提高數(shù)據(jù)寫入效率,另一方面也提高了這部分?jǐn)?shù)據(jù)的訪問效率;
[0024]S13、當(dāng)主內(nèi)存緩沖區(qū)內(nèi)存使用到一定限值(可以根據(jù)系統(tǒng)內(nèi)存大小來設(shè)定限值)的情況下,切換內(nèi)存緩沖區(qū)主備,即將當(dāng)前主內(nèi)存緩沖區(qū)設(shè)置成備用內(nèi)存緩沖區(qū),而將原備用的空內(nèi)存緩沖區(qū)設(shè)置成主內(nèi)存緩沖區(qū)用于繼續(xù)處理接收數(shù)據(jù);
[0025]另外,如果當(dāng)主內(nèi)存緩沖區(qū)已滿而備內(nèi)存緩沖區(qū)還沒有存盤完畢,則主內(nèi)存緩沖區(qū)會(huì)適當(dāng)擴(kuò)容,當(dāng)容量超過一定比例時(shí)會(huì)阻塞數(shù)據(jù)的接收處理,直到備內(nèi)存緩沖區(qū)處理完畢;
[0026]S14、將備用內(nèi)存緩沖區(qū)數(shù)據(jù)按照測(cè)點(diǎn)分塊連續(xù)寫入相應(yīng)日歷史文件(歷史文件以日為單位)尾部,并在寫入文件塊中記錄前一數(shù)據(jù)塊的地址信息,從而形成一個(gè)反向測(cè)點(diǎn)數(shù)據(jù)塊鏈;
[0027]S15、更新日索引文件(索引文件以日為單位)最后文件塊的地址。
[0028]其中,對(duì)于步驟S14-S15,例如,id為3的測(cè)點(diǎn),從備用內(nèi)存緩沖區(qū)將此測(cè)點(diǎn)的排序后的歷史數(shù)據(jù)提取出來形成一個(gè)數(shù)據(jù)塊,此數(shù)據(jù)塊的塊頭記錄此測(cè)點(diǎn)前一數(shù)據(jù)塊的地址信息,將此數(shù)據(jù)塊寫入到日歷史文件尾部,并更新日索引文件中id為3的最后文件塊地址。
[0029]根據(jù)本發(fā)明一個(gè)實(shí)施例,提供一種基于時(shí)間序列類型數(shù)據(jù)高速讀取方法,如圖2所示的數(shù)據(jù)讀取流程,數(shù)據(jù)讀取方法包括:
[0030]S21、根據(jù)要獲取測(cè)點(diǎn)數(shù)據(jù)的日期和測(cè)點(diǎn)ID(唯一標(biāo)識(shí)碼)生成一個(gè)合成主鍵;
[0031]S22、根據(jù)此主鍵在歷史數(shù)據(jù)緩存字典表中進(jìn)行查詢:
[0032]如果在歷史數(shù)據(jù)緩存字典表中存在此主鍵,則直接可以獲取日歷史數(shù)據(jù)序列值,然后可以根據(jù)查詢時(shí)間范圍從日歷史數(shù)據(jù)值中抽取相應(yīng)查詢數(shù)據(jù);
[0033]如果在數(shù)據(jù)緩存表中不存在此主鍵,則從日歷史文件中來讀取歷史數(shù)據(jù),包括:
[0034](I)讀取日索引文件,獲取歷史數(shù)據(jù)最后文件塊地址,
[0035](2)通過反向測(cè)點(diǎn)數(shù)據(jù)塊鏈將此ID的整日歷史數(shù)據(jù)塊全部讀取出來,
[0036](3)根據(jù)時(shí)間進(jìn)行排序,整理后的日歷史數(shù)據(jù)使用先前的合成主鍵放入到歷史數(shù)據(jù)緩存字典表中,
[0037](4)根據(jù)查詢時(shí)間范圍從日歷史數(shù)據(jù)序列值中抽取相應(yīng)查詢數(shù)據(jù)。
[0038]本發(fā)明的數(shù)據(jù)查詢處理采用高速緩存處理機(jī)制,它將最近訪問過的測(cè)點(diǎn)日數(shù)據(jù)緩存在內(nèi)存中,從而提高了訪問過測(cè)點(diǎn)的日數(shù)據(jù)相關(guān)數(shù)據(jù)訪問接口效率,包括歷史數(shù)據(jù)、斷面數(shù)據(jù)等的訪問。
[0039]應(yīng)該注意到并理解,在不脫離后附的權(quán)利要求所要求的本發(fā)明的精神和范圍的情況下,能夠?qū)ι鲜鲈敿?xì)描述的本發(fā)明做出各種修改和改進(jìn)。因此,要求保護(hù)的技術(shù)方案的范圍不受所給出的任何特定示范教導(dǎo)的限制。
【權(quán)利要求】
1.一種時(shí)序類型數(shù)據(jù)存儲(chǔ)方法,包括: 接收原始數(shù)據(jù); 判斷原始數(shù)據(jù)來源:對(duì)于實(shí)時(shí)數(shù)據(jù),根據(jù)系統(tǒng)配置項(xiàng)的配置,判斷是否需要壓縮處理,如果需要壓縮處理則采用數(shù)據(jù)過濾算法過濾掉冗余點(diǎn)并且將處理后的數(shù)據(jù)存放在主內(nèi)存緩沖區(qū)中,如果不需要壓縮處理則直接存放在主內(nèi)存緩沖區(qū)中;對(duì)于歷史數(shù)據(jù),則直接存放在主內(nèi)存緩沖區(qū)中; 當(dāng)主內(nèi)存緩沖區(qū)的內(nèi)存使用達(dá)到預(yù)設(shè)的限值,切換內(nèi)存緩沖區(qū)主備,即切換主內(nèi)存緩沖區(qū)和備用內(nèi)存緩沖區(qū); 將備用內(nèi)存緩沖區(qū)數(shù)據(jù)按照測(cè)點(diǎn)分塊連續(xù)寫入相應(yīng)日歷史文件尾部,并在寫入文件塊中記錄前一數(shù)據(jù)塊的地址信息,從而形成一個(gè)反向測(cè)點(diǎn)數(shù)據(jù)塊鏈;和更新日索引文件最后文件塊的地址; 其中,存放在主、備內(nèi)存緩沖區(qū)中的數(shù)據(jù)為根據(jù)時(shí)間進(jìn)行排序的數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的時(shí)序類型數(shù)據(jù)存儲(chǔ)方法,其中,所述數(shù)據(jù)過濾算法為直線趨勢(shì)化壓縮算法。
3.根據(jù)權(quán)利要求2所述的時(shí)序類型數(shù)據(jù)存儲(chǔ)方法,其中,所述數(shù)據(jù)過濾算法為旋轉(zhuǎn)門壓縮算法。
4.根據(jù)權(quán)利要求1所述的時(shí)序類型數(shù)據(jù)存儲(chǔ)方法,還包括: 如果當(dāng)所述主內(nèi)存緩沖區(qū)已滿而所述備用內(nèi)存緩沖區(qū)還沒有存盤完畢,則對(duì)主內(nèi)存緩沖區(qū)進(jìn)行擴(kuò)容。
5.根據(jù)權(quán)利要求4所述的時(shí)序類型數(shù)據(jù)存儲(chǔ)方法,其中,對(duì)主內(nèi)存緩沖區(qū)進(jìn)行擴(kuò)容還包括: 當(dāng)主內(nèi)存緩沖區(qū)容量超過一定比例時(shí),阻塞對(duì)所述原始數(shù)據(jù)的接收處理,直到備用內(nèi)存緩沖區(qū)處理完畢。
6.一種時(shí)序類型數(shù)據(jù)讀取方法,包括: 根據(jù)要獲取測(cè)點(diǎn)數(shù)據(jù)的日期和測(cè)點(diǎn)ID生成一個(gè)合成主鍵;和根據(jù)此主鍵在歷史數(shù)據(jù)緩存字典表中進(jìn)行查詢,如果在歷史數(shù)據(jù)緩存字典表中存在此主鍵,則直接可以獲取日歷史數(shù)據(jù)序列值,然后可以根據(jù)查詢時(shí)間范圍從日歷史數(shù)據(jù)值中抽取相應(yīng)查詢數(shù)據(jù)。
7.根據(jù)權(quán)利要求6所述的時(shí)序類型數(shù)據(jù)讀取方法,還包括: 如果在數(shù)據(jù)緩存表中不存在此主鍵,則從日歷史文件中來讀取歷史數(shù)據(jù),包括: 讀取日索引文件,獲取歷史數(shù)據(jù)最后文件塊地址; 通過反向測(cè)點(diǎn)數(shù)據(jù)塊鏈將此ID的整日歷史數(shù)據(jù)塊全部讀取出來; 根據(jù)時(shí)間進(jìn)行排序,整理后的日歷史數(shù)據(jù)使用先前的合成主鍵放入到歷史數(shù)據(jù)緩存字典表中;和 根據(jù)查詢時(shí)間范圍從日歷史數(shù)據(jù)序列值中抽取相應(yīng)查詢數(shù)據(jù)。
【文檔編號(hào)】G06F17/30GK104077405SQ201410321184
【公開日】2014年10月1日 申請(qǐng)日期:2014年7月8日 優(yōu)先權(quán)日:2014年7月8日
【發(fā)明者】喻宜, 呂志來, 張學(xué)深, 李海, 齊國(guó)印, 張東, 王云鵬, 劉永銀 申請(qǐng)人:國(guó)家電網(wǎng)公司, 北京許繼電氣有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
芦山县| 伊川县| 河津市| 东源县| 北流市| 美姑县| 洛阳市| 临武县| 江油市| 墨竹工卡县| 万全县| 天气| 海兴县| 青海省| 合川市| 合肥市| 繁峙县| 镇远县| 利辛县| 衡阳县| 沿河| 赣榆县| 都昌县| 宿迁市| 乾安县| 颍上县| 罗源县| 嫩江县| 平阴县| 高雄市| 阿拉善左旗| 鄂州市| 泸西县| 株洲市| 恭城| 二连浩特市| 永安市| 驻马店市| 鹤庆县| 龙里县| 广丰县|