Filipp Shergalis created IGNITE-27147:
-----------------------------------------
Summary: Optimise compaction of multiple delta files
Key: IGNITE-27147
URL: https://issues.apache.org/jira/browse/IGNITE-27147
Project: Ignite
Issue Type: Improvement
Reporter: Filipp Shergalis
Assignee: Filipp Shergalis
Fix For: 3.2
We process delta files from the oldest to the newest, and pages can be written
to main file multiple times.
For each delta file we already have in memory sorted arrays with page indexes.
We can use "two pointer technique" to skip duplicated pages in linear time (n -
pages in all other delta files).
In the beginning of partition compaction create an int array containing indexes
for each delta file. Processing each page iterate over all other delta files
until we get page >= current one and skip the page if found. Next page
continues from the same index, so it's efficient
--
This message was sent by Atlassian Jira
(v8.20.10#820010)