数据迁移工作总结

        这两天,公司项目的excel模块需要重构,需要对历史数据进行迁移。

        公司最近几次重大功能的上线,都涉及到数据迁移问题。可以说数据迁移是产品上线之前,重要的一个环节。数据迁移一般涉及的问题较多,不单单是数据位置的变动,更多的是数据格式要变化。

        这两天我的任务就是根据原有的四个数据库表合成新的三张数据库表,同时将历史的excel数据格式进行转换,存储的MongoDB中。这数据迁移的过程中,还是有很多问题需要注意的。

        首先,就是数据迁移时间问题。数据迁移尽量要在短时内搞定,因为只有在短时间内搞定,才可以保证用户不会有新的数据在这段时间内写入旧的系统。只有这样,产品上线后,数据才会保证一直。线上数据迁移我做了两次,第一次使用单线程的方式,对线上数据进行迁移。7个小时内都没有迁移完历史数据,这个时候,又有大量的新数据写入,所以很蛋疼。后才采用多进程方式,利用Redis做队列,实现多进程并发迁移数据。找了一个用户上传excel数量少得时间段进行迁移数据,大约一个小时搞定。这段时间内用户只上传了几个excel,然后再对这几个excel迁移。保证了上线之前,数据的可靠性。

        第二,一般数据迁移都会花时间,数据量大,时间更长,因此必须在真正的迁移之间,多次试验。首先我对线下的数据,采取少量的excel做功能试验。保证数据迁移功能是正确地。然后对线下的所有数据进行数据迁移,根据数据量的大小和迁移时间,以此来评估迁移线上数据需要多长时间。然后对线上数据做迁移,来验证数据的正确性。只有正确之后,才能找个合适的时间,对历史数据进行全量迁移。

         这次数据迁移,自己也学到了不少东西。数据,毫无疑问,对所有系统来说都是至关重要的。所以,一定要保证数据迁移的正确性。宁愿产品上线比预期完一点,也要保证数据迁移的正确性。


转载于:https://my.oschina.net/yulongjiang/blog/421104

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值