Database

db={"tracks":[{"_id":"trackId1","creatorId":"userId1","categoryId":"categoryId1"}],"users":[{"_id":"userId1","tracks":["trackId1","trackId2"]}],"categories":[{"_id":"categoryId1","tracks":["trackId1","trackId15","trackId20"]}]}

Query

db.tracks.aggregate([{"$match":{"_id":"trackId1"}},{"$lookup":{"from":"users","localField":"creatorId","foreignField":"_id","as":"creator-tracks"}},{"$set":{"creator-tracks":{"$arrayElemAt":["$creator-tracks.tracks",0]}}},{"$lookup":{"from":"categories","localField":"categoryId","foreignField":"_id","as":"related-tracks"}},{"$set":{"related-tracks":{"$arrayElemAt":["$related-tracks.tracks",0]}}},{"$set":{"related-tracks":{"$filter":{"input":"$related-tracks","cond":{"$not":[{"$in":["$$this","$creator-tracks"]}]}}}}},{"$set":{"creator-tracks":{"$slice":[{"$filter":{"input":"$creator-tracks","cond":{"$ne":["$$this","$_id"]}}},-5]}}},{"$set":{"related-tracks":{"$slice":["$related-tracks",-5]}}},{"$lookup":{"from":"tracks","localField":"creator-tracks","foreignField":"_id","as":"creator-tracks-all-info"}},{"$lookup":{"from":"tracks","localField":"related-tracks","foreignField":"_id","as":"related-tracks-all-info"}}])

Result