Yet another approach?
This was the exact question I had when I learned of Relay + GraphQL. Then I reminded myself that the beauty of React is that it's just the view abstraction of the UI; of course there's going to be many approaches to handling data. So the real question is, what makes Relay better or worse than something like Redux?
At a high level, you can think of Relay as an implementation of Flux architecture patterns, and you can think of GraphQL as the interface that describes how the Flux stores encapsulated within Relay work. At a more practical level, the value of Relay is ease of implementation. For example, with Redux, you have a lot of implementation work to do, just to populate the stores with data. This isn't difficult to do, but it does get verbose over time. It's this verbosity that makes Redux difficult to scale beyond a certain point.
It's not the individual data points that are difficult to scale. It's the aggregate effect of having 'lots of fetch requests that end up...