我们的项目需要在加工厂中存储传感器获取的数据。大约有50,000个输入,平均采样率为10次/秒。数据首先缓存在RAM中,然后每隔1秒转储到HDD。数据必须能够被实时访问(搜索/编辑/删除...通过ID或值或时间戳)由大约40个客户端提供。
存储在硬盘上的数据结构很简单,它只是一个表,每行由:传感器ID (2字节),时间戳(4字节)和编码值(4字节)组成。
写入HDD的速度计算如下:50000* 10 * (2 +4+ 4)字节/秒~4.8MB/秒。
我应该在硬盘上使用哪种存储技术?SQL vs简单文件?
发布于 2015-05-11 12:36:36
您不需要为每个转储创建文件。您可以为每个小时(或一天)创建一个文件,因此搜索/编辑/删除可以比一个大文件快得多。
如果你只需要一些简单的搜索,我认为基于Steve建议的简单文件可能是你需要的解决方案。
存在用于这种数据速率的SQL/NoSQL解决方案,但它们将是昂贵的。如果你想对“活动”表进行大量的编辑和删除,情况可能会更糟。如果您需要将这些数据存档以进行更高级的查询,您可以每小时或每天将它们加载到数据库服务器(一个系统),这将比实时插入它们快得多,也更便宜。
https://stackoverflow.com/questions/30159352
复制相似问题