我们有一个从几个硬件设备中提取数据的应用程序。每个设备的数据都应存储在不同的文件中。
目前,我们对于每个文件使用一个 FileStream,并在数据到来时进行写操作,就这样。
大量数据正在涌入,由于磁盘是HDD(而不是SSD),所以出现了问题,我猜这是因为闪存更快,但也因为我们不必一直跳转到不同的文件位置。
默认情况下的一些指标:有400个不同的数据源(每个都应有自己的文件),并且我们每秒接收约50KB的数据(因此为20MB/s)。每个数据源采集都是并发运行的,总共使用了约6%的CPU。
有没有一种方法可以组织刷新到磁盘,以确保更好的流动性?
我们还将考虑改善硬件,但这并不是这里的主题,因为它是改善我们的读/写的好方法。
目前,我们对于每个文件使用一个 FileStream,并在数据到来时进行写操作,就这样。
大量数据正在涌入,由于磁盘是HDD(而不是SSD),所以出现了问题,我猜这是因为闪存更快,但也因为我们不必一直跳转到不同的文件位置。
默认情况下的一些指标:有400个不同的数据源(每个都应有自己的文件),并且我们每秒接收约50KB的数据(因此为20MB/s)。每个数据源采集都是并发运行的,总共使用了约6%的CPU。
有没有一种方法可以组织刷新到磁盘,以确保更好的流动性?
我们还将考虑改善硬件,但这并不是这里的主题,因为它是改善我们的读/写的好方法。