不断地在后台线程上从文本文件填充SQL数据库

时间:2010-11-11 13:47:49

标签: sql-server file background-process

目前,我希望在将数据存储到数据库时将其作为用户选项。

将数据保存到文件并使用后台线程将文本文件中的数据读取到SQL服务器。

我的计划流程: - 来自服务器的数据流(每秒100个)。 - 希望将数据存储在文本文件中,并使用后台线程将数据从文本文件中不断复制回SQL数据库。

之前是否完成过?

干杯。

1 个答案:

答案 0 :(得分:1)

你的问题确实有点令人困惑。

我猜你的意思是:

  • 每秒100行来自某个源或服务器(例如,日志条目)
  • 用户的一个选项是文本文件缓存:行存储在文本文件中,并定期将文本文件内容的增量副本复制到(a)SQL Server表中。
  • 用户的另一个选择是直接插入:数据在进入时直接存储在数据库中,中间没有文本文件。

我是对的吗?

如果是,那么你应该做以下几行:

  • 针对表格的INSERT操作创建触发器
  • 在该触发器中,检查正在插入的用户。如果用户已禁用文本文件缓存,则插入可以继续。否则,数据将重定向到文本文件(或缓存表)
  • 创建一个存储过程,用于检查缓存表或文本文件中的新数据,将新数据复制到实际表中,并删除缓存的数据。
  • 创建一个每分钟,每小时,每天都在存储过程上运行的SQL Server代理作业...

由于从T-SQL到文本文件的界面不是很灵活,我建议使用缓存表。为什么是文本文件?

就此而言,为什么在将数据插入表之前缓存数据?如果您解释问题的背景,也许我们可以提出更好的解决方案。