GPS座標(経度& Latitude)とタイムスタンプからなるGPSトラックを保存するのに、最も効率的(または最もインテリジェント)な方法についてのご意見をお待ちしています。MongoDB:タイムスタンプを含むGPSトラックを保存する方法
私はこれら二つのアイデアを考えています:
gpsTrack = {
"gps_track" : {
"type": "FeatureCollection",
"features": [
{ "type": "Feature",
"geometry": {"type": "Point", "coordinates": [104.0, 0.3]},
"properties": {
"absolute_timestamp" : "2011-12-31T23:50:59Z"
}
},
{ "type": "Feature",
"geometry": {"type": "Point", "coordinates": [128.0, 0.5]},
"properties": {
"absolute_timestamp" : "2011-12-31T23:59:59Z"
}
}
] }
}
または配列としてにGeoJSONマルチポイントとタイムスタンプを使用。
gpsTrack = {
"geometry": {"type": "MultiPoint", "coordinates": [[104.0, 0.3], [128.0, 0.5]]},
"properties": {
"timestamps" : ["2011-12-31T23:50:59Z", "2011-12-31T23:59:59Z"]
}
ウェイポイントの総量は、4.000~10.000と仮定されますが、確かに100.000未満です。最初のアイデアでは、すべてのポイントとそのタイムスタンプが別々に保存されているので、コレクションがかなり長くなるのではないかと心配しています。 2番目のアイデアはよりコンパクトで、MultiPoint GeoJSONタイプを利用しています。
ありがとうございます。
トラックデータに対して[LineString](https://docs.mongodb.com/manual/reference/geojson/#linestring)の方が「MultiPoint」に適していませんか? – barbakini
かもしれませんが、MongoDBでジオ空間クエリを実行することはできません。しかし、私はタイムスタンプとそれを結合する方法にもっと興味があります。 – Matthias
LineStringはmongodb geoクエリでもサポートされています。 lineStringまたはMultiPointの横、タイムスタンプの部分。 3番目の要素としてタイムスタンプを座標副配列の中に入れたらどうでしょうか?私はそれを試していないが、おそらくmongodbはジオクエリのためにそれを無視しますが、あなたはそれを使用することができ、座標配列とタイムスタンプ配列と一致する必要はありません – barbakini