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

Feature request: Scatter-gather support on Query APIs #2784

Closed
jeqo opened this issue Aug 28, 2019 · 3 comments
Closed

Feature request: Scatter-gather support on Query APIs #2784

jeqo opened this issue Aug 28, 2019 · 3 comments

Comments

@jeqo
Copy link
Member

jeqo commented Aug 28, 2019

Rational
One idea that comes from the development of https://github.com/jeqo/zipkin-storage-kafka and hope it fits under this issue:

The storage layer is based on Kafka Streams local store, that is aligned with partitioning. Currently we have specified that our implementation supports running only a standalone instance for storage, because if we scale the Zipkin instances, storage will get partitioned between servers.

In order to cope with this scenario I'd like to propose a scatter-gather support that allows storage layer to query other instances to build a response.

Example Scenario

Given a partitioned back-end with 3 zipkin servers (a,b,c) running as a cluster, if we receive a query from client-side, zipkin-a receive the request, and forward the same query to zipkin-b and zipkin-c with an additional query param (e.g. peer=true) so b and c don't propagate the query. zipkin-a receives responses and build response.

Prior Art

Kafka Streams already supports a metadata API to register peers URLs. https://kafka.apache.org/documentation/streams/developer-guide/interactive-queries.html#adding-an-rpc-layer-to-your-application

@codefromthecrypt
Copy link
Member

codefromthecrypt commented Aug 28, 2019 via email

@jeqo
Copy link
Member Author

jeqo commented Aug 28, 2019

@adriancole agree :) and probably moving it to the kafka-storage repo would be a better place to discuss.

@jeqo
Copy link
Member Author

jeqo commented Aug 28, 2019

@jeqo jeqo closed this as completed Aug 28, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants