DiceDB / dice

DiceDB is hyper-optimized for building and scaling truly real-time applications on modern hardware. It is a drop-in replacement for Redis with support for SQL-based reactivity.
https://dicedb.io/
Other
3.32k stars 420 forks source link

Add support for byte array as a datatype #142

Closed arpitbbhayani closed 1 month ago

arpitbbhayani commented 1 month ago

We need a way to support long byte arrays as native type in DiceDB and for this, we need to converge on a good way to implement it including the storage, access, and modify.

Note: This issue is not about implementing all the commands, but rather a way to support the long binary arrays.

Hence, we need to do the following

  1. figure out the best way to implement long bye arrays (not growable)
  2. the underlying storage layer should support bit manipulation
  3. it should be easier to restore the entire byte array, get the byte array

Here's a quick prototype that shows that we cannot do an in-place bit manipulation of string in Go.

yashs360 commented 1 month ago

@arpitbbhayani @JyotinderSingh Could you assign this to me, i'd like to spend some time taking a stab at it. I'll propose a design before going deep in implementation.

arpitbbhayani commented 1 month ago

@yashs360 Done. Let us know once you build an understanding.

yashs360 commented 1 month ago

This can be closed.