Segment Assignment Strategy interface
- Dominant language
- Java
- Stars
- 6.1k
- Forks
- 1.5k
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 195
Description
Currently, Offline/RealtimeSegmentAssignment covers all the available segment assignment strategies. Single implementation works for both replica group and non replica group based tables.A lot of concepts are coupled together in the existing segment assignment implementation. (Tiered storage, Realtime’s consuming/completed concept etc)
Assignment strategies (e.g. balanced, replica-group etc) needs to be decoupled from SegmentAssignment.
Design strategy doc:
https://docs.google.com/document/d/16sGvC8UPHcaYJvUXHB2wODsaeNYkXj4lAhaJiSk9Jiw/edit?usp=sharing
cc @snleee
Contributor guide
Research direction
Start with the linked strategy design document, then read OfflineSegmentAssignment, RealtimeSegmentAssignment, and SegmentAssignment to understand how assignment strategies are currently coupled. Compare the existing balanced and replica-group cases with the proposed design; done means the strategies are decoupled from SegmentAssignment as specified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- databases, distributed-systems
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100