将矩阵存储为 MongoDB 中的集合
storing a matrix as a collection in MongoDB
我有一堆点 {A, B, C, ...., X} 我想将它们的距离存储在矩阵中。一个额外的并发症是从 A 到 B 的距离与从 B 到 A 的距离不同,它们是不对称的。
我的目标是将此矩阵存储在 MongoDB 中的一个集合中,但我真的不知道该怎么做,这可能吗?非常感谢任何建议/指导。
MongoDB 支持存储地理空间对象,提供创建索引和执行查询这些对象的特定方式。
看看:
http://docs.mongodb.org/manual/applications/geospatial-indexes/
看看这是否是您要找的。
出于好奇,您使用的 "distance" 是什么量度?从技术上讲,您不能将函数 d(X, Y)
称为 "distance",除非总是 d(X, Y) = d(Y, X)
。球体上各点之间的距离是对称的,因此您不能使用该度量标准。如果您只想存储和检索值 d(X, Y)
,只需像
这样存储文档
{
"from" : X,
"to" : Y,
"distance" : 691
}
其中 X
和 Y
是任何合适的值。在 { "from" : 1, "to" : 1 }
上放置一个索引,然后定义
function d(X, Y) {
return db.distances.findOne({ "from" : X, "to" : Y }).distance
}
我有一堆点 {A, B, C, ...., X} 我想将它们的距离存储在矩阵中。一个额外的并发症是从 A 到 B 的距离与从 B 到 A 的距离不同,它们是不对称的。
我的目标是将此矩阵存储在 MongoDB 中的一个集合中,但我真的不知道该怎么做,这可能吗?非常感谢任何建议/指导。
MongoDB 支持存储地理空间对象,提供创建索引和执行查询这些对象的特定方式。
看看:
http://docs.mongodb.org/manual/applications/geospatial-indexes/
看看这是否是您要找的。
出于好奇,您使用的 "distance" 是什么量度?从技术上讲,您不能将函数 d(X, Y)
称为 "distance",除非总是 d(X, Y) = d(Y, X)
。球体上各点之间的距离是对称的,因此您不能使用该度量标准。如果您只想存储和检索值 d(X, Y)
,只需像
{
"from" : X,
"to" : Y,
"distance" : 691
}
其中 X
和 Y
是任何合适的值。在 { "from" : 1, "to" : 1 }
上放置一个索引,然后定义
function d(X, Y) {
return db.distances.findOne({ "from" : X, "to" : Y }).distance
}