2016-07-01 116 views
0

我正在处理大量不同三维数据的应用程序。三维数据相对较小(如100 x 100 x 1000),但可能有数百万这些对象。现在我想知道是否有人在微风中处理这些数据的经验。尽管我可以使用嵌套数据结构(如向量矩阵),但通过索引(x,y,z)解决该结构的单个值很重要。定义像Point3d(x,y,z)这样的自己的结构是更好吗?但是x,y,z是矢量本身 - 或者使用DenseMatrix等预定义的微风类。我的问题是如何影响这些替代品的表现。Apache Spark - 三维数据的最佳数据结构是什么

感谢您的答复 罗尔夫 - 迪特尔

+0

你想达到什么目的?对于简单的索引,微风可能不是你想要的,即使是apache-sparc可能会对数百万个对象进行矫正,这取决于你的要求... – TilmannZ

回答

0

以我的经验,性能,简单的物体更好。这意味着仅使用基本类型,不使用嵌套对象等。简单对象的序列化速度更快,而且体积更小,因此您可以将更多内容打包到内存中。

在你的情况下,我认为使用一个9元素的元组比3个元素的元组要好。

(x1, x2, x3, y1, y2, y3, z1, z2, z3) 
is better than 
((x1, x2, x3), (y1, y2, y3), (z1, z2, z3)) 
+0

感谢Dikei,我是按照你的建议做的 - 一个非常大的平面地图。它需要一些逻辑来提取正确的值进行处理,但我看到的性能很好。 – kumaro

相关问题