B-Tree Containers from Google

Google has graciously gifted to the community a set of STL-like containers that use B-trees under the covers. The code has been released under the Apache 2 license.

C++ Containers That Save Memory And Time

We’re pleased to announce C++ B-Tree, a C++ template library that implements B-tree containers with an analogous interface to the standard STL map, set, multimap, and multiset containers. B-trees are well-known data structures for organizing secondary storage, because they are optimized for reading and writing large blocks of data. But the same property that makes B-trees appropriate for use with databases and file systems also makes them appropriate for use in main-memory, just with smaller blocks. [...]

Continue reading...

Add a Comment

Comments are closed.

Comments (3)

0 0

Froglegs said on Feb 2, 2013 01:01 AM:

The comparison doesn't seem to include the unordered containers, how does it fare against those?
1 0

Bjarne Stroustrup said on Feb 2, 2013 07:38 AM:

Another example of "space is time", that is, if you want to run fast, you must keep your data compact. I was actually pleased to see how well the standard associative containers fared for low numbers of elements.
2 0

Jaroslaw Zola said on Feb 5, 2013 03:00 PM:

It would be really nice to have these in the Boost - as a complement to boost::splay_set, etc.