The ART of practical synchronization
Efficient locking for concurrent operations on B-trees