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

Set rules for gzip content encoding that's friendly to tables-in-a-bucket #108

Open
jfuerth opened this issue Mar 5, 2021 · 1 comment
Labels
feature New feature or request

Comments

@jfuerth
Copy link
Contributor

jfuerth commented Mar 5, 2021

This issue was raised in a discussion on #98.

When data is stored as (potentially paginated) Search Tables, not only can the JSON files be gzip compressed at rest, but they can be served as-is with a content-encoding: gzip header. This adds no burden to the web server, and minimal burden to the client receiving the data.

The vast majority of real-world HTTP clients understand content-encoding: gzip and transparently decompress data as it is received. However, according to the HTTP specification, we should only serve gzip-compressed data if the client requests it with an accept-encoding: gzip header.

If we specify that Search clients MUST be capable of dealing with content-encoding: gzip and MUST send an accept-encoding: gzip header, this will make it easy for tables-in-a-bucket Search implementations to serve compressed responses, speeding up transfers and reducing storage costs.

Notes on cloud support:

@ifokkema
Copy link

Sounds great to me!

@mcupak mcupak modified the milestones: 1.0.0, 1.1.0 Apr 14, 2021
@mcupak mcupak removed this from the 1.1.0 milestone May 26, 2021
@mcupak mcupak added the feature New feature or request label May 26, 2021
@mcupak mcupak added this to the 1.1.0 milestone May 26, 2021
@mcupak mcupak removed this from the 1.1.0 milestone Dec 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants