什么样的DataBase适合高速USB插入?

时间:2011-03-14 02:12:38

标签: database usb

我正在构建一个C#桌面应用程序,它从USB连接到多个传感器(传感器/设备)的数据,例如,每个设备/传感器以非常高的采样率(> 1000 / s)同时向计算机发送数据并插入相应的数据库表(例如存储在温度表等中的温度数据)。

哪种数据库适合此类应用,最好是开源? MySQL的? SQLite的? 另外,我需要对数据库进行哪种配置以避免在高速数据插入过程中数据丢失?

1 个答案:

答案 0 :(得分:0)

你看过db40吗,它是为你正在做的事情设计的开源对象数据库。

http://www.db4o.com/

可用于Java& .Net&有很多例子,ZERO配置(新数据库(fileName))。如果db4o无法跟上插入速率(这是不可能的,但你永远不知道),你可以在内存中保留一个缓存来插入对象(例如,如果db write要慢,则在内存中缓存,并在成功写入时将项目从堆栈中弹出)。

我使用过VistaDB(付费的.net文件数据库)这很好,不确定插入的高级别但是如果你在内存中缓存到堆栈我想你可以尝试不同的数据库提供程序而不必返工代码。

另一个替代方案是像log4net这样的日志记录解决方案,只是写入文件,但可能值得一试。