It's the difference between assembly language and a high-level language. Key-value stores are simple, basic, and primitive. What's wrong with that? It's like a farmer saying, I don't want to learn how to use a tractor (it's too complicated), and who chooses to farm with a hand tools instead.
> if you use tools you don't understand
Yea.... key-value stores are incredibly complex and require years of learning to understand.
I could explain a key-value store to a five-year old. In fact, I think even a pigeon can understand the fundamental principle underlying a key-value store. https://en.wikipedia.org/wiki/Pigeon_intelligence
For any non-trivial data model, go with something that can capture your model at a high level, like a relational database or a graph database.