国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      數(shù)據(jù)壓縮記錄方法及裝置的制造方法

      文檔序號(hào):10686782閱讀:545來(lái)源:國(guó)知局
      數(shù)據(jù)壓縮記錄方法及裝置的制造方法
      【專利摘要】本發(fā)明公開了一種數(shù)據(jù)壓縮記錄方法,該方法包括:實(shí)時(shí)采集數(shù)據(jù),完整記錄采集到的第一個(gè)數(shù)據(jù),第一個(gè)數(shù)據(jù)包括:時(shí)間值及浮點(diǎn)數(shù)值;對(duì)于第i個(gè)數(shù)據(jù),計(jì)算第i個(gè)數(shù)據(jù)的浮點(diǎn)數(shù)值與上一個(gè)完整記錄的數(shù)據(jù)的浮點(diǎn)數(shù)值之間的第一差值,及計(jì)算第i個(gè)數(shù)據(jù)的時(shí)間值與上一個(gè)完整記錄的數(shù)據(jù)的時(shí)間值之間的第二差值,i的初始值為2;若第一差值與第二差值均滿足預(yù)設(shè)的條件,則記錄第一差值及第二差值,以完成第i個(gè)數(shù)據(jù)的簡(jiǎn)易記錄。本發(fā)明還公開了一種數(shù)據(jù)壓縮記錄裝置,使得能夠在確保數(shù)據(jù)完整的情況下,有效減少數(shù)據(jù)所需要的存儲(chǔ)空間。
      【專利說(shuō)明】
      數(shù)據(jù)壓縮記錄方法及裝置
      技術(shù)領(lǐng)域
      [0001 ]本發(fā)明涉及數(shù)據(jù)壓縮領(lǐng)域,尤其涉及一種數(shù)據(jù)壓縮記錄方法及裝置。
      【背景技術(shù)】
      [0002]目前,在對(duì)多個(gè)設(shè)備或者多個(gè)監(jiān)測(cè)點(diǎn)進(jìn)行數(shù)據(jù)采集時(shí)通常采用的是定時(shí)采樣的方式,控制設(shè)備每間隔預(yù)設(shè)時(shí)間段采集一次數(shù)據(jù)或者在固定的時(shí)間點(diǎn)采集一次數(shù)據(jù),并對(duì)采集得到的數(shù)據(jù)進(jìn)行壓縮處理,保存壓縮的數(shù)據(jù)。
      [0003]然而,定時(shí)采樣的方式僅能采集到部分?jǐn)?shù)據(jù),數(shù)據(jù)不完整,但是如果采用實(shí)時(shí)采樣的方式又將造成采樣得到的數(shù)據(jù)量太大,所需要的存儲(chǔ)空間特別大的問(wèn)題。因此,如何實(shí)現(xiàn)采集到的數(shù)據(jù)完整且占用的存儲(chǔ)空間少是目前亟待解決的問(wèn)題。
      [0004]上述內(nèi)容僅用于輔助理解本發(fā)明的技術(shù)方案,并不代表承認(rèn)上述內(nèi)容是現(xiàn)有技術(shù)。

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

      [0005]本發(fā)明的主要目的在于提供一種數(shù)據(jù)壓縮記錄方法及裝置,旨在解決現(xiàn)有技術(shù)中無(wú)法在完整保存數(shù)據(jù)的情況下減少存儲(chǔ)空間占用的技術(shù)問(wèn)題。
      [0006]為實(shí)現(xiàn)上述目的,本發(fā)明提供的一種數(shù)據(jù)壓縮記錄方法,所述方法包括:
      [0007]實(shí)時(shí)采集數(shù)據(jù),完整記錄采集到的第一個(gè)數(shù)據(jù),所述第一個(gè)數(shù)據(jù)包括:時(shí)間值及浮點(diǎn)數(shù)值;
      [0008]對(duì)于第i個(gè)數(shù)據(jù),計(jì)算所述第i個(gè)數(shù)據(jù)的浮點(diǎn)數(shù)值與上一個(gè)完整記錄的數(shù)據(jù)的浮點(diǎn)數(shù)值之間的第一差值,及計(jì)算所述第i個(gè)數(shù)據(jù)的時(shí)間值與上一個(gè)完整記錄的數(shù)據(jù)的時(shí)間值之間的第二差值,i的初始值為2;
      [0009]若所述第一差值與所述第二差值均滿足預(yù)設(shè)的條件,則記錄所述第一差值及所述第二差值,以完成所述第i個(gè)數(shù)據(jù)的簡(jiǎn)易記錄。
      [0010]優(yōu)選地,所述方法還包括:
      [0011]若所述第一差值為零,則放棄記錄所述第i個(gè)數(shù)據(jù)。
      [0012]優(yōu)選地,若所述第一差值與所述第二差值均滿足預(yù)設(shè)的條件,則記錄所述第一差值及所述第二差值,包括:
      [0013]在所述第一差值為非零時(shí),判斷所述第一差值是否小于或等于第一預(yù)設(shè)值;
      [0014]若所述第一差值小于或等于所述第一預(yù)設(shè)值,則判斷所述第二差值是否小于或等于第二預(yù)設(shè)值;
      [0015]若所述第二差值小于或等于所述第二預(yù)設(shè)值,則記錄所述第一差值及所述第二差值。
      [0016]優(yōu)選地,所述方法還包括:
      [0017]若所述第一差值大于所述第一預(yù)設(shè)值,則記錄所述第i個(gè)數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值,以完成所述第i個(gè)數(shù)據(jù)的完整記錄。
      [0018]優(yōu)選地,所述方法還包括:
      [0019]若所述第二差值大于所述第二預(yù)設(shè)值,則記錄所述第i個(gè)數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值,以完成所述第i個(gè)數(shù)據(jù)的完整記錄。
      [0020]為實(shí)現(xiàn)上述目的,本發(fā)明還提出一種數(shù)據(jù)壓縮記錄裝置,所述裝置包括:
      [0021]采集記錄模塊,用于實(shí)時(shí)采集數(shù)據(jù),完整記錄采集到的第一個(gè)數(shù)據(jù),所述第一個(gè)數(shù)據(jù)包括:時(shí)間值及浮點(diǎn)數(shù)值;
      [0022]計(jì)算模塊,用于對(duì)于第i個(gè)數(shù)據(jù),計(jì)算所述第i個(gè)數(shù)據(jù)的浮點(diǎn)數(shù)值與上一個(gè)完整記錄的數(shù)據(jù)的浮點(diǎn)數(shù)值之間的第一差值,及計(jì)算所述第i個(gè)數(shù)據(jù)的時(shí)間值與上一個(gè)完整記錄的數(shù)據(jù)的時(shí)間值之間的第二差值,i的初始值為2;
      [0023]簡(jiǎn)易記錄模塊,用于若所述第一差值與所述第二差值均滿足預(yù)設(shè)的條件,則記錄所述第一差值及所述第二差值,以完成所述第i個(gè)數(shù)據(jù)的簡(jiǎn)易記錄。
      [0024]優(yōu)選地,所述裝置還包括:
      [0025]放棄記錄模塊,用于若所述第一差值為零,則放棄記錄所述第i個(gè)數(shù)據(jù)。
      [0026]優(yōu)選地,所述簡(jiǎn)易記錄模塊包括:
      [0027]第一判斷模塊,用于在所述第一差值為非零時(shí),判斷所述第一差值是否小于或等于第一預(yù)設(shè)值;
      [0028]第二判斷模塊,用于若所述第一差值小于或等于所述第一預(yù)設(shè)值,則判斷所述第二差值是否小于或等于第二預(yù)設(shè)值;
      [0029]差值記錄模塊,用于若所述第二差值小于或等于所述第二預(yù)設(shè)值,則記錄所述第一差值及所述第二差值。
      [0030]優(yōu)選地,所述簡(jiǎn)易記錄模塊還包括:
      [0031]完整記錄模塊,用于若所述第一差值大于所述第一預(yù)設(shè)值,則記錄所述第i個(gè)數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值,以完成所述第i個(gè)數(shù)據(jù)的完整記錄。
      [0032]優(yōu)選地,所述完整記錄模塊還用于:若所述第二差值大于所述第二預(yù)設(shè)值,則記錄所述第i個(gè)數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值,以完成所述第i個(gè)數(shù)據(jù)的完整記錄。
      [0033]本發(fā)明提供一種數(shù)據(jù)壓縮記錄方法,該方法包括:實(shí)時(shí)采集數(shù)據(jù),完整記錄采集到的第一個(gè)數(shù)據(jù),且該數(shù)據(jù)包括時(shí)間值及浮點(diǎn)數(shù)值,對(duì)于第i個(gè)數(shù)據(jù),計(jì)算該第i個(gè)數(shù)據(jù)的浮點(diǎn)數(shù)值與上一個(gè)完整記錄的數(shù)據(jù)的浮點(diǎn)數(shù)值之間的第一差值,及計(jì)算第i個(gè)數(shù)據(jù)的時(shí)間值與上一個(gè)完整記錄的數(shù)據(jù)的時(shí)間值之間的第二差值,其中i的初始值為2,若該第一差值與第二差值均滿足預(yù)設(shè)的條件,則記錄第一差值及第二差值,以完成第i個(gè)數(shù)據(jù)的簡(jiǎn)易記錄,在本發(fā)明中,通過(guò)實(shí)時(shí)采集數(shù)據(jù),使得能夠確保壓縮記錄的數(shù)據(jù)是完整的,且在第i個(gè)數(shù)據(jù)與上一個(gè)完整記錄的數(shù)據(jù)的之間的第一差值及第二差值滿足預(yù)設(shè)條件時(shí),通過(guò)簡(jiǎn)易記錄的方式,能夠有效的減少存儲(chǔ)第i個(gè)數(shù)據(jù)所需要的字節(jié)數(shù),完成數(shù)據(jù)壓縮及記錄,使得能夠在確保數(shù)據(jù)完整的情況下,有效減少數(shù)據(jù)所需要的存儲(chǔ)空間。
      【附圖說(shuō)明】
      [0034]圖1為本發(fā)明第一實(shí)施例中數(shù)據(jù)壓縮記錄方法的流程示意圖;
      [0035]圖2為本發(fā)明圖1所示第一實(shí)施例中步驟103的細(xì)化步驟的流程示意圖;
      [0036]圖3為本發(fā)明第二實(shí)施例中數(shù)據(jù)壓縮記錄裝置的功能模塊示意圖;
      [0037]圖4為本發(fā)明圖3所示第二實(shí)施例中簡(jiǎn)易記錄模塊303的細(xì)化功能模塊示意圖。
      [0038]本發(fā)明目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做進(jìn)一步說(shuō)明。
      【具體實(shí)施方式】
      [0039]應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
      [0040]由于現(xiàn)有技術(shù)中,是通過(guò)定時(shí)采樣的方式采集數(shù)據(jù),將使得采集的數(shù)據(jù)不完整,而通過(guò)實(shí)時(shí)采樣的方式采集數(shù)據(jù)時(shí),采集到的數(shù)據(jù)量非常大,需要大量的存儲(chǔ)空間存儲(chǔ)數(shù)據(jù),無(wú)法在完整保存數(shù)據(jù)的情況下減少存儲(chǔ)空間占用的技術(shù)問(wèn)題。
      [0041]為了解決上述問(wèn)題,本發(fā)明提出一種數(shù)據(jù)壓縮記錄方法,通過(guò)實(shí)時(shí)采集數(shù)據(jù)的方式確保數(shù)據(jù)的完整性,且通過(guò)對(duì)滿足條件的數(shù)據(jù)進(jìn)行簡(jiǎn)易記錄,能夠有效的降低存儲(chǔ)數(shù)據(jù)所需要的存儲(chǔ)空間,有效實(shí)現(xiàn)在完整保存數(shù)據(jù)的情況下減少存儲(chǔ)空間的占用的目的。
      [0042]請(qǐng)參閱圖1,為本發(fā)明第一實(shí)施例中數(shù)據(jù)壓縮記錄方法的流程示意,該方法包括:
      [0043]步驟101、實(shí)時(shí)采集數(shù)據(jù),完整記錄采集到的第一個(gè)數(shù)據(jù),第一個(gè)數(shù)據(jù)包括:時(shí)間值及浮點(diǎn)數(shù)值;
      [0044]在本發(fā)明實(shí)施例中,由數(shù)據(jù)壓縮記錄裝置(以下簡(jiǎn)稱裝置)實(shí)現(xiàn)本發(fā)明中的數(shù)據(jù)壓縮記錄方法,該裝置將實(shí)時(shí)采集數(shù)據(jù),其中,實(shí)時(shí)采集數(shù)據(jù)具體可以是:實(shí)時(shí)從監(jiān)測(cè)點(diǎn)的數(shù)據(jù)采集裝置獲取該監(jiān)測(cè)點(diǎn)的數(shù)據(jù)。
      [0045]在本發(fā)明實(shí)施例中,裝置采集到的每一個(gè)數(shù)據(jù)都包含了時(shí)間值及浮點(diǎn)數(shù)值,其中,該時(shí)間值是指采集到該數(shù)據(jù)的時(shí)刻,該浮點(diǎn)數(shù)值是在該時(shí)刻的浮點(diǎn)數(shù)。
      [0046]其中,時(shí)間值包含時(shí)、分、秒三個(gè)參數(shù)值。
      [0047]其中,裝置在實(shí)時(shí)采集數(shù)據(jù)后,將完整記錄采集到的第一個(gè)數(shù)據(jù),該完整記錄是指記錄該數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值。
      [0048]步驟102、對(duì)于第i個(gè)數(shù)據(jù),計(jì)算第i個(gè)數(shù)據(jù)的浮點(diǎn)數(shù)值與上一個(gè)完整記錄的數(shù)據(jù)的浮點(diǎn)數(shù)值之間的第一差值,及計(jì)算第i個(gè)數(shù)據(jù)的時(shí)間值與上一個(gè)完整記錄的數(shù)據(jù)的時(shí)間值之間的第二差值,i的初始值為2;
      [0049]在本發(fā)明實(shí)施例中,裝置完整記錄第一個(gè)數(shù)據(jù)之后,對(duì)于以后的數(shù)據(jù),都將確定是否可以通過(guò)簡(jiǎn)易記錄的方式進(jìn)行記錄,具體的,對(duì)于第i個(gè)數(shù)據(jù),該i的初始值為2,裝置將計(jì)算該第i個(gè)數(shù)據(jù)的浮點(diǎn)數(shù)值與上一個(gè)完整記錄的數(shù)據(jù)的浮點(diǎn)數(shù)值之間的第一差值,及計(jì)算該第i個(gè)數(shù)據(jù)的時(shí)間值與上一個(gè)完整記錄的數(shù)據(jù)的時(shí)間值之間的第二差值。
      [0050]需要說(shuō)明的是,在本發(fā)明實(shí)施例中,裝置是按照采集到的數(shù)據(jù)的時(shí)間值從近至遠(yuǎn)的順序依次進(jìn)行處理,即,按照時(shí)間順序優(yōu)先處理時(shí)間值早的數(shù)據(jù)。
      [0051]步驟103、若第一差值與第二差值均滿足預(yù)設(shè)的條件,則記錄第一差值及第二差值,以完成第i個(gè)數(shù)據(jù)的簡(jiǎn)易記錄。
      [0052]在本發(fā)明實(shí)施例中,裝置在計(jì)算得到第i個(gè)數(shù)據(jù)的第一差值及第二差值之后,將判斷該第一差值及第二差值是否均滿足預(yù)設(shè)的條件,且若第一差值及第二差值均滿足預(yù)設(shè)的條件,則記錄第一差值及第二差值,以完成第i個(gè)數(shù)據(jù)的簡(jiǎn)易記錄。
      [0053]例如,以單精度浮點(diǎn)數(shù)為例,通常記錄一個(gè)數(shù)據(jù)時(shí),所需要的字節(jié)數(shù)包括:記錄時(shí)間值的時(shí)、分、秒的三個(gè)字節(jié),及記錄浮點(diǎn)數(shù)值的4個(gè)字節(jié),因此,記錄一個(gè)數(shù)據(jù)需要7個(gè)字節(jié),而在采用簡(jiǎn)易記錄的方式記錄數(shù)據(jù)時(shí),第一差值僅需要一個(gè)字節(jié),第二差值也僅需要一個(gè)字節(jié),則一個(gè)數(shù)據(jù)僅通過(guò)2個(gè)字節(jié)就可以完成記錄,有效壓縮數(shù)據(jù)的大小,使得能夠?qū)崿F(xiàn)連續(xù)浮點(diǎn)數(shù)的壓縮記錄。需要說(shuō)明的是,在實(shí)際應(yīng)用中,還可以設(shè)置第一差值由兩個(gè)字節(jié)記錄和/或第二差值由兩個(gè)字節(jié)記錄,在此不做限定。
      [0054]在本發(fā)明實(shí)施例中,裝置實(shí)時(shí)采集數(shù)據(jù),完整記錄采集到的第一個(gè)數(shù)據(jù),且對(duì)于第i個(gè)數(shù)據(jù),計(jì)算該第i個(gè)數(shù)據(jù)的浮點(diǎn)數(shù)值與上一個(gè)完整記錄的數(shù)據(jù)的浮點(diǎn)數(shù)值之間的第一差值,及計(jì)算第i個(gè)數(shù)據(jù)的時(shí)間值與上一個(gè)完整記錄的數(shù)據(jù)的時(shí)間值之間的第二差值,若該第一差值與第二差值均滿足預(yù)設(shè)的條件,則記錄第一差值及第二差值,以完成第i個(gè)數(shù)據(jù)的簡(jiǎn)易記錄。通過(guò)實(shí)時(shí)采集數(shù)據(jù),使得能夠確保壓縮記錄的數(shù)據(jù)是完整的,且在第i個(gè)數(shù)據(jù)與上一個(gè)完整記錄的數(shù)據(jù)的之間的第一差值及第二差值滿足預(yù)設(shè)條件時(shí),通過(guò)簡(jiǎn)易記錄的方式,能夠有效的減少存儲(chǔ)該第i個(gè)數(shù)據(jù)所需要的字節(jié)數(shù),完成數(shù)據(jù)壓縮及記錄,使得能夠在確保數(shù)據(jù)完整的情況下,有效減少數(shù)據(jù)所需要的存儲(chǔ)空間。
      [0055]在本發(fā)明實(shí)施例中,第一差值是第i個(gè)數(shù)據(jù)的浮點(diǎn)數(shù)值與上一個(gè)完整記錄的數(shù)據(jù)的浮點(diǎn)數(shù)值之間的差值,因此,該第一差值可能為零,也可能不是零,下面將分別對(duì)該兩種情況進(jìn)行介紹。
      [0056]其中,在第一差值為零的情況下,裝置還將執(zhí)行以下步驟:
      [0057]若第一差值為零,則放棄記錄第i個(gè)數(shù)據(jù)。
      [0058]在本發(fā)明實(shí)施例中,當(dāng)?shù)谝徊钪禐榱銜r(shí),則表明第i個(gè)數(shù)據(jù)中的浮點(diǎn)數(shù)值與上一個(gè)完整記錄的數(shù)據(jù)的浮點(diǎn)數(shù)值是相同的,并未發(fā)生變化,在這種情況下,裝置將舍棄該第i個(gè)數(shù)據(jù),即放棄記錄該第i個(gè)數(shù)據(jù),使得能夠避免具有相同浮點(diǎn)數(shù)值的數(shù)據(jù)的記錄,能夠有效的減少所需要的存儲(chǔ)空間。
      [0059]在第一差值為非零的情況下,請(qǐng)參閱圖2,為本發(fā)明圖1所示第一實(shí)施例中步驟103的細(xì)化步驟的流程示意圖,該步驟103包括以下步驟:
      [0060]步驟201、在第一差值為非零時(shí),判斷第一差值是否小于或等于第一預(yù)設(shè)值;執(zhí)行步驟202或者步驟203;
      [0061]步驟202、若第一差值大于第一預(yù)設(shè)值,則記錄第i個(gè)數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值,以完成第i個(gè)數(shù)據(jù)的完整記錄;
      [0062]步驟203、若第一差值小于或等于第一預(yù)設(shè)值,則判斷第二差值是否小于或等于第二預(yù)設(shè)值;執(zhí)行步驟204或步驟205。
      [0063]步驟204、若第二差值小于或等于第二預(yù)設(shè)值,則記錄第一差值及第二差值;
      [0064]步驟205、若第二差值大于第二預(yù)設(shè)值,則記錄第i個(gè)數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值,以完成第i個(gè)數(shù)據(jù)的完整記錄。
      [0065]在本發(fā)明實(shí)施例中,第一差值為非零時(shí),則裝置判斷該第一差值是否小于或等于第一預(yù)設(shè)值,其中,由于第一差值為浮點(diǎn)數(shù)之間的差值,則該第一預(yù)設(shè)值與預(yù)先設(shè)置的用于保存差值的字節(jié)數(shù)有關(guān),例如,對(duì)于單精度(4個(gè)字節(jié))的浮點(diǎn)數(shù),在以一個(gè)字節(jié)保存差值時(shí),該第一預(yù)設(shè)值可以設(shè)置為12.7。
      [0066]其中,若第一差值大于第一預(yù)設(shè)值,則表示該第一差值已經(jīng)超過(guò)預(yù)設(shè)字節(jié)數(shù)能夠保存的最大值,裝置將記錄該第i個(gè)數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值,以完整記錄的方式記錄該第i個(gè)數(shù)據(jù)。因此,每間隔一個(gè)第一預(yù)設(shè)值,裝置都將完整記錄一個(gè)數(shù)據(jù)。
      [0067]其中,若第一差值小于或等于第一預(yù)設(shè)值,則確定該第一差值小于或等于預(yù)設(shè)字節(jié)數(shù)能夠保存的最大值,裝置將進(jìn)一步判斷第二差值是否小于或等于第二預(yù)設(shè)值。
      [0068]其中,第二差值為時(shí)間值之間的差值,則該第二預(yù)設(shè)值也與預(yù)先設(shè)置的用于保存時(shí)間差值的字節(jié)數(shù)有關(guān),例如,若以一個(gè)字節(jié)保存時(shí)間值之間的差值,該第二預(yù)設(shè)值可以設(shè)置為254。
      [0069]其中,若第二差值小于或等于第二預(yù)設(shè)值,例如,若第二差值為200,小于第二預(yù)設(shè)值254,則記錄第一差值及第二差值,以完成第i個(gè)數(shù)據(jù)的簡(jiǎn)易記錄。
      [0070]若第二差值大于第二預(yù)設(shè)值,則記錄第i個(gè)數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值,以完成第i個(gè)數(shù)據(jù)的完整記錄,使得對(duì)于時(shí)間值來(lái)說(shuō),每間隔一個(gè)第二預(yù)設(shè)值,裝置都將完整記錄一個(gè)數(shù)據(jù)。
      [0071]在本發(fā)明實(shí)施例,在對(duì)第i個(gè)數(shù)據(jù)進(jìn)行壓縮記錄時(shí),通過(guò)將該第i個(gè)數(shù)據(jù)與上一個(gè)完整記錄的數(shù)據(jù)之間的第一差值及第二差值分別與第一預(yù)設(shè)值及第二預(yù)設(shè)值進(jìn)行比較,使得能夠在第一差值小于或等于第一預(yù)設(shè)值,且第二差值小于或等于第二預(yù)設(shè)值時(shí),通過(guò)簡(jiǎn)易記錄的方式記錄該第i個(gè)數(shù)據(jù),使得能夠有效降低記錄該第i個(gè)數(shù)據(jù)所需要的字節(jié)數(shù),以減少對(duì)采集到的數(shù)據(jù)進(jìn)行存儲(chǔ)所需要的存儲(chǔ)空間,且每間隔一個(gè)第一預(yù)設(shè)值,或者每間隔一個(gè)第二預(yù)設(shè)值完整記錄一次數(shù)據(jù),使得能夠避免太多數(shù)據(jù)都采用簡(jiǎn)易記錄的方式進(jìn)行記錄帶來(lái)的容錯(cuò)性不強(qiáng)的問(wèn)題,因此,通過(guò)使用本發(fā)明中的技術(shù)方案,能夠在確保數(shù)據(jù)完整性的基礎(chǔ)上減少存儲(chǔ)數(shù)據(jù)所需要的存儲(chǔ)空間,且確保數(shù)據(jù)的容錯(cuò)性。
      [0072]請(qǐng)參閱圖3,為本發(fā)明第三實(shí)施例中數(shù)據(jù)壓縮記錄裝置的功能模塊示意圖,該壓縮記錄裝置包括:采集記錄模塊301、計(jì)算模塊302、及簡(jiǎn)易記錄模塊303。
      [0073]采集記錄模塊301,用于實(shí)時(shí)采集數(shù)據(jù),完整記錄采集到的第一個(gè)數(shù)據(jù),第一個(gè)數(shù)據(jù)包括:時(shí)間值及浮點(diǎn)數(shù)值;
      [0074]在本發(fā)明實(shí)施例中,采集記錄模塊301將實(shí)時(shí)采集數(shù)據(jù),其中,實(shí)時(shí)采集數(shù)據(jù)具體可以是:實(shí)時(shí)從監(jiān)測(cè)點(diǎn)的數(shù)據(jù)采集裝置獲取該監(jiān)測(cè)點(diǎn)的數(shù)據(jù)。
      [0075]在本發(fā)明實(shí)施例中,采集記錄模塊301采集到的每一個(gè)數(shù)據(jù)都包含了時(shí)間值及浮點(diǎn)數(shù)值,其中,該時(shí)間值是指采集到該數(shù)據(jù)的時(shí)刻,該浮點(diǎn)數(shù)值是在該時(shí)刻的浮點(diǎn)數(shù)。
      [0076]其中,時(shí)間值包含時(shí)、分、秒三個(gè)參數(shù)值。
      [0077]其中,采集記錄模塊301在實(shí)時(shí)采集數(shù)據(jù)后,將完整記錄采集到的第一個(gè)數(shù)據(jù),該完整記錄是指記錄該數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值。
      [0078]計(jì)算模塊302,用于對(duì)于第i個(gè)數(shù)據(jù),計(jì)算第i個(gè)數(shù)據(jù)的浮點(diǎn)數(shù)值與上一個(gè)完整記錄的數(shù)據(jù)的浮點(diǎn)數(shù)值之間的第一差值,及計(jì)算第i個(gè)數(shù)據(jù)的時(shí)間值與上一個(gè)完整記錄的數(shù)據(jù)的時(shí)間值之間的第二差值,i的初始值為2;
      [0079]在本發(fā)明實(shí)施例中,在完整記錄第一個(gè)數(shù)據(jù)之后,對(duì)于以后的數(shù)據(jù),都將確定是否可以通過(guò)簡(jiǎn)易記錄的方式進(jìn)行記錄,具體的,對(duì)于第i個(gè)數(shù)據(jù),該i的初始值為2,計(jì)算模塊302將計(jì)算該第i個(gè)數(shù)據(jù)的浮點(diǎn)數(shù)值與上一個(gè)完整記錄的數(shù)據(jù)的浮點(diǎn)數(shù)值之間的第一差值,及計(jì)算該第i個(gè)數(shù)據(jù)的時(shí)間值與上一個(gè)完整記錄的數(shù)據(jù)的時(shí)間值之間的第二差值。
      [0080]需要說(shuō)明的是,在本發(fā)明實(shí)施例中,裝置是按照采集到的數(shù)據(jù)的時(shí)間值從近至遠(yuǎn)的順序依次進(jìn)行處理,即,按照時(shí)間順序優(yōu)先處理時(shí)間值早的數(shù)據(jù)。
      [0081]簡(jiǎn)易記錄模塊303,用于若第一差值與第二差值均滿足預(yù)設(shè)的條件,則記錄第一差值及第二差值,以完成第i個(gè)數(shù)據(jù)的簡(jiǎn)易記錄。
      [0082]在本發(fā)明實(shí)施例中,裝置在計(jì)算得到第i個(gè)數(shù)據(jù)的第一差值及第二差值之后,將判斷該第一差值及第二差值是否均滿足預(yù)設(shè)的條件,且若第一差值及第二差值均滿足預(yù)設(shè)的條件,則簡(jiǎn)易記錄模塊303記錄第一差值及第二差值,以完成第i個(gè)數(shù)據(jù)的簡(jiǎn)易記錄。
      [0083]例如,以單精度浮點(diǎn)數(shù)為例,通常記錄一個(gè)數(shù)據(jù)時(shí),所需要的字節(jié)數(shù)包括:記錄時(shí)間值的時(shí)、分、秒的三個(gè)字節(jié),及記錄浮點(diǎn)數(shù)值的4個(gè)字節(jié),因此,記錄一個(gè)數(shù)據(jù)需要7個(gè)字節(jié),而在采用簡(jiǎn)易記錄的方式記錄數(shù)據(jù)時(shí),第一差值僅需要一個(gè)字節(jié),第二差值也僅需要一個(gè)字節(jié),則一個(gè)數(shù)據(jù)僅通過(guò)2個(gè)字節(jié)就可以完成記錄,有效壓縮數(shù)據(jù)的大小,使得能夠?qū)崿F(xiàn)連續(xù)浮點(diǎn)數(shù)的壓縮記錄。需要說(shuō)明的是,在實(shí)際應(yīng)用中,還可以設(shè)置第一差值由兩個(gè)字節(jié)記錄和/或第二差值由兩個(gè)字節(jié)記錄,在此不做限定。
      [0084]在本發(fā)明實(shí)施例中,采集記錄模塊301實(shí)時(shí)采集數(shù)據(jù),完整記錄采集到的第一個(gè)數(shù)據(jù),且對(duì)于第i個(gè)數(shù)據(jù),計(jì)算模塊302計(jì)算該第i個(gè)數(shù)據(jù)的浮點(diǎn)數(shù)值與上一個(gè)完整記錄的數(shù)據(jù)的浮點(diǎn)數(shù)值之間的第一差值,及計(jì)算第i個(gè)數(shù)據(jù)的時(shí)間值與上一個(gè)完整記錄的數(shù)據(jù)的時(shí)間值之間的第二差值,若該第一差值與第二差值均滿足預(yù)設(shè)的條件,則簡(jiǎn)易記錄模塊303記錄第一差值及第二差值,以完成第i個(gè)數(shù)據(jù)的簡(jiǎn)易記錄。通過(guò)實(shí)時(shí)采集數(shù)據(jù),使得能夠確保壓縮記錄的數(shù)據(jù)是完整的,且在第i個(gè)數(shù)據(jù)與上一個(gè)完整記錄的數(shù)據(jù)的之間的第一差值及第二差值滿足預(yù)設(shè)條件時(shí),通過(guò)簡(jiǎn)易記錄的方式,能夠有效的減少存儲(chǔ)該第i個(gè)數(shù)據(jù)所需要的字節(jié)數(shù),完成數(shù)據(jù)壓縮及記錄,使得能夠在確保數(shù)據(jù)完整的情況下,有效減少數(shù)據(jù)所需要的存儲(chǔ)空間。
      [0085]進(jìn)一步的,圖3所示第二實(shí)施例中,數(shù)據(jù)壓縮記錄的裝置還可以包括:
      [0086]放棄記錄模塊(圖中未示出),用于若第一差值為零,則放棄記錄第i個(gè)數(shù)據(jù)。
      [0087]在本發(fā)明實(shí)施例中,第一差值是第i個(gè)數(shù)據(jù)的浮點(diǎn)數(shù)值與上一個(gè)完整記錄的數(shù)據(jù)的浮點(diǎn)數(shù)值之間的差值,因此,該第一差值可能為零,當(dāng)?shù)谝徊钪禐榱銜r(shí),則表明第i個(gè)數(shù)據(jù)中的浮點(diǎn)數(shù)值與上一個(gè)完整記錄的數(shù)據(jù)的浮點(diǎn)數(shù)值是相同的,并未發(fā)生變化,在這種情況下,裝置將舍棄該第i個(gè)數(shù)據(jù),即放棄記錄該第i個(gè)數(shù)據(jù),使得能夠避免具有相同浮點(diǎn)數(shù)值的數(shù)據(jù)的記錄,能夠有效的減少所需要的存儲(chǔ)空間。
      [0088]請(qǐng)參閱圖4,為本發(fā)明圖3所示第二實(shí)施例中簡(jiǎn)易記錄模塊303的細(xì)化功能模塊的不意圖,該間易記錄1?塊303包括:
      [0089]第一判斷模塊401,用于在第一差值為非零時(shí),判斷第一差值是否小于或等于第一預(yù)設(shè)值;
      [0090]第二判斷模塊402,用于若第一差值小于或等于第一預(yù)設(shè)值,則判斷第二差值是否小于或等于第二預(yù)設(shè)值;
      [0091 ]差值記錄模塊403,用于若第二差值小于或等于第二預(yù)設(shè)值,則記錄第一差值及第二差值。
      [0092]優(yōu)選地,簡(jiǎn)易記錄模塊303還包括:
      [0093]完整記錄模塊404,用于若第一差值大于第一預(yù)設(shè)值,則記錄第i個(gè)數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值,以完成第i個(gè)數(shù)據(jù)的完整記錄。
      [0094]優(yōu)選地,上述完整記錄模塊404還用于:若第二差值大于第二預(yù)設(shè)值,則記錄第i個(gè)數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值,以完成第i個(gè)數(shù)據(jù)的完整記錄。
      [0095]在本發(fā)明實(shí)施例中,第一差值為非零時(shí),則第一判斷模塊401判斷該第一差值是否小于或等于第一預(yù)設(shè)值,其中,由于第一差值為浮點(diǎn)數(shù)之間的差值,則該第一預(yù)設(shè)值與預(yù)先設(shè)置的用于保存差值的字節(jié)數(shù)有關(guān),例如,對(duì)于單精度(4個(gè)字節(jié))的浮點(diǎn)數(shù),在以一個(gè)字節(jié)保存差值時(shí),該第一預(yù)設(shè)值可以設(shè)置為12.7。
      [0096]其中,若第一差值大于第一預(yù)設(shè)值,則表示該第一差值已經(jīng)超過(guò)預(yù)設(shè)字節(jié)數(shù)能夠保存的最大值,完整記錄模塊404將記錄該第i個(gè)數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值,以完整記錄的方式記錄該第i個(gè)數(shù)據(jù)。因此,每間隔一個(gè)第一預(yù)設(shè)值,裝置都將完整記錄一個(gè)數(shù)據(jù)。
      [0097]其中,若第一差值小于或等于第一預(yù)設(shè)值,則確定該第一差值小于或等于預(yù)設(shè)字節(jié)數(shù)能夠保存的最大值,第二判斷模塊402將進(jìn)一步判斷第二差值是否小于或等于第二預(yù)設(shè)值。
      [0098]其中,第二差值為時(shí)間值之間的差值,則該第二預(yù)設(shè)值也與預(yù)先設(shè)置的用于保存時(shí)間差值的字節(jié)數(shù)有關(guān),例如,若以一個(gè)字節(jié)保存時(shí)間值之間的差值,該第二預(yù)設(shè)值可以設(shè)置為254。
      [0099]其中,若第二差值小于或等于第二預(yù)設(shè)值,例如,若第二差值為200,小于第二預(yù)設(shè)值254,則差值記錄模塊403記錄第一差值及第二差值,以完成第i個(gè)數(shù)據(jù)的簡(jiǎn)易記錄。
      [0100]若第二差值大于第二預(yù)設(shè)值,則完整記錄模塊404記錄第i個(gè)數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值,以完成第i個(gè)數(shù)據(jù)的完整記錄,使得對(duì)于時(shí)間值來(lái)說(shuō),每間隔一個(gè)第二預(yù)設(shè)值,裝置都將完整記錄一個(gè)數(shù)據(jù)。
      [0101]在本發(fā)明實(shí)施例,在對(duì)第i個(gè)數(shù)據(jù)進(jìn)行壓縮記錄時(shí),通過(guò)將該第i個(gè)數(shù)據(jù)與上一個(gè)完整記錄的數(shù)據(jù)之間的第一差值及第二差值分別與第一預(yù)設(shè)值及第二預(yù)設(shè)值進(jìn)行比較,使得能夠在第一差值小于或等于第一預(yù)設(shè)值,且第二差值小于或等于第二預(yù)設(shè)值時(shí),通過(guò)簡(jiǎn)易記錄的方式記錄該第i個(gè)數(shù)據(jù),使得能夠有效降低記錄該第i個(gè)數(shù)據(jù)所需要的字節(jié)數(shù),以減少對(duì)采集到的數(shù)據(jù)進(jìn)行存儲(chǔ)所需要的存儲(chǔ)空間,且每間隔一個(gè)第一預(yù)設(shè)值,或者每間隔一個(gè)第二預(yù)設(shè)值完整記錄一次數(shù)據(jù),使得能夠避免太多數(shù)據(jù)都采用簡(jiǎn)易記錄的方式進(jìn)行記錄帶來(lái)的容錯(cuò)性不強(qiáng)的問(wèn)題,因此,通過(guò)使用本發(fā)明中的技術(shù)方案,能夠在確保數(shù)據(jù)完整性的基礎(chǔ)上減少存儲(chǔ)數(shù)據(jù)所需要的存儲(chǔ)空間,且確保數(shù)據(jù)的容錯(cuò)性。
      [0102]通過(guò)以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到上述實(shí)施例方法可借助軟件加必需的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn),當(dāng)然也可以通過(guò)硬件,但很多情況下前者是更佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)(如R0M/RAM、磁碟、光盤)中,包括若干指令用以使得一臺(tái)終端設(shè)備(可以是手機(jī),計(jì)算機(jī),月艮務(wù)器,空調(diào)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例的方法。
      [0103]以上僅為本發(fā)明的優(yōu)選實(shí)施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說(shuō)明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。
      【主權(quán)項(xiàng)】
      1.一種數(shù)據(jù)壓縮記錄方法,其特征在于,所述方法包括: 實(shí)時(shí)采集數(shù)據(jù),完整記錄采集到的第一個(gè)數(shù)據(jù),所述第一個(gè)數(shù)據(jù)包括:時(shí)間值及浮點(diǎn)數(shù)值; 對(duì)于第i個(gè)數(shù)據(jù),計(jì)算所述第i個(gè)數(shù)據(jù)的浮點(diǎn)數(shù)值與上一個(gè)完整記錄的數(shù)據(jù)的浮點(diǎn)數(shù)值之間的第一差值,及計(jì)算所述第i個(gè)數(shù)據(jù)的時(shí)間值與上一個(gè)完整記錄的數(shù)據(jù)的時(shí)間值之間的第二差值,i的初始值為2; 若所述第一差值與所述第二差值均滿足預(yù)設(shè)的條件,則記錄所述第一差值及所述第二差值,以完成所述第i個(gè)數(shù)據(jù)的簡(jiǎn)易記錄。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 若所述第一差值為零,則放棄記錄所述第i個(gè)數(shù)據(jù)。3.根據(jù)權(quán)利要求1所述的方法,其特征在于,若所述第一差值與所述第二差值均滿足預(yù)設(shè)的條件,則記錄所述第一差值及所述第二差值,包括: 在所述第一差值為非零時(shí),判斷所述第一差值是否小于或等于第一預(yù)設(shè)值; 若所述第一差值小于或等于所述第一預(yù)設(shè)值,則判斷所述第二差值是否小于或等于第二預(yù)設(shè)值; 若所述第二差值小于或等于所述第二預(yù)設(shè)值,則記錄所述第一差值及所述第二差值。4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述方法還包括: 若所述第一差值大于所述第一預(yù)設(shè)值,則記錄所述第i個(gè)數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值,以完成所述第i個(gè)數(shù)據(jù)的完整記錄。5.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述方法還包括: 若所述第二差值大于所述第二預(yù)設(shè)值,則記錄所述第i個(gè)數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值,以完成所述第i個(gè)數(shù)據(jù)的完整記錄。6.一種數(shù)據(jù)壓縮記錄裝置,其特征在于,所述裝置包括: 采集記錄模塊,用于實(shí)時(shí)采集數(shù)據(jù),完整記錄采集到的第一個(gè)數(shù)據(jù),所述第一個(gè)數(shù)據(jù)包括:時(shí)間值及浮點(diǎn)數(shù)值; 計(jì)算模塊,用于對(duì)于第i個(gè)數(shù)據(jù),計(jì)算所述第i個(gè)數(shù)據(jù)的浮點(diǎn)數(shù)值與上一個(gè)完整記錄的數(shù)據(jù)的浮點(diǎn)數(shù)值之間的第一差值,及計(jì)算所述第i個(gè)數(shù)據(jù)的時(shí)間值與上一個(gè)完整記錄的數(shù)據(jù)的時(shí)間值之間的第二差值,i的初始值為2; 簡(jiǎn)易記錄模塊,用于若所述第一差值與所述第二差值均滿足預(yù)設(shè)的條件,則記錄所述第一差值及所述第二差值,以完成所述第i個(gè)數(shù)據(jù)的簡(jiǎn)易記錄。7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括: 放棄記錄模塊,用于若所述第一差值為零,則放棄記錄所述第i個(gè)數(shù)據(jù)。8.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述簡(jiǎn)易記錄模塊包括: 第一判斷模塊,用于在所述第一差值為非零時(shí),判斷所述第一差值是否小于或等于第一預(yù)設(shè)值; 第二判斷模塊,用于若所述第一差值小于或等于所述第一預(yù)設(shè)值,則判斷所述第二差值是否小于或等于第二預(yù)設(shè)值; 差值記錄模塊,用于若所述第二差值小于或等于所述第二預(yù)設(shè)值,則記錄所述第一差值及所述第二差值。9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述簡(jiǎn)易記錄模塊還包括: 完整記錄模塊,用于若所述第一差值大于所述第一預(yù)設(shè)值,則記錄所述第i個(gè)數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值,以完成所述第i個(gè)數(shù)據(jù)的完整記錄。10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述完整記錄模塊還用于:若所述第二差值大于所述第二預(yù)設(shè)值,則記錄所述第i個(gè)數(shù)據(jù)的時(shí)間值及浮點(diǎn)數(shù)值,以完成所述第i個(gè)數(shù)據(jù)的完整記錄。
      【文檔編號(hào)】G06F3/06GK106055275SQ201610352051
      【公開日】2016年10月26日
      【申請(qǐng)日】2016年5月24日
      【發(fā)明人】沈東 , 胡春梅
      【申請(qǐng)人】深圳市敢為軟件技術(shù)有限公司
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1