【发布时间】:2016-01-13 02:23:26
【问题描述】:
我必须做一个每秒检查 35 项更改的应用程序。每个项目有 3 个值,每个值可以容纳 5 个字节,因此项目有 15 个字节。值不会每秒都在变化,但没有规律,可能会不断变化,也可能会停顿一段时间......
所以我做了一个小计算,我得到了每秒将所有字段存储在关系数据库 (SQL) 上的结果:
35 * 15 字节 * 60 秒 * 60 分钟 * 24 小时 * 365 = 16.5 Gb 一年。
这对于 SQL 数据库来说太过分了。你会做些什么来减少数据的大小?我在考虑仅在发生更改时存储数据,但是您需要在更改完成时存储数据,如果数据更改过于频繁,这可能需要比其他方法更多的空间。
我不知道除了 SQL 数据库之外是否还有其他存储库更符合我的要求。
你怎么看?
编辑:更多信息。
除了我可以创建以节省空间的数据之外,数据之间没有任何关系。我只需要存储这些数据并查询它。数据可能看起来像(将所有数据放在一个表中并每秒保存数据):
Timestamp Item1A Item1B Item1C Item2A Item2B ....
whatever 1.33 2.33 1.04 12.22 1.22
whatever 1.73 2.33 1.04 12.23 1.32
whatever 1.23 2.33 1.34 12.22 1.22
whatever 1.33 2.31 1.04 12.22 1.21
我能感觉到必须是更好的解决方案而不是这种方法......
编辑 2:
我通常会在一段时间内查询有关某个Item的值的数据,通常我不会从多个Item中查询数据...
【问题讨论】:
-
我要补充一点:您没有计算记录和索引的开销,您可能需要添加时间戳!
-
您需要这些数据做什么?只是为了储存吗?需要做分析吗?它的“关系”部分在哪里?它只是一个带有一些分区的大表吗?
-
不知道数据是什么样子以及您将如何处理它,因此无法正确回答您的问题。
-
我已编辑问题以向我们提供您要求的信息。
-
您能否举例说明您打算执行的查询类型?
标签: database database-design repository