mongodb - MongoDB ,选择不获取最新更新
问题描述
我们有一个小型 Mongo DB 3.2v(2 个节点)用于簿记,其中保存有关要加载到不同 MPP 数据库中的不同文件的信息。
Mongo 只存储文件的文件名和状态。Python 加载过程会更改选择的每个文件的状态(就绪->等待->工作)并加载到另一个 MPP 数据库中。
有多个进程可以并行运行并更改文件的状态。问题是,每当进程 p1 更新文件状态(使用 find_one_and_update)时,大约同时运行的另一个并行进程 p2 不会获得更新的状态该文件并选择与 p1 相同的文件。
为什么我会在 Mongo 上观察到这个一致性问题?
读取并没有反映最新的写入。这会导致我们最终加载同一个文件两次的问题。
解决方案
推荐阅读
- python - python 3如何在内部处理大整数
- oracle - Oracle SELECT 子查询
- powershell - 如何在不解析的情况下从 powershell 命令行获取 -vf 到 ffmpeg
- ionic-framework - 如何设置吐司的样式
- php - Codeigniter 路线不显示任何内容
- c++ - 是否有编译器警告是 Visual Studio 2013 来检测复制而不是通过引用分配的引用
- mysql - 如何为关系数据库(MySQL)编写模式以在 GraphQL 中加入多个表?
- android - 在启动完成时重新安排作业的更好方法是什么?
- libxml2 - 哪个版本的 Insight 工具包支持 libxml2?
- javascript - Wordpress:主页 js 与投资组合页面插件的 js 冲突