14

ユーザーが記録した GPS トラックをデータベースに保存する必要があります。トラックは、地図上に線を引く目的で、移動 5 メートルごとにマーカーで構成されます。私は 200 km のトラックを見積もっています。これは 40,000 の lnlt マーカーを意味します。少なくとも 50,000 人のユーザーと、それぞれに 200 km のトラックが 20 個あると見積もっています。これは、少なくとも 400 億の lnlt マーカーを意味します。

これもスケーリングする必要があるため、100 万人のユーザーの場合、8,000 億個の GPS マーカーの容量が必要です。

40,000 個のマーカーの各セットが 1 つのトラックに属しているため、GPS トラックの 1 ~ 2000 万レコード/セットについて話していることになります。

要件: ユーザーは、モバイル アプリケーションで Google マップの上にこれらのトラックを表示するように要求します。

関係: 現在 2 つのテーブルがあります。表 1 には、[トラック ID]、[ユーザー ID]、[コメント]、[距離]、[時間]、[最高速度] があります。

表 2 には [trackid] [経度] [緯度] があり、ここにすべての GPS マーカーが保存されます。読み取りパフォーマンスを維持しながら、この量の GPS データを保存する効率的な方法は何ですか?

新情報:

GPS データを KML ファイルに保存して、Google マップの上にトラックとして表示することは、データベース スペースを節約する優れたソリューションです。KML を KMZ (基本的には KMZ 拡張子を持つ圧縮された KML) に圧縮すると、ファイル サイズがさらに大幅に縮小されます。KMZ は GPX よりもはるかに高速に読み込まれ、KML レイヤーとして Google Maps API と統合できます。さらにサポートが必要な場合は、Google からのこの情報を参照してください。これは、これまでのところ、意図した要件に対する最良のソリューションのようです。

4

1 に答える 1

7

特定のデータベースの選択は、いつものように、情報をどのように保存し、どのように使用するかに関係しています。そのため、プロジェクトの正確な要件やデータの関係を知らなくても、トピックを読んで、どの特定の製品またはストレージモデルが最適かを判断するのが最善の方法です。

開始するのに適した場所は、データベースのパフォーマンスと使用法を比較するブログを読むことです(添付を参照)。

http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis

于 2012-10-10T18:24:12.660 に答える