Nested childs vs joining queries

Hello everyone,

I'm looking for some wisdom of the elastic community :slight_smile:

Considering an app performing matching (like Tinder for instance). Would it be better to store the likes/dislikes of each user in a nested array or in a different document (using has_child for queries).

I'm aware that joins are expensive but in the case of the nested array, ES will reindex the all user everytime an user is liked/disliked.

Is it the typical case where joins should be used ?

Thanks for your help