批量插入或逐个插入

时间:2009-12-16 13:37:35

标签: c# sql-server insert

我正在构建一个系统,用户每隔30秒就会添加一次数据。在这种情况下,我应该进行批量插入(每2分钟插入一次),还是每次用户输入数据时插入。该系统将在c#3.5和Sql server上构建。

4 个答案:

答案 0 :(得分:2)

从普通插入开始。你无法对此进行优化。

如果性能成为一个问题,或者很明显它可能是一个问题,那么你只需要考虑优化 - 即使这样,它也可能不是插入问题!使用分析器确定瓶颈。

答案 1 :(得分:0)

这真的取决于您的要求,您能提供更多信息吗?

例如:

  • 您是否在运行网络应用?
  • 数据是否时间敏感(供其他用户使用)
  • 您是否担心并发使用数据?
  • 您在看什么交易量?

对于少量数据,我只需按用户需要插入行,缓存的增益可能很小,并且简化了实现。如果预计使用率会很高,请回顾一下优化设计。回到避免过早优化的一般规则:)

答案 2 :(得分:0)

每30秒一次没有明显的压力。根据KISS原则,在这种情况下,我更喜欢逐个。

答案 3 :(得分:0)

如果是每30秒我会立即插入,如果插入的速度应该尽可能快(对于大数据,则为2秒)。

如果您发现潜在的未来增长会看到更频繁的交易,那么请考虑填充插入内容。