Capsule Tree is a general purpose, self-balancing tree data structure for large, ordered data sets. It is designed to provide the same characteristics as B-trees and B+trees, but built from the ground up for in-memory usage. In other words, there are no provisions for “slow” I/O cases. The original motivation for this tree was a better backend for memory managers. However, the end result was a new sub-category of trees.