数据迁移需要很长时间




我已经编写了一个用于迁移数据的 c# 控制台应用程序;
记录数不是那么多; 每个表有近 1000 条记录。 但是数据的结构和业务逻辑非常复杂,有近 200 个表。
我的数据迁移具有所有类型的操作:删除、更新、插入、获取
删除和更新操作仅用于源数据库中的数据更正
现在我的迁移数据需要很长时间;几乎三天或更长时间!

一些改进措施:
1-首先在源数据库中设置"NOCHECK CONSTRAINT";当此操作时:删除,更新和插入。
2-然后从源数据库获取数据;设置一些索引。
3-插入数据时禁用目标数据库中的所有索引和约束。

现在任何人都可以提出改进持续时间的解决方案吗?

应该注意的是,在项目的这一阶段,我无法切换到另一个解决方案,例如 SSIS。我必须改进这个控制台应用程序! 使用 EFCore 2.2 与传输数据的纯查询一起使用;

多谢

通过将恢复模式从完整切换到简单,我获得了非常显着的性能改进。显然,有充分的理由使用完整;但是,根据迁移所做的更改,性能改进可能是数量级的!

很抱歉提出来,但很难理解你想说什么(我想这是由于英语不好(。也许运行一些语法检查器来提高清晰度!您的问题是关于 EF 迁移的吗?或者您正在使用自定义查询从一个数据库读取数据并写入另一个数据库?似乎是后者,那么在开始调整数据库实例之前,您可能需要查看 SQL 扩展事件以识别编写不佳的查询!没有什么比调整 SQL 更能提高性能了!

最新更新