I think an ideal persistent-data system would let you mix and match your methods. Sometimes you want a stream, and other times you want a hash, tree or graph type of structure, or a full relational database. A file system that included all of these would give you the essential data structures of programming in a from-the-ground-up persistently stored form.
But the biggest issue is really a standardization one. Hierarchical is everywhere and it's hard to pull away from.