Interesting observation, @gibsonf1. What kind of hierarchical queries do you have in mind that would be challenging to write in SQL? Would you mind sharing them in natural language?
For our data, we use Apache Solr, but a schema modeled on how we think the human schema works - its quite simple actually.
- MongoDB
- ZODB
- Others
- This is also how disk file systems operate
You access items by their path, instead of id. Also path is relevant how the data is physically stored, fetching nearby data being cheaper.
To work with this kind of data in SQL you need to construct recursive CTE queries. While it’s possible, it is a bit akward sometimes.