2012-03-10 2 views
2

私の現在のニーズは非常に簡単です。地理位置情報は、(経度、緯度、コンテンツ)のように表示されます。クエリの場所が指定されている場合、Xキロメートル以内の場所を検索する必要があります。地理空間検索用の軽量なJavaライブラリですか?

クエリする場所があまりありません。私はそれらをRAMでインデックスできると思います。 このようなニーズに対応する簡単なJavaライブラリがありますか?ありがとう

+0

ソフトウェアに関するよく似た質問:http://softwarerecs.stackexchange.com/questions/27569/java-data-structure-to-store-geographical-objects-and-retrieve-them-by-area –

答えて

1

Solrを使用できます。地理空間検索機能があり、アプリケーションにも組み込むことができます。

+0

私は、 Luceneの空間的にはうまくいくが、私が期待したほど効率的ではないようだ。 – user716396

1

JSI (Java Spatial Index)は、Javaで比較的シンプルで高速なR-Treeの実装を提供しますが、これは平面座標用に設計されています。私はそれが地理空間座標(極と180度の経度でラップする)でどれくらいうまく機能しているのかよくわかりません。

NASA Worldwind Java SDKには、地理空間座標でうまく動作するQuadTreeの効率的な実装が含まれています。

私は、挿入操作とクエリ操作の速度と時間の複雑さをベンチマークしており、両方とも10,000項目まで同様のパフォーマンスを示しました。

私はまだLucene空間を試していませんが、今すぐ行って、私の小さなベンチマークテストでどのくらいよく比較するか見てみましょう。

+0

は、nasa quadtreeポイントベースまたは四角形ベースですか? – AlexWien

+0

@AlexWien APIがどちらの種類のエントリでも許可していますが、これは「長方形」(または「セクタ」)に基づいていると思います。 [APIドキュメント](http://builds.worldwind.arc.nasa.gov/worldwind-releases/1.3/docs/api/gov/nasa/worldwind/util/BasicQuadTree.html)を参照してください。 – gb96

関連する問題