亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

智能電表的數(shù)據(jù)存儲和查詢方法及其系統(tǒng)與流程

文檔序號:11170695閱讀:1418來源:國知局
智能電表的數(shù)據(jù)存儲和查詢方法及其系統(tǒng)與流程
本發(fā)明涉及數(shù)據(jù)存儲以及查詢的技術(shù)領(lǐng)域,尤其涉及智能電表的數(shù)據(jù)存儲和查詢方法及其系統(tǒng)。

背景技術(shù):
智能電表是智能電網(wǎng)(特別是智能配電網(wǎng))數(shù)據(jù)采集的基本設(shè)備之一,承擔(dān)著原始電能數(shù)據(jù)采集、計(jì)量和傳輸?shù)娜蝿?wù),是實(shí)現(xiàn)信息集成、分析優(yōu)化和信息展現(xiàn)的基礎(chǔ)。隨著市場的發(fā)展,人們對智能電表的需求也在不斷提高,其中,對采集數(shù)據(jù)的種類和頻度都提出了更高的要求,越來越多的數(shù)據(jù)需要高效的存儲和查詢。智能電表采集數(shù)據(jù)主要有三個(gè)信息需要保存:1、時(shí)間;2、數(shù)據(jù)類型;3、數(shù)據(jù)內(nèi)容。最初人們采用的存儲方案是按順序依次存儲,即每次采集到新數(shù)據(jù)后將上述三個(gè)信息依次存入存儲flash中上次數(shù)據(jù)的后邊,讀取時(shí)從第一份數(shù)據(jù)開始遍歷,直到找到需要的數(shù)據(jù)。這種方案存儲數(shù)據(jù)時(shí)不留空隙,空間利用比較充分,但查找數(shù)據(jù)時(shí)需要全部遍歷,搜索速度比較慢。為了提高搜索速度,后來人們多采用定長間隔存儲的方案,即按照最大數(shù)據(jù)長度來設(shè)置存儲間隔,查詢時(shí)根據(jù)起始時(shí)刻和查找時(shí)刻的時(shí)間差可以直接算出需要查詢的數(shù)據(jù)存放的偏移地址。這種方案查詢快速,但當(dāng)數(shù)據(jù)不規(guī)則時(shí)浪費(fèi)了大量的存儲空間,在有限的存儲空間內(nèi)保存的有效信息比較少。由此可見,現(xiàn)有的技術(shù)要么偏重空間利用的最大化,查詢速度非常慢;要么偏重查詢數(shù)據(jù)的速度,存儲空間非常浪費(fèi),都不能很好的達(dá)到查詢速度和空間利用的最佳平衡。

