Re:Streaming data in Postgres to 1M clients with GraphQL
by IanCal on Monday October 17, 2022 @06:10AM
(#33231588)
The main thing I see it being used for is field selection and model nesting. From an end user perspective, it's pretty nice for this I think. Certainly nice that if I know it's a graphql endpoint I've already got a fairly solid idea about how to query it.
Re:Streaming data in Postgres to 1M clients with GraphQL
by ngrilly on Monday October 17, 2022 @08:58AM
(#33232817)
GraphQL raison d’être was not to federate and proxy different, heterogeneous data sources. It has initially been developed as a better API for the Facebook monolith. I asked one of GraphQL’s coauthors directly: https://twitter.com/ngrilly/status/1317415232717860866?s=46&....
Re:Streaming data in Postgres to 1M clients with GraphQL
by e12e on Monday October 17, 2022 @09:08AM
(#33232933)
Interesting - I didn't even know that there was a monolith at Facebook [ed: beyond there being reports that they use a large monorepo for code]. I stand corrected, thank you.
This doesn't directly address if graphql at Facebook federated different data sources (eg graph and sql databases) - but I suppose not?
Re:Streaming data in Postgres to 1M clients with GraphQL
by ngrilly on Monday October 17, 2022 @09:30AM
(#33233191)
I don't have any "insider" information regarding the data sources used by the Facebook monolith, written in PHP, when GraphQL has been developed, but I would expect it to talk to multiple/different datastores, and not just MySQL. Then yes, it could be argued that it has been used to federate multiple data stores, even though it was already the case before using GraphQL :)
Re:Streaming data in Postgres to 1M clients with GraphQL
by myvoiceismypass on Monday October 17, 2022 @12:34PM
(#33235978)
Are you talking about Falcor? https://github.com/Netflix/falcor
Speaking of Netflix - I think they had an alternative Api federation service that used some clever tricks with json string vs number keys to allow for alternating http put/get - and through that leverage http level caching. But I can't find the the link...