我基本上尝试为我的JSON记录创建唯一的序列号作为ID,并将其发送到MongoDB。
我在一个集合中有数百条记录,并且应该具有类似于' ALERT-00000000001'等。
我希望这个增加,并且应该在多个执行之间同步。我是python的初学者。
请善意指导或解释方法。提前谢谢。
答案 0 :(得分:0)
序列的问题是你需要存储它的状态(“最后生成的数字是什么”)。
好消息是,你可以将它们存储在mongo中!db.sequences.find()
> { "_id": "alerts", "last_value": 234 }
然后您可以使用findAndModify
生成新值并在同一操作中将其返回 (无竞争条件,安全可靠)。
这种方法的一个缺点是您在数据库上施加更多负载以满足此业务逻辑。与使用内置对象ID相比,您可能需要更强大的硬件,具体取决于您的流量。