better mongodb query performance

* exists query using selective _id to avoid object overhead in return
* updateOrCreate using mongodb upsert functionality