MutableRoaringBitmap
and
(ImmutableRoaringBitmap
) that users
can rely upon for fast set of integers.See: Description
Interface | Description |
---|---|
MappeableContainerPointer |
This interface allows you to iterate over the containers in a roaring bitmap.
|
PointableRoaringArray |
Generic interface for the array underlying roaring bitmap classes.
|
Class | Description |
---|---|
BufferBitSetUtil |
This class provides convenience functions to manipulate BitSet and MutableRoaringBitmap objects.
|
BufferFastAggregation |
Fast algorithms to aggregate many bitmaps.
|
BufferIntIteratorFlyweight |
Fast iterator minimizing the stress on the garbage collector.
|
BufferReverseIntIteratorFlyweight |
Fast iterator minimizing the stress on the garbage collector.
|
BufferUtil |
Various useful methods for roaring bitmaps.
|
ImmutableRoaringArray |
This is the underlying data structure for an ImmutableRoaringBitmap.
|
ImmutableRoaringBitmap |
ImmutableRoaringBitmap provides a compressed immutable (cannot be modified) bitmap.
|
MappeableArrayContainer |
Simple container made of an array of 16-bit integers.
|
MappeableBitmapContainer |
Simple bitset-like container.
|
MappeableContainer |
Base container class.
|
MappeableRunContainer |
This container takes the form of runs of consecutive values (effectively, run-length encoding).
|
MutableRoaringArray |
Specialized array to store the containers used by a RoaringBitmap.
|
MutableRoaringBitmap |
MutableRoaringBitmap, a compressed alternative to the BitSet.
|
MutableRoaringBitmapSupplier |
MutableRoaringBitmap
and
(ImmutableRoaringBitmap
) that users
can rely upon for fast set of integers.
It differs from the org.roaringbitmap in that
the backing stores are ByteBuffers.
Initially, one wants to construct a bitmap using
the MutableRoaringBitmap class. After serialization,
one can memory-map an ImmutableRoaringBitmap to the
serialized bytes, enabling off-heap processing.
import org.roaringbitmap.buffer.*;
//...
MutableRoaringBitmap r1 = new MutableRoaringBitmap();
for(int k = 4000; k<4255;++k) r1.add(k);
MutableRoaringBitmap r2 = new MutableRoaringBitmap();
for(int k = 1000; k<4255; k+=2) r2.add(k);
MutableRoaringBitmap union = ImmutableRoaringBitmap.or(r1, r2);
MutableRoaringBitmap intersection = ImmutableRoaringBitmap.and(r1, r2);
//...
DataOutputStream wheretoserialize = ...
r1.runOptimize(); // can help compression
r1.serialize(wheretoserialize);
Copyright © 2018. All rights reserved.