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

Why did we go with the Protobuf API for Datastore rather than the REST/JSON API? #517

Closed
jgeewax opened this issue Apr 30, 2015 · 3 comments
Assignees
Labels
api: datastore Issues related to the Datastore API. type: question Request for information or clarification. Not an issue.

Comments

@jgeewax
Copy link
Contributor

jgeewax commented Apr 30, 2015

Just curious -- was there an issue with the REST/JSON API ?

@jgeewax jgeewax added type: question Request for information or clarification. Not an issue. api: datastore Issues related to the Datastore API. labels Apr 30, 2015
@stephenplusplus
Copy link
Contributor

Not sure, @silvolu and @rakyll were behind that. Not very informative, but for reference, #112 is the PR where we switched.

@ryanseys
Copy link
Contributor

The reason is because JSON/REST has a much higher size overhead compared to Protobuf at the network layer and possibly other layers. Datastore is meant to be very fast and size efficient with potentially high throughout, so requests should be as small as possible. This allows a higher throughput of requests compared to using JSON. We use JSON for the other API requests because their payloads are potentially much larger, making the difference between a protobuf request and a JSON one negligible.

@jgeewax
Copy link
Contributor Author

jgeewax commented Apr 30, 2015

Cool - thanks :)

@jgeewax jgeewax closed this as completed Apr 30, 2015
sofisl pushed a commit that referenced this issue Sep 15, 2022
chore: relocate owl bot post processor
sofisl pushed a commit that referenced this issue Oct 11, 2022
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
sofisl pushed a commit that referenced this issue Oct 13, 2022
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
sofisl pushed a commit that referenced this issue Nov 10, 2022
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
sofisl pushed a commit that referenced this issue Nov 17, 2022
Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
sofisl pushed a commit that referenced this issue Jan 10, 2023
This PR was generated using Autosynth. 🌈

Synth log will be available here:
https://source.cloud.google.com/results/invocations/b205fd33-200c-4298-88b8-18b0d1c79a3e/targets

- [ ] To automatically regenerate this PR, check this box.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api: datastore Issues related to the Datastore API. type: question Request for information or clarification. Not an issue.
Projects
None yet
Development

No branches or pull requests

3 participants