Database 连续数据的数据库连接/更新机制

Database 连续数据的数据库连接/更新机制,database,database-connection,message-queue,Database,Database Connection,Message Queue,我正在开发一个系统,其中有大量(每分钟2000-5000条记录)的传入事件必须记录在数据库(SQL server 2000)中。我们正在使用ODBC连接来连接数据库 目前,我们在应用程序启动期间打开一个连接,并使用该连接推送数据,因为我们无法在每次记录添加期间获得新连接,因为大量数据被输入。我们面临的挑战是:当出现网络故障或连接中断时,数据不会被推入数据库(当然,如果网络出现问题,我们会得到cdbeexception)。但是现在恢复联系已经太迟了,因为更多的事件不断涌入。每次插入记录时都无法检查

我正在开发一个系统,其中有大量(每分钟2000-5000条记录)的传入事件必须记录在数据库(SQL server 2000)中。我们正在使用ODBC连接来连接数据库

目前,我们在应用程序启动期间打开一个连接,并使用该连接推送数据,因为我们无法在每次记录添加期间获得新连接,因为大量数据被输入。我们面临的挑战是:当出现网络故障或连接中断时,数据不会被推入数据库(当然,如果网络出现问题,我们会得到
cdbeexception
)。但是现在恢复联系已经太迟了,因为更多的事件不断涌入。每次插入记录时都无法检查连接的有效性,因为这是一项耗时的工作

我想到了一个解决这个问题的方法

使用缓存/缓冲区来保存 传入警报/事件并推送它们 输入数据库 n秒一次和/或 缓冲区达到一定大小

这个解决方案会有帮助吗?有没有其他办法来解决这个问题


谢谢。

我正要建议使用缓存或缓冲区来保存传入事件并批量插入它们,但我知道您已经想到了


你应该看看你要找的可能是哪一个。

我会让客户在文件名中写上日期和时间。写入N条记录后,停止写入该文件(开始写入新文件),并插入“已完成”的文件。您可以添加清理例程来删除已处理到数据库中的文件