2012-03-14 18 views
3

私は、各ドキュメントの緯度経度点を持つ20Mドキュメントのインデックスを持つSolr 3.4を使用しています。 locLatLonというsolr.LatLonTypeを使用する既存の索引フィールドがあります。これのパフォーマンスをsol.GeoHashFieldと比較しようとしています。 locLatLonフィールドのcopyFieldによって設定されたlocLatLon_geohashというGeoHashフィールドを使用する新しいフィールドをスキーマに追加しました。Solr 3.4 GeoHashフィールドのパフォーマンスの問題の問い合わせ

http://solr_server:8983/solr/select/?q=*:*&fq={!bbox%20pt=34.1,-118.3574%20sfield=locLatLon_geohash%20d=10} 

:私はいくつかの文書をロードしSolrのインデックスのサンプル負荷を行なったし、私は両方のフィールドで検索することができました

ジオハッシュクエリ(私は、実際のSolrサーバー名を削除しました)地理空間クエリ:表面に

http://solr_server:8983/solr/select/?q=*:*&fq={!bbox%20pt=34.1,-118.3574%20sfield=locLatLon%20d=10} 

これらの2つのクエリは非常に類似した結果を返す必要があります。地理空間クエリは62msを要し、179k文書を返します。 geohashクエリは34081msをとり、121k文書を返します。これらの結果を生成するのにかかる時間について心配しているので、私はまだ返された結果の数について心配していません。

GeoHashについては、Solrをクエリするこの方法は非常に速くなければならないようですが、実際は非常に遅いです。

debugQuery = onクエリパラメータを追加してデバッグしようとしましたが、ソースコードを掘り下げずに使用できるものは何も教えてくれません。以下は、Solrの結果のスニペットで、結果のフィルタクエリのみです。

ジオハッシュデバッグSolrの出力:

<arr name="parsed_filter_queries"> 
    <str>ConstantScore(frange(ghhsin(str(locLatLon_geohash),literal(9q5cfxwybswp))):[0 TO 10.0])</str> 
</arr> 

地理空間デバッグSolrの出力:

<arr name="parsed_filter_queries"> 
    <str>+locLatLon_0_coordinate:[34.01006796645071 TO 34.18993203354929] +locLatLon_1_coordinate:[-118.46600561233814 TO -118.24879438766185]</str> 
</arr> 

QUESTION(S):私は考慮していなかったものがあるがSoloにGeoHashタイプを使用していますか?私はこれをデバッグしようとするべきことが他にありますか?

答えて

1

SOLR-2155にコメントを読んでください。添付されたパッチは一度も適用されず、チケットはまだ解決されていませんが、添付されたzipは機能を備えたプラグインなので、SOLRに実際にパッチを当てる必要はありません。パッチは1つのドキュメント上で複数のポイントをインデックスできるようになっているはずですが、高速バウンディングボックス検索のためにgeohashと一致するプレフィックスを実装しているようです。

関連する問題