V Mongo můžete dělat upserts, viz "Upserts with Modifiers" z dokumentu Mongo:
Můžete použít upsert s operací modifikátoru. V takovém případě budou na člena aktualizačních kritérií použity modifikátory a výsledný objekt bude vložen.
Dotaz, který potřebujete, bude vypadat takto:
db.events.update( { "user_id" : "714638ba-2e08-2168-2b99-00002f3d43c0" },
{ $push : { "events" : { "profile" : 10, "data" : "X"}}}, {"upsert" : true});