pirvtech opened a new pull request, #19138: URL: https://github.com/apache/druid/pull/19138
Segment metadata stored in memory of the Historicals, is used when looking up segments that match an interval for query and segment loading purposes. Currently this is a serial scan that goes through all segments metadata in ascending start time order to find the right matching segments. This changes introduces an Interval Tree as a more efficient way to store segment metadata in memory, to speed up searches for segments, that can potentially cut down search times from O(n) to O(logn). Core changes to file processing/src/main/java/org/apache/druid/timeline/VersionedIntervalTimeline.java Interval tree implementation in file processing/src/main/java/org/apache/druid/timeline/IntervalTree.java Documentation comments have been included in important files and sections of code. Unit tests added. This has been reviewed internally and is in a production Druid cluster. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
