Data Structures for Data-Intensive Applications: Tradeoffs and Design Guidelines (Foundations and Trends(r) in Databases)