良好的数据库设计,可以调用和比较2D数据数组?
时间:2020-03-06 14:54:34 来源:igfitidea点击:
我正在将900x100元素的2D数组存储在数据库中。有效地召回和比较阵列很重要。我可以使用具有[A,x,y,A(x,y)]之类的架构的表,以便单个数组可以破坏90,000条记录。这似乎是一个〜ok〜表设计,用于存储数组,并且可以有效地调用单个元素,但是对整个数组的调用效率较低,并且会使数组比较效率很低。
我应该以这种方式离开表格设计,并在代码中构建和比较我的数组吗?还是有更好的方法来构造表,以便可以使用仅数据库操作获得有效的数组比较?
谢谢
解决方案
900 x 100元素实际上很小(即使元素是1K的庞大东西,也只有90 MB)。我们能否仅在需要时在内存中进行比较并以某种序列化格式存储在磁盘上?
将2D数组存储在数据库中没有任何意义,尤其是在它是不可变数据的情况下。
如果数据类型允许,请以级联格式存储数据,并在取消级联后在内存中进行比较。数据库操作也将比数据库检索快得多,而内存中操作也将更快。
谁知道,我们甚至可以在不进行串联的情况下进行比较。