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

feat: add docs for compaction offload mechanism #141

Merged
merged 4 commits into from
Oct 28, 2024

Conversation

LeslieKid
Copy link
Contributor

@LeslieKid LeslieKid commented Sep 30, 2024

Tasks

Add tech-design doc for compaction offloading.

@jiacai2050
Copy link
Contributor

The CI failed, please execute make lint before submit.

4. Compaction node executes the task and send the result back to the HoraeDB.
5. HoraeDB receives the result and updates the manifest.

We can see that the compaction offload architecture in HoraeDB is different from the traditional one. It separates the compaction task distribution from HoraeMeta and moves it into HoraeDB, which reduces the load of HoraeMeta to lower the risk of single points of failure.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can see that the compaction offload architecture in HoraeDB is different from the traditional one.

I think most system will do like this, only the horaedb node know which sst it has, the meta have no idea how many sst a table contains, so meta can't the schedule task.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @jiacai2050 . The statement here is indeed incorrect.

fixed.

│ HoraeMeta Cluster │
│ │
└───────────────────────────────────────────────────────────────────────┘
▲ ▲ | |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need to add sequence number to illustrate how the process will go.

Like the first image in rocksdb: https://github.com/facebook/rocksdb/wiki/Remote-Compaction-(Experimental)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed.

Copy link
Contributor

@jiacai2050 jiacai2050 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@jiacai2050 jiacai2050 changed the title docs: add docs for compaction offload mechanism feat: add docs for compaction offload mechanism Oct 28, 2024
@jiacai2050 jiacai2050 merged commit 261234f into apache:main Oct 28, 2024
1 check passed
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

Successfully merging this pull request may close these issues.

2 participants