hanahmily opened a new pull request, #230: URL: https://github.com/apache/skywalking-banyandb/pull/230
## Encoding procedure pushdown The previous revision of kv selected two separate phases to encode data: flushing disk tables and compaction. These different phases can not share any algorithm except for the encoding process. That brings complexity and is hard to maintain. In https://github.com/apache/skywalking/issues/10118, I propose a new design to implement encoding/decoding. In this PR, I did the following: * Bump up the private Badger to support a new table builder that could encode a chunk with the same key. * Use Badger's compression function to compress tags instead of the plain encoding function, which is purged. * Inject a BufferWriter to encoder/decoder in place of `bytes.Buffer`. The BufferWriter wraps a table writing buffer, which builds the table's binary. Fixes https://github.com/apache/skywalking/issues/10118 ## Chroes * Remove redandunt `shardID`. * Merge `pkg/bit` and `pkg/buffer` into `pkg/encoding`. Signed-off-by: Gao Hongtao <hanahm...@gmail.com> -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@skywalking.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org