Mongoでアップサートを実行できます。Mongoドキュメントの「修飾子付きのアップサート」を参照してください:
モディファイア操作でアップサートを使用できます。このような場合、修飾子が更新基準メンバーに適用され、結果のオブジェクトが挿入されます。
必要なクエリは次のようになります:
db.events.update( { "user_id" : "714638ba-2e08-2168-2b99-00002f3d43c0" },
{ $push : { "events" : { "profile" : 10, "data" : "X"}}}, {"upsert" : true});