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

Supporting Consistent Data Push and Data Rollback on Pinot #7813

Open
snleee opened this issue Nov 22, 2021 · 1 comment
Open

Supporting Consistent Data Push and Data Rollback on Pinot #7813

snleee opened this issue Nov 22, 2021 · 1 comment

Comments

@snleee
Copy link
Contributor

snleee commented Nov 22, 2021

@jackjlli and I have come up with the design document for supporting the consistent push on Pinot. The main idea is to reuse the "segment replacement protocol" added as part of the merge-rollup service to switch old segments with new segments.

The existing protocol has some limitations since it was originally designed in the context of merge/rollup. Here are some main changes:

  • Add "reverted" state for segment lineage entry & revert API
  • Add "select" API that returns the list of target segments to be replaced given the time range.
  • Improve the segment name generator for the unique segment name
  • Improve the code to cover some failure cases

https://docs.google.com/document/d/1PUy4wSUPFyEWEW3a88Mipdug3cPj4EpV__lx-BVUTYk/edit#

@dang-stripe
Copy link
Contributor

@snleee are there plans to still support this for APPEND tables?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants