roaring
roaring copied to clipboard
Roaring bitmaps in Go (golang), used by InfluxDB, Bleve, DataDog
Hi! I've noticed that this: `func calculateBitSetChecksum(dest *checksumStruct, bitmap map[string]uint, imageAsBaseSixtyFour string, numberOfPixels int) { for i := 0; i < len(imageAsBaseSixtyFour)-numberOfPixels; i++ { dest.checksum.Add(uint32(bitmap[imageAsBaseSixtyFour[i:(i+numberOfPixels)]])) } dest.checksumReady = true }`...
Currently, ``CRoaring`` supports "is a subset" queries: https://github.com/RoaringBitmap/CRoaring/blob/master/include/roaring/roaring.h#L329 This should be added to ``roaring``.
One of the most primary types of test we use to ensure that the library works well is unit testing. We can't rely on only these tests, as there is...
When *roaring.Bitmap is part of a struct that is serialized to JSON, it is empty `{}` and everything silently fails. Could this patch be included: ``` @@ -9,6 +9,7 @@...
In some cases, we should be able to greatly improve the performance of array-array intersections. See [Faster intersections between sorted arrays with shotgun](https://lemire.me/blog/2019/01/16/faster-intersections-between-sorted-arrays-with-shotgun/).
In many instances, especially when computing intersections, we generate empty containers that are immediately garbage collected. There are clever tricks we could use to start scanning the input containers, advance...
For CRoaring, @Brian-Esch implemented bidirectional iterators: https://github.com/RoaringBitmap/CRoaring/pull/190
@e-dard Showed promising result out of this PR... https://github.com/RoaringBitmap/roaring/pull/201#issuecomment-411823494 It seems he withdrew it, but there is value there.
Go 1.11 [will introduce](https://tip.golang.org/doc/go1.11#wasm) experimental [WebAssembly](https://webassembly.org) support. It might be a good idea to check if roaring can be compiled with WASM as target.
Compare ParOr benchmarks between Go and Java Roaring parallel aggregation algorithms. This would give us insights on where each of the implementations could be improved. In this project I'm particularly...