在使用Pymongo批量插入数据到MongoDB时经常用到insert_many()这个方法。在默认情况下,我们只给这个方法传一个参数:包含字典的列表。此时,这个列表中的所有字典,会被按顺序一条一条插入到MongoDB的某个集合中。
实际上,insert_many还有几个默认参数。其中参数ordered的作用是保证插入的顺序和列表中的字典顺序一致。如果列表中的某一个字典无法被插入,那么这个字典后面的所有数据都无法插入。
如果把ordered设置为False,那么此时列表中的所有字典会被乱序插入,甚至还能够并行插入,其中一个字典有问题无法插入不会影响其它的字典,唯一的弊端就是插入到集合中的顺序可能与列表中的字典顺序不一致。