我正在开发一个包含大量不同三维数据的应用程序。三维数据相对较小(如100 x 100 x 1000),但可能有数百万这些对象。现在我想知道是否有人在微风中处理这些数据的经验。虽然我可以使用嵌套数据结构,如矢量矩阵,但通过索引(x,y,z)来解决该结构的单个值非常重要。定义像Point3d(x,y,z)这样的自己的结构是否更好 - 但是x,y,z是vectorsa本身 - 或者使用像DenseMatrix这样的预定义的breeze类。我的问题是这些替代方案如何影响性能。
感谢您的回复 罗尔夫-迪特
答案 0 :(得分:0)
根据我的经验,对于性能而言,对象越简单越好。这意味着只使用原始类型,没有嵌套对象等...简单对象更快速地序列化并且更小,因此您可以将更多它们打包到内存中。
在你的情况下,我认为使用一个9元素元组比3个3元素元组更好。
(x1, x2, x3, y1, y2, y3, z1, z2, z3)
is better than
((x1, x2, x3), (y1, y2, y3), (z1, z2, z3))