ऐसा लगता है $addToSet आपके आदेश के समान काम कर रहा है:$पुश एक $ne चेक के साथ . दोनों O(N) होंगे
https://github.com/mongodb /mongo/blob/master/src/mongo/db/ops/update_internal.cpp
अगर गति वास्तव में महत्वपूर्ण है तो हैश का उपयोग क्यों न करें:
इसके बजाय:
{'$addToSet': {'a':1}}
{'$addToSet': {'a':10}}
उपयोग करें:
{$set: {'a.1': 1}
{$set: {'a.10': 1}