Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

If you have two fields in a query, does that mean two resolve functions? If I using a SQL database and the two fields were stored on two columns on the same table, wouldn't that cause 2 SQL queries to be run?


Only if each field required loading a new row, and even then batching can be used to turn this back into one query.

eg: { firstName, lastName } doesn't need to load new rows but { mother { name }, father { name } } does need to load new rows.

DataLoader (https://github.com/facebook/dataloader) is a small utility which makes batching and caching database requests straight forward.


Yes. But only one http request. If they're both the same query but access a different field you might be able to cache it.


Sangria in Scala has a mechanism called "Deferred" that lets you specify that it should ask you to resolve objects of a certain type all at once at the end, and you would do a single SQL query per object type there.

If the JavaScript implementation doesn't have something like this, perhaps it can be hacked on top.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: