Apologies if this is a very straightforward schema design problem that should be fairly obvious, but I'm not seeing a good way to do it. Let's say I have an index that wants to model Albums and Tracks, and they all have arbitrary tags attached to them (represented by multivalue string type fields). Tracks also have an album id field which can be used to associate them with an album. I'd like to perform a query which shows both Track and Album results, but suppresses Tracks that are associated with Albums in the result set.
I am tempted to use a "join" here, but I have reservations because it is my understanding that joins cannot work across shards, and I'm not sure it's a good idea to limit myself in that way if possible. Any suggestions? Is there a standard solution to this type of problem where you've got hierarchical items and you don't want children shown in the same result as the parent?