Я передавал данные из файла данных размером в несколько ГБ и импортировал их в коллекцию Mon go. Файл был заархивирован, поэтому я zcat file.gz | mongoimport
знаю, что в коллекции должно быть 454229 документов. Это было пусто, и файл имеет 454229 записей. После процесса я попробовал подсчет и получил 459680. Я опустошил коллекцию и повторил процесс. Тот же результат. Затем я попробовал отличное в столбце «_id», попробовал длину и получил 454229. Чтобы удостовериться, что никакой другой процесс не изменял данные, я попробовал считать и различить дважды, различая с последующим подсчетом и затем подсчетом с последующим отличным.
rs1:PRIMARY> db.amazon_xml_data.distinct("_id").length;
454229
rs1:PRIMARY> db.amazon_xml_data.count({});
459680
rs1:PRIMARY> db.amazon_xml_data.count({});
459680
rs1:PRIMARY> db.amazon_xml_data.distinct("_id").length;
454229
Пн go версия 3.2.22. У меня тоже есть этот текст в конце файла журнала ...
amazon_xml_data 1.11GB
2020-02-15T14:37:07.302+0530 imported 454229 documents
Так что я почти уверен, что число, возвращаемое счетчиком, неверно.