MySQL中出现意外值的最佳数据类型是什么?

时间:2018-01-01 17:09:09

标签: php mysql arrays time-series

我为大数据做api。原则上,每分钟我都会得到很多价值。它的一些电能测量。它可以是浮点数(802.6522)或可变长度的数组,但是数组中的值在区间< 0; 1>中。 [1,0,0,0,0,1,...]。我每分钟都有23000行! 我不,我的数据库表的最佳结构是什么。 第一个版本是:

id (int) | created_at (timestamp)| value (text) | measurand_id (int) | is_array (tinyint) 

每个值都转换为json,如果值是数组,则列“is_array”为1,否则为0.但是此方法在DB中占用了大量内存。我建立了这个因为 - 每天,我合并一个被测量的值并将一个数组另存为另一个表(第一个表中的一个记录被删除):

id (int) | created_at (timestamp) | measurand_id (int) | value_for_one_day( text) 

value_for_one_day为pack("d*", ...[802.2555, 803.2555, ...]

我考虑创建两个表,一个用于浮点数,第二个用于二进制。但我仍然对此感到不满。解决方案必须快速有效。

那么,是否有人有一些关于将时间序列保存到MySQL的技能?非常感谢,对不起我的英语。

0 个答案:

没有答案