Uploaded image for project: 'Apache IoTDB'
  1. Apache IoTDB
  2. IOTDB-1140

optimize regular data encoding

    XMLWordPrintableJSON

Details

    Description

      current regular data encoding algorithm:

      1. Calculate the difference between two adjacent values. The smallest difference is used as the equal-frequency frequency.
      2. Determine the data range of this batch of data based on the difference between the last value and the first value.
      3. Traverse this batch of data, use a BitSet, compare the difference between two adjacent values with the same frequency, and save the value true by default,
        If the value is not equal to the equal frequency, calculate the number of equal frequency differences and set the value to false at the corresponding position, indicating that the point is a missing point.

       

      this algorithm only can identity missing point,  if have error point , it will throw exception..

      because BitSet only can do this thing,  indicates whether the same frequency exists in a segment of data

       

      But there is some optimize point..

      If there is an abnormal value in a column of values, the algorithm is deviated if the difference is directly obtained to the minimum value.

      sample: 1000,1100,1800,1400,1500... 

      current algorithm be do not use...

      1800 is a error point,  we should identity error point,  revise data. 

      revise data should be : 1000,1100,1300,1400,1500

      Attachments

        Issue Links

          Activity

            People

              wangchao316 Chao Wang
              wangchao316 Chao Wang
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: