2012-06-20 8 views
5

gpsデバイスをトラッキングするためにmongodbに汎用グラフデータベース(neo4j)を使用することと、混乱します。GPSベースのトラッキング用のデータベース

Iが必要

機能:

  • トラック及び各追跡装置のパスをプロファイル。
  • デバイス
  • すべてのデバイスからの集計データに基づいてトラフィック推定
  • 私はアルゴリズムを実装する対象のいくつかのよりインテリジェントなものを探しに基づく緯度ロング/アドレス。
  • Nodejs

任意の提案はに安定したインタフェースを持っているべきですか?

いくつかの回答はGISデータベースを使用することを提案していますが、グラフを示唆するものもあります。違いを明確にすることはできますか?

NoSQL and spatial data

+0

通常、多くの集計を行う場合は、SQLデータベースを使用します。しかし、MongoのようなDBやこの点で何が進んでいないのか。事実、あなたのリストが与えられれば、いずれかの方法で決定するのは難しいです。 MySQLを起動して必要なものをすべて効率的に処理するのは簡単です。より詳細なことがわからなければ、何かを提案するのは難しいです。 – Brad

+0

@brad:上記のものの中には、mysql(追跡部分)で簡単にやったと言ったものがあります。残りの部分については、「この場所にある利用可能なドライバをすべて取得して、彼らの評価に基づいて、そしてより少ない時間を取る人 " – srinathhs

+0

まあ、そのクエリの最初の部分はケーキです。 「時間がかからない人」の部分については、パス探索アルゴリズムを実装すると仮定します。あなたはおそらくアプリケーション側でそれをやっていると思います。 – Brad

答えて

2

具体的な実装を検討すると、mongodb + postgisの設定となることになりました。

+0

どのような設定ですか?説明できますか? – Balu

2

などモンゴ、 として無SQLデータベースとは対照的に、あなたのデータ分析は、除外をモンゴリレーショナル機能の多くを利用されますように聞こえるので、私は、オブジェクトリレーショナルデータベースをお勧めします。

あなたの仕様によれば、私はPostGISプラグインでPostgreSQLをお勧めします。 PostGISは、PostgreSQLリレーショナルデータベースサーバ用の空間データベースアドオンです。これには、OpenGISの「SQLのためのシンプルな機能」仕様で定義されているすべての関数とオブジェクトのサポートが含まれています。 PostGISの多くの空間関数を使用すると、高度な空間処理とSQLコマンドラインでの完全な照会が可能です。

1

couchdbの内線番号geocouchを参照すると、空間情報とバウンディングボックスクエリがサポートされます。明らかに、特定のユースケースのマップ縮小機能を使用して独自のビューを追加できます。

私のユースケースはちょっと違っていましたが、GPS座標を5分ごとに約3週間保存していましたが、6000 Km以上はほとんど停止しませんでした。距離、平均速度などを計算するためのカスタムビューをKML形式などの旅程表を出力するリスト関数とともに用意しました。現在の場所をリアルタイムで追跡するためのWebインターフェイスも提供されています。 CouchDBでは何の問題もありません。

ノード用のクライアントライブラリについては、いくつかのプロジェクトでcradleを使用していましたが、安定性と使いやすさに満足しています。ビューとすべてを変更しながら、開発中にキャッシュしていないことを確認してください。

関連する問題