In a non-relational database environment, when tasked with handling a data model primarily composed of complex hierarchical structures with multiple one-to-many relationships and the need for flexible schema changes, which database is the BEST fit?
Key/value stores
Graph databases
Document databases
Wide-column stores