Les doublons peuvent être supprimés via un script Python
from pymongo import MongoClient
client = MongoClient()
db = client.dbname
documentname = db.documentname
keys = {}
for k in documentname.find():
key = k['field']
if keys.has_key(key):
print 'duplicate key %s' % key
documentname.remove({'_id':k['_id']})
else:
print 'first record key %s' % key
keys[key]=1
L'idée est très simple, parcourez-la et stockez-la dans dict, et supprimez-la lorsqu'elle est rencontrée pour la deuxième fois.
Mais de cette façon, vous ne pouvez pas contrôler les objets supprimés et conservés. Vous pouvez ajuster le script en fonction de votre scénario
Quand il y a plus de 100 000 données, peuvent-elles être traitées rapidement via des scripts ? Comment le script se comporte-t-il lorsqu'il y a beaucoup de concurrence ?
Les doublons peuvent être supprimés via un script Python
L'idée est très simple, parcourez-la et stockez-la dans dict, et supprimez-la lorsqu'elle est rencontrée pour la deuxième fois.
.Mais de cette façon, vous ne pouvez pas contrôler les objets supprimés et conservés. Vous pouvez ajuster le script en fonction de votre scénario
J'ai également rencontré cette situation et je ne sais pas comment la résoudre. Pouvez-vous me donner quelques conseils
Quand il y a plus de 100 000 données, peuvent-elles être traitées rapidement via des scripts ? Comment le script se comporte-t-il lorsqu'il y a beaucoup de concurrence ?
mongoDB3.0 supprime le paramètre dropDups. Les données en double ne pourront pas être supprimées à l'avenir.
http://blog.chinaunix.net/xmlrpc.php?r=blog/article&id=4865696&uid=15795819