技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的特征和優(yōu)點(diǎn)在下文的描述中部分地陳述,或者可從該描述顯而易見,或者可通過實(shí)踐本發(fā)明而學(xué)習(xí)。為克服現(xiàn)有技術(shù)的問題,本發(fā)明提供一種智能電表的數(shù)據(jù)存儲方法及其系統(tǒng),將時(shí)間依據(jù)數(shù)據(jù)的采集周期劃分成復(fù)數(shù)個(gè)時(shí)間段,將數(shù)據(jù)依據(jù)采集時(shí)間所處的時(shí)間段存儲在存儲區(qū)域的存儲頁面內(nèi),并在不具有該數(shù)據(jù)的時(shí)間段內(nèi)保存為空數(shù)據(jù),無需記錄每個(gè)數(shù)據(jù)的時(shí)間,節(jié)約了存儲空間;同時(shí)通過在每頁存儲頁面內(nèi)記錄第一個(gè)數(shù)據(jù)的時(shí)間的技術(shù)手段,加快了數(shù)據(jù)查詢的速度,很好地達(dá)到了查詢速度和空間利用之間的平衡。本發(fā)明解決上述技術(shù)問題所采用的技術(shù)方案如下:根據(jù)本發(fā)明的一個(gè)方面,提供一種智能電表的數(shù)據(jù)存儲方法,包括:確定存儲區(qū)域具有復(fù)數(shù)個(gè)存儲頁面,若該存儲區(qū)域不具有該存儲頁面,則依據(jù)該存儲區(qū)域的大小將該存儲區(qū)域劃分成復(fù)數(shù)個(gè)該存儲頁面;將時(shí)間劃分成復(fù)數(shù)個(gè)時(shí)間段,每個(gè)該時(shí)間段在該存儲頁面上占據(jù)一定的存儲空間;將該數(shù)據(jù)依據(jù)采集時(shí)間所處的時(shí)間段存儲在該存儲頁面內(nèi),若在某一時(shí)間段內(nèi)不具有該數(shù)據(jù),則在不具有該數(shù)據(jù)的時(shí)間段內(nèi)保存為空數(shù)據(jù);在每頁該存儲頁面內(nèi)記錄第一個(gè)數(shù)據(jù)的時(shí)間。根據(jù)本發(fā)明的一個(gè)實(shí)施例,在將該數(shù)據(jù)依據(jù)采集時(shí)間所處的時(shí)間段存儲在該存儲頁面內(nèi)時(shí),首先計(jì)算存儲該數(shù)據(jù)需要的存儲空間,若該存儲頁面內(nèi)存儲空間不足,則開啟新的存儲頁面。根據(jù)本發(fā)明的一個(gè)實(shí)施例,在將該數(shù)據(jù)依據(jù)采集時(shí)間所處的時(shí)間段存儲在該存儲頁面內(nèi)時(shí),首先讀取上次保存的數(shù)據(jù)的信息,若該上次保存的數(shù)據(jù)為該空數(shù)據(jù),且本次保存的數(shù)據(jù)也為該空數(shù)據(jù),則在上次保存的該空數(shù)據(jù)的存儲空間里更新空數(shù)據(jù)的個(gè)數(shù)。根據(jù)本發(fā)明的一個(gè)實(shí)施例,在該存儲頁面的還需要記錄前一次數(shù)據(jù)存放的偏移、該存儲頁面存放的數(shù)據(jù)的類型、該存儲頁面存放的數(shù)據(jù)的份數(shù)。根據(jù)本發(fā)明的又一個(gè)方面,提供一種智能電表的數(shù)據(jù)查詢方法,用于查詢采用上述任一智能電表的數(shù)據(jù)存儲方法進(jìn)行存儲的數(shù)據(jù),包括:S1、讀取第一頁以及最后一頁存儲頁面內(nèi)記錄的第一個(gè)數(shù)據(jù)的時(shí)間;S2、根據(jù)需要查詢的數(shù)據(jù)的時(shí)間,按照比例關(guān)系計(jì)算該需要查詢的數(shù)據(jù)所處的存儲頁面;S3、讀取S2計(jì)算所得的存儲頁面內(nèi)第一個(gè)數(shù)據(jù)的存儲時(shí)間、該頁面存放的數(shù)據(jù)的類型、該頁面存放的數(shù)據(jù)的份數(shù),判斷該需要查詢的數(shù)據(jù)是否在S2計(jì)算所得的存儲頁面內(nèi):若在,則依次讀取該需要查詢的數(shù)據(jù)所處的存儲頁面內(nèi)的數(shù)據(jù),直至查詢出該需要查詢的數(shù)據(jù);若不在,則判斷該需要查詢的數(shù)據(jù)在計(jì)算得出的該需要查詢的數(shù)據(jù)所處的存儲頁面之前還是之后,然后根據(jù)判斷的結(jié)果重新計(jì)算該需要查詢的數(shù)據(jù)所處的存儲頁面;如果在計(jì)算得出的該需要查詢的數(shù)據(jù)所處的存儲頁面之前,則將計(jì)算得出的該需要查詢的數(shù)據(jù)所處的存儲頁面作為最后一頁,按照比例關(guān)系重新計(jì)算該需要查詢的數(shù)據(jù)所處的存儲頁面;如果在計(jì)算得出的該需要查詢的數(shù)據(jù)所處的存儲頁面之后,則將計(jì)算得出的該需要查詢的數(shù)據(jù)所處的存儲頁面作為第一頁,按照比例關(guān)系重新計(jì)算該需要查詢的數(shù)據(jù)所處的存儲頁面;重復(fù)步驟S3,直至查詢出該需要查詢的數(shù)據(jù)。根據(jù)本發(fā)明的一個(gè)實(shí)施例,在該步驟S3中,還要讀取與該需要查詢的數(shù)據(jù)所處的存儲頁面相鄰的存儲頁面內(nèi)該第一個(gè)數(shù)據(jù)的時(shí)間,并據(jù)此判斷該需要查詢的數(shù)據(jù)是否在該需要查詢的數(shù)據(jù)所處的存儲頁面內(nèi),或判斷該需要查詢的數(shù)據(jù)在計(jì)算得出的該需要查詢的數(shù)據(jù)所處的存儲頁面之前還是之后。根據(jù)本發(fā)明的再一個(gè)方面,提供一種智能電表的數(shù)據(jù)查詢系統(tǒng),用于查詢采用上述任一智能電表的數(shù)據(jù)存儲方法進(jìn)行存儲的數(shù)據(jù),包括:時(shí)間讀取模塊,用于讀取存儲頁面內(nèi)記錄的第一個(gè)數(shù)據(jù)的時(shí)間;計(jì)算模塊,用于根據(jù)需要查詢的數(shù)據(jù)的時(shí)間,按照比例關(guān)系計(jì)算該需要查詢的數(shù)據(jù)所處的存儲頁面;判斷模塊,用于判斷該需要查詢的數(shù)據(jù)是否在該需要查詢的數(shù)據(jù)所處的存儲頁面內(nèi),或判斷該需要查詢的...
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1