当前位置:  开发笔记 > 编程语言 > 正文

将数据从SQL导入MongoDB.全有或全无

如何解决《将数据从SQL导入MongoDB.全有或全无》经验,为你挑选了0个好方法。

我有以下架构: 在此输入图像描述

我将数据从SQL数据库导入到mongodb中.我使用导入程序将数据迁移到mongodb,mongodb通过API向网站提供数据.

导入可能需要几分钟,如果失败,我希望能够回滚(能够回滚多个导入会很棒)或删除未提交行的数据库/集合(如果你想到它)作为SQL事务).

我尝试将所有内容导入到事务集合中,成功时将数据移动到正确的集合中.这需要花费很多时间才能保持高效.我还尝试了导入临时数据库然后交换它们的解决方案.但是如果有人例如在db-copy之后但在导入完成之前在网站上注册新用户(在交换时该用户将丢失),则会遇到问题.

如何以安全的方式执行导入而不是最基本的并发问题?

编辑:澄清解决方案:我将在一个cron工作中运行导入器,至少每天一次.我目前保留最新同步的时间戳,并选择比SQL-db更新的所有内容.随着时间的推移,事物将自动出现在SQL-db中.

在导入结束时,我运行一个下载程序,从SQL db中的URL下载所有图像.

我不想在下载图像之前开始新的同步,因为这可能导致奇怪的行为.

推荐阅读
黄晓敏3023
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有