【问题标题】:Why same software is taking more time than it took previously? [closed]为什么相同的软件花费的时间比以前更多? [关闭]
【发布时间】:2013-06-19 07:28:55
【问题描述】:

我不确定这是否是在本网站上提出的问题。但我很无奈。

我为我的办公室开发了一个 win 表单应用程序,它将文本文件中的数据导入数据库表。它现在运行大约 6 个月。但最近用户抱怨我说,该应用程序花费的时间比以前多得多。例如,即使在一个月前,将大约 100 万条数据导入数据库也需要大约 10 分钟。但最近,相同版本的应用程序需要大约 30 分钟才能导入如此大量的数据。

我猜,这不是软件问题(即使在 30 分钟内,数据导入成功)。如果是这样,还有什么其他问题会导致这种问题?

我使用VS2010 C#(目标框架2.0)和MS SqlServer 2008数据库开发了软件。

【问题讨论】:

  • * 抱歉打错了。 “TOO”将被“接受”
  • 在过去的 6 个月内,您是否保留了所有导入的数据?如果是这样,您的数据库已经增长了很多。瓶颈可能是您的数据库性能吗?

标签: c# database winforms performance sql-server-2008


【解决方案1】:

你是对的,这不是软件问题。你需要看看

  1. 是否存在网络问题?可能不是,但您需要排除它
  2. 当您开始将大量行导入到已经有很多行的表中时,您可能会因为现有索引而面临问题,因为每次添加行时都必须更新它们。假设您已经在使用批量导入,您需要在导入数据时禁用索引并在导入后重新启用它。
  3. 不确定您的导入程序究竟做了什么,但您可以在 SSIS 上尝试一下,它是在考虑此类流程的情况下构建的。

【讨论】:

    【解决方案2】:

    这很可能是数据库调整问题。查看在您的数据库中触发了哪些 SQL 查询,并仔细查看是否缺少索引。正确的索引可以极大地提高性能。还要看看索引碎片整理。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-06-28
      • 1970-01-01
      • 2019-12-07
      • 1970-01-01
      • 1970-01-01
      • 2014-05-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多