将大量数据从SQL Server数据库定期传输到MongoDB

时间:2015-07-09 16:02:13

标签: sql sql-server mongodb c#-4.0

我在SQL Server数据库中有一个表,其中包含大量数据,大约200万条记录(每行大约20列)。使用新数据在每天结束时覆盖此表中的数据。

新数据可用后,我需要将此数据从SQL Server数据库复制到MongoDB表。

问题在于如何以最快的速度实现目标?

一些选项:

  • 一个读写的简单应用程序
  • 某种导出/导入工具。
  • 从SQL生成\ multiple文件,然后同时读取以在MongoDB中导入

1 个答案:

答案 0 :(得分:0)

从我的到期:

  

一个读写的简单应用程序。

将是最慢的。

  

某种导出/导入工具。

应该比第一个选项快得多。查看bcp实用程序以从SQL导出数据,然后使用mongoimport导入数据。但是,在mongo中存储数据的方式可能与SQL有很大不同,因此使用导出/导入工具进行映射可能是一个很大的挑战。

  

从SQL生成\多个文件,然后同时读取到   在MongoDB中导入

并行可能会加快一些过程,但我认为你不会对结果感到满意。

根据您的问题,数据会在每天结束时被覆盖。不知道你现在是怎么做的,但我认为那时将数据写入SQL和Mongo是有意义的。这样您就不必再次从SQL查询数据来更新Mongo。在更新SQL的同时,您将只是写入mongo。

希望它有所帮助!