Interface IWritableBitmapIndex

All Superinterfaces:
IBitmapIndex, IMemoryMonitored
All Known Implementing Classes:
ABitmapIndex, QFSBitmapIndex

public interface IWritableBitmapIndex extends IBitmapIndex
An indexing structure using bitmaps to resolve point queries and range queries. The index is multilevel, the fields of a level can have multiple values depending on the cardinality of the level. Each possible value of each level is indexed with a bitmap so that finding the rows that match a particular query resorts to AND / OR logical operations on the bitmaps.
To speedup access and minimize storage cost the values in a level are coded as positive integers. In the context of range queries, the value -1 is reserved to represent 'ANY' value on a level.
Author:
ActiveViam
  • Method Details

    • append

      int append(int[] tuple)
      Appends a tuple in the index.
      Parameters:
      tuple - tuple to consider
      Returns:
      new size of this index
    • append

      int append(IPointList source, int pointPosition)
      Appends a tuple read from a point list in the index.
      Parameters:
      source - list of points
      pointPosition - index in the list of the point to append
      Returns:
      new size of this index
    • append

      int append(IPointList source)
      Appends an entire series of points.
      Parameters:
      source - list of points to append to this index
      Returns:
      new size of this index
    • append

      int append(IPointList source, int from, int to)
      Appends a series of points as a batch operation.
      Parameters:
      source - the point source
      from - the starting index of the series of points to append (inclusive)
      to - the end index of the series of point to append (exclusive)
      Returns:
      the index of the last appended point
    • clear

      void clear()
      Clears the whole index, truncating all bitmaps to size zero.