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

[Proposal] Query Resource Isolation in Pinot #14551

Open
vvivekiyer opened this issue Nov 27, 2024 · 0 comments
Open

[Proposal] Query Resource Isolation in Pinot #14551

vvivekiyer opened this issue Nov 27, 2024 · 0 comments
Labels
PEP-Request Pinot Enhancement Proposal request to be reviewed.

Comments

@vvivekiyer
Copy link
Contributor

Hi, sharing the design for Query Resource Isolation in Pinot - https://docs.google.com/document/d/1bUr_l4B8gJCiUOKw97HFB9EEWvTU0Fw70HuZ0jq7YVw/edit?tab=t.0#heading=h.y9hbiahmee08

Problem Statement:
The noisy-neighbor problem is a serious limitation in dedicated tenant and shared tenant setups. In shared tenant setups, changes to query patterns/QPS/etc in one table can negatively impact the queries of other tables, increasing the blast-radius for incidents. In dedicated tenant use-cases, queries from a single use-case/upstream caller can impact other callers sharing the table.

Given a steady state workload being run on a Pinot cluster, Pinot should be able to protect itself and maintain the SLOs (availability and latency) and degrade gracefully to handle scenarios like unexpected changes in cost of workloads which can be a function of:

  • New queries being ramped
  • Changes to existing queries/query patterns
  • New data characteristics changing query selectivity
  • QPS spikes

Various versions of this problem have been discussed in the past. For example in #8618, #5627

High Level Proposal

Through this effort, table owners can define query workloads and attach enforcementProfiles to each workload. Pinot will provide read-path isolation for these query workloads. This will allow Pinot maintainers to provide better SLO guarantees and improve HW utilization.

For more details, please refer to the doc.

cc: @siddharthteotia @Jackie-Jiang @mayankshriv @mcvsubbu @ankitsultana @jasperjiaguo

@Jackie-Jiang Jackie-Jiang added the PEP-Request Pinot Enhancement Proposal request to be reviewed. label Dec 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
PEP-Request Pinot Enhancement Proposal request to be reviewed.
Projects
None yet
Development

No branches or pull requests

2 participants