Matrix 500000组坐标之间的距离矩阵

Matrix 500000组坐标之间的距离矩阵,matrix,geospatial,spatial,bigdata,Matrix,Geospatial,Spatial,Bigdata,我正在做一个有50万参与者的项目。我们的数据库中有他们家的精确坐标,我们希望将这些数据发布给需要它的人,以评估我们的参与者彼此生活的距离 我们非常不愿意公布精确的坐标,因为这是一个匿名项目,重新识别的风险非常高。四舍五入的坐标(大约100米或1公里)显然不够精确,无法达到他们想要达到的目标 一个很好的解决方法是向他们发送一个500000 x 500000的矩阵,每个参与者对之间的绝对距离,但这意味着2500亿个条目,或者说如果我们删除一半矩阵,因为| A-B |=| B-A | 我以前从未处理过

我正在做一个有50万参与者的项目。我们的数据库中有他们家的精确坐标,我们希望将这些数据发布给需要它的人,以评估我们的参与者彼此生活的距离

我们非常不愿意公布精确的坐标,因为这是一个匿名项目,重新识别的风险非常高。四舍五入的坐标(大约100米或1公里)显然不够精确,无法达到他们想要达到的目标

一个很好的解决方法是向他们发送一个500000 x 500000的矩阵,每个参与者对之间的绝对距离,但这意味着2500亿个条目,或者说如果我们删除一半矩阵,因为| A-B |=| B-A |

我以前从未处理过这种类型的数据,所以我想知道是否有人对如何处理这种数据有聪明的想法?(不需要向他们发送2 TB的数据!)


谢谢。

如果数据接收者乐于执行大圆计算来计算自己的距离,那么您只需要发送500000条线,但要使用转置的纬度和经度

首先确定数据集的近似地理空间中心,然后计算出将该中心转置到0°N和0°E所需的偏移量。然后将这些相同的偏移量应用于用户的纬度和经度。这将使结果集中在赤道和本初子午线周围

如果实际数据不太接近极点,则实际点A和B之间计算的距离将非常接近相应的偏移点

显然,应用的偏移量需要保密


如果已知您的数据基于某个特定位置,则此方法可能不起作用-接收者可能能够推断出实际点的位置-但这是您需要自己决定的事情。

您是否可以对数据应用偏移量,使其以某种方式重新以0°N和0°E为中心?这样,计算仍然可以准确地执行,但您无法确定实际坐标的位置。显然,应用的偏移量需要保密。