【发布时间】:2014-03-03 00:33:51
【问题描述】:
我有一个 MySql 表,它将保存大量数据(>100 万行),每分钟可能有 100 次插入,由两个 java 应用程序填充和读取。 我想知道构造表格的最佳方法。大约有 10 列代表十个测量值。如果其中一个测量值没有改变,我不想再次插入它,所以我不会不必要地填充我的表格。 澄清一下:
col1 clo2 col3 col4
10 34 78 235
-1 5456 345 234
23 347 -1 -1
在这个例子中,我只是为“未更改”插入了 -1。这种结构的问题:如果我想得到最后一个数据集,我必须做很多合并,我担心性能。所以问题是:这是正确的方法吗?
我当然可以只选择插入中每列的最后一个值并再次插入,但是每次插入都需要多次选择->再次,性能不是很好。
我还想到了一个只存储键值对的表,如下所示:
col1 col2
val1 10
val2 34
val3 78
val4 235
val2 5456
....
不确定这是否是一种合适的方法,因为我没有一个数据集不再有一个完整的测量链接,而且表格看起来有点“凌乱”。
如果有的话,你更喜欢哪种方法,或者你会如何做?
【问题讨论】:
-
“如果其中一个测量值没有改变,我不想再次插入它,所以我不会不必要地填满我的表格。”感觉。使用“-1”表示“此列未更改”会不必要地用无效数据填充表格。
标签: mysql database-design