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?
Wide-column stores
Key/value stores
Document databases
Graph databases