Skip to content
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

Add stream compression option for KV #1434

Closed
aldiesel opened this issue Oct 8, 2023 · 3 comments
Closed

Add stream compression option for KV #1434

aldiesel opened this issue Oct 8, 2023 · 3 comments
Assignees
Labels
accepted The defect or proposal as been accepted proposal Enhancement idea or proposal

Comments

@aldiesel
Copy link

aldiesel commented Oct 8, 2023

What motivated this proposal?

If the KV store is storing similar objects that are repeated compression can save a lot of disk space.
The stream config exposes the compression, but the KV config does not.
Saving disk space and less IO to disk.
Ideally the objects could also be sent over the wire as compressed objects if it is on a per key basis instead of the whole block, but not sure of the implementation. This could be a separate feature request.

What is the proposed change?

Expose the stream compression option in the KV config.

Who benefits from this change?

Everyone using KV store

What alternatives have you evaluated?

No response

@aldiesel aldiesel added the proposal Enhancement idea or proposal label Oct 8, 2023
@piotrpio
Copy link
Collaborator

Hey @aldiesel, thanks for creating the issue. This looks interesting, let us discuss that and get back to you.

@piotrpio piotrpio added the accepted The defect or proposal as been accepted label Oct 27, 2023
@piotrpio
Copy link
Collaborator

We've accepted the proposal. We'll also be updaing object sotre with similar behavior: nats-io/nats-architecture-and-design#253

I'll update the go client soon, this should make it into the next release.

@piotrpio piotrpio self-assigned this Oct 27, 2023
@piotrpio
Copy link
Collaborator

KV compression in available in [email protected]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
accepted The defect or proposal as been accepted proposal Enhancement idea or proposal
Projects
None yet
Development

No branches or pull requests

2 participants