-
Notifications
You must be signed in to change notification settings - Fork 1k
Support keys compression in Dragonfly #4883
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
romange
added a commit
that referenced
this issue
May 6, 2025
One of the building blocks for #4883 Signed-off-by: Roman Gershman <roman@dragonflydb.io>
romange
added a commit
that referenced
this issue
May 6, 2025
Move the code in debugcmd.cc into HuffmanEncoder. One of the building blocks for #4883 Signed-off-by: Roman Gershman <roman@dragonflydb.io>
romange
added a commit
that referenced
this issue
May 7, 2025
Move the code in debugcmd.cc into HuffmanEncoder. One of the building blocks for #4883 Signed-off-by: Roman Gershman <roman@dragonflydb.io>
romange
added a commit
that referenced
this issue
May 7, 2025
Move the code in debugcmd.cc into HuffmanEncoder. One of the building blocks for #4883 Signed-off-by: Roman Gershman <roman@dragonflydb.io>
romange
added a commit
that referenced
this issue
May 25, 2025
Fixes #4883 For example, without huffman encoding `debug POPULATE 100000 xxxxxxxxxxxxxxxxx 20` requires 2399200 bytes of memory for keys: `type_used_memory_string:2399200` the subsequent `debug compression EXPORT` outputs base640-encoded table `GBDgCpXW/////66rio2Ue++9927Vqa21Fg==` finally, running dragonfly with `--huffman_table="keys:GBDgCpXW/////66rio2Ue++9927Vqa21Fg=="` will completely eliminate keys allocations due to huffman encoding and small string optimization. Signed-off-by: Roman Gershman <roman@dragonflydb.io>
romange
added a commit
that referenced
this issue
May 26, 2025
Fixes #4883 For example, without huffman encoding `debug POPULATE 100000 xxxxxxxxxxxxxxxxx 20` requires 2399200 bytes of memory for keys: `type_used_memory_string:2399200` the subsequent `debug compression EXPORT` outputs base640-encoded table `GBDgCpXW/////66rio2Ue++9927Vqa21Fg==` finally, running dragonfly with `--huffman_table="keys:GBDgCpXW/////66rio2Ue++9927Vqa21Fg=="` will completely eliminate keys allocations due to huffman encoding and small string optimization. Signed-off-by: Roman Gershman <roman@dragonflydb.io>
romange
added a commit
that referenced
this issue
May 26, 2025
Fixes #4883 For example, without huffman encoding `debug POPULATE 100000 xxxxxxxxxxxxxxxxx 20` requires 2399200 bytes of memory for keys: `type_used_memory_string:2399200` the subsequent `debug compression EXPORT` outputs base64-encoded table `GBDgCpXW/////66rio2Ue++9927Vqa21Fg==` And when, we rundragonfly with `--huffman_table="keys:GBDgCpXW/////66rio2Ue++9927Vqa21Fg=="` this completely eliminates keys allocations due to huffman encoding and small string optimization. Signed-off-by: Roman Gershman <roman@dragonflydb.io>
romange
added a commit
that referenced
this issue
May 26, 2025
Fixes #4883 For example, without huffman encoding `debug POPULATE 100000 xxxxxxxxxxxxxxxxx 20` requires 2399200 bytes of memory for keys: `type_used_memory_string:2399200` the subsequent `debug compression EXPORT` outputs base64-encoded table `GBDgCpXW/////66rio2Ue++9927Vqa21Fg==` And when, we run dragonfly with `--huffman_table="keys:GBDgCpXW/////66rio2Ue++9927Vqa21Fg=="` this completely eliminates keys allocations due to huffman encoding and small string optimization. Signed-off-by: Roman Gershman <roman@dragonflydb.io>
romange
added a commit
that referenced
this issue
May 28, 2025
Fixes #4883 For example, without huffman encoding `debug POPULATE 100000 xxxxxxxxxxxxxxxxx 20` requires 2399200 bytes of memory for keys: `type_used_memory_string:2399200` the subsequent `debug compression EXPORT` outputs base64-encoded table `GBDgCpXW/////66rio2Ue++9927Vqa21Fg==` And when, we run dragonfly with `--huffman_table="keys:GBDgCpXW/////66rio2Ue++9927Vqa21Fg=="` this completely eliminates keys allocations due to huffman encoding and small string optimization. Signed-off-by: Roman Gershman <roman@dragonflydb.io>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
See #4880 for motivation and as a prerequisite
feature description
CompactObject::SetString
should be able to use huffman encoding.The text was updated successfully, but these errors were encountered: