代码之家  ›  专栏  ›  技术社区  ›  Julian Peil

频繁地保存数据库以节省数百万条记录?[副本]

  •  0
  • Julian Peil  · 技术社区  · 7 年前

    我正试图将大量数据插入到一个SQL server数据库中,我的问题是,当数百万条条目将被插入到其中时,我应该多长时间保存一次。在插入10000次或插入1000次后保存是否有效?有价值观吗? 我在用 C# Entity Framework 用数据填充服务器,所以我使用 DBContext 处理CRUD和保存的类。

    1 回复  |  直到 7 年前
        1
  •  3
  •   TomTom    7 年前

    我使用C#实体框架向服务器填充数据

    你的问题从这里开始。不适合这样。错误的工具。我喜欢实体框架,但它是一个ORM,而不是一个批量加载工具。

    我通常使用SqlBulkLoader类将高达65k条记录加载到一个临时表中(以秒为单位,但请注意,您几乎必须使用一个临时表),我在一个命令/事务中将该临时表复制到最后一个表中。

    全速并行处理4-5个线程。

    不管您如何转换实体框架,一百万行都需要几个小时。只是错误的工具。