Java - Large data storage using a B+ tree