java.lang.Object
org.bitlap.roaringbitmap.FastAggregation
Fast algorithms to aggregate many bitmaps.
-
方法概要
修饰符和类型方法说明static RoaringBitmapand(long[] aggregationBuffer, RoaringBitmap... bitmaps) Compute the AND aggregate.static RoaringBitmapand(Iterator<? extends RoaringBitmap> bitmaps) Compute the AND aggregate.static RoaringBitmapand(RoaringBitmap... bitmaps) Compute the AND aggregate.static intandCardinality(RoaringBitmap... bitmaps) Compute cardinality of the AND aggregate.static RoaringBitmaphorizontal_or(Iterator<? extends RoaringBitmap> bitmaps) 已过时。static RoaringBitmaphorizontal_or(List<? extends RoaringBitmap> bitmaps) Minimizes memory usage while computing the or aggregate on a moderate number of bitmaps.static RoaringBitmaphorizontal_or(RoaringBitmap... bitmaps) Minimizes memory usage while computing the or aggregate on a moderate number of bitmaps.static RoaringBitmaphorizontal_xor(RoaringBitmap... bitmaps) Minimizes memory usage while computing the xor aggregate on a moderate number of bitmaps.static RoaringBitmapnaive_and(Iterator<? extends RoaringBitmap> bitmaps) Compute overall AND between bitmaps two-by-two.static RoaringBitmapnaive_and(RoaringBitmap... bitmaps) Compute overall AND between bitmaps two-by-two.static RoaringBitmapnaive_or(Iterator<? extends RoaringBitmap> bitmaps) Compute overall OR between bitmaps two-by-two.static RoaringBitmapnaive_or(RoaringBitmap... bitmaps) Compute overall OR between bitmaps two-by-two.static RoaringBitmapnaive_xor(Iterator<? extends RoaringBitmap> bitmaps) Compute overall XOR between bitmaps two-by-two.static RoaringBitmapnaive_xor(RoaringBitmap... bitmaps) Compute overall XOR between bitmaps two-by-two.static RoaringBitmapor(Iterator<? extends RoaringBitmap> bitmaps) Compute overall OR between bitmaps.static RoaringBitmapor(RoaringBitmap... bitmaps) Compute overall OR between bitmaps.static intorCardinality(RoaringBitmap... bitmaps) Compute cardinality of the OR aggregate.static RoaringBitmappriorityqueue_or(Iterator<? extends RoaringBitmap> bitmaps) Uses a priority queue to compute the or aggregate.static RoaringBitmappriorityqueue_or(RoaringBitmap... bitmaps) Uses a priority queue to compute the or aggregate.static RoaringBitmappriorityqueue_xor(RoaringBitmap... bitmaps) Uses a priority queue to compute the xor aggregate.static RoaringBitmapworkAndMemoryShyAnd(long[] buffer, RoaringBitmap... bitmaps) Computes the intersection by first intersecting the keys, avoids materialising containers, limits memory usage.static RoaringBitmapworkShyAnd(long[] buffer, RoaringBitmap... bitmaps) Computes the intersection by first intersecting the keys, avoids materialising containers.static RoaringBitmapxor(Iterator<? extends RoaringBitmap> bitmaps) Compute overall XOR between bitmaps.static RoaringBitmapxor(RoaringBitmap... bitmaps) Compute overall XOR between bitmaps.
-
方法详细资料
-
and
Compute the AND aggregate. In practice, calls {#link naive_and}- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
-
and
Compute the AND aggregate.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
-
and
Compute the AND aggregate.- 参数:
aggregationBuffer- a buffer for aggregationbitmaps- input bitmaps- 返回:
- aggregated bitmap
-
andCardinality
Compute cardinality of the AND aggregate.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated cardinality
-
orCardinality
Compute cardinality of the OR aggregate.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated cardinality
-
horizontal_or
已过时。Calls naive_or.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
-
horizontal_or
Minimizes memory usage while computing the or aggregate on a moderate number of bitmaps. This function runs in linearithmic (O(n log n)) time with respect to the number of bitmaps.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
- 另请参阅:
-
horizontal_or
Minimizes memory usage while computing the or aggregate on a moderate number of bitmaps. This function runs in linearithmic (O(n log n)) time with respect to the number of bitmaps.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
- 另请参阅:
-
horizontal_xor
Minimizes memory usage while computing the xor aggregate on a moderate number of bitmaps. This function runs in linearithmic (O(n log n)) time with respect to the number of bitmaps.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
- 另请参阅:
-
naive_and
Compute overall AND between bitmaps two-by-two. Performance hint: if you have very large and tiny bitmaps, it may be beneficial performance-wise to put a tiny bitmap in first position. This function runs in linear time with respect to the number of bitmaps.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
-
naive_and
Compute overall AND between bitmaps two-by-two. Performance hint: if you have very large and tiny bitmaps, it may be beneficial performance-wise to put a tiny bitmap in first position. This function runs in linear time with respect to the number of bitmaps.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
-
workShyAnd
Computes the intersection by first intersecting the keys, avoids materialising containers.- 参数:
buffer- an 8KB bufferbitmaps- the inputs- 返回:
- the intersection of the bitmaps
-
workAndMemoryShyAnd
Computes the intersection by first intersecting the keys, avoids materialising containers, limits memory usage. You must provide a long[] array of length at least 1024, initialized with zeroes. We do not check whether the array is initialized with zeros: it is the caller's responsability. You should expect this function to be slower than workShyAnd and the reduction in memory usage might be small.- 参数:
buffer- should be a 1024-long arraybitmaps- the inputs- 返回:
- the intersection of the bitmaps
-
naive_or
Compute overall OR between bitmaps two-by-two. This function runs in linear time with respect to the number of bitmaps.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
-
naive_or
Compute overall OR between bitmaps two-by-two. This function runs in linear time with respect to the number of bitmaps.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
-
naive_xor
Compute overall XOR between bitmaps two-by-two. This function runs in linear time with respect to the number of bitmaps.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
-
naive_xor
Compute overall XOR between bitmaps two-by-two. This function runs in linear time with respect to the number of bitmaps.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
-
or
Compute overall OR between bitmaps.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
-
or
Compute overall OR between bitmaps.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
-
priorityqueue_or
Uses a priority queue to compute the or aggregate. This function runs in linearithmic (O(n log n)) time with respect to the number of bitmaps.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
- 另请参阅:
-
priorityqueue_or
Uses a priority queue to compute the or aggregate. This function runs in linearithmic (O(n log n)) time with respect to the number of bitmaps.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
- 另请参阅:
-
priorityqueue_xor
Uses a priority queue to compute the xor aggregate. This function runs in linearithmic (O(n log n)) time with respect to the number of bitmaps.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
- 另请参阅:
-
xor
Compute overall XOR between bitmaps.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
-
xor
Compute overall XOR between bitmaps.- 参数:
bitmaps- input bitmaps- 返回:
- aggregated bitmap
-