Idreos, S., Kersten, M. L. and Manegold, S. (2007). Database cracking. In Proceedings of the 3rd Biennial Conference on Innovative Data Systems Research (CIDR 2007), Asilomar. https://cidrdb.org/cidr2007/papers/cidr07p07.pdf
Key takeaways
Read in full (NOTE-892). Database cracking builds an index as a by-product of answering range queries. Each select partitions, in place, the part of a copy of the column that the query had to touch, so that the qualifying values lie contiguously, and records the new boundaries in a small tree; later queries touch only the pieces at the edges of their range, so per-query cost falls as the column is split into more pieces. On a 10^7-value column under uniformly random range queries, the first cracking select costs 0.38 s against 0.27 s for a scan and about 3.3 s for sort-then-search, and cumulative cost stays below sorting’s until about 10^5 queries, after which upfront sorting wins. The authors claim that only ranges of past interest get organized, but every experiment uses uniformly random ranges, so that claim is not measured; there is no cost model, no rule for when a reorganization is worth making, and updates, concurrency and out-of-memory data are left as open problems.
Why this is here
QUESTION-114: is sorting a collection amortized search, and does physical database design give the joint cost model the question on amortized retrieval lacks?