3

(solr を使用して) データをクエリし、キャッスルイドの粒度を取得しようとしています。

Solr 4.10のローカルで実行中のインスタンスがあります。

懇願して、範囲ファセットのsolr wikiのような単純なクエリを作成しました: 範囲ファセット のSolrの例

次のクエリを試しました。

&facet=true
&facet.range=castleid
&f.castleid.facet.range.start=0
&f.castleid.facet.range.end=1000
&f.castleid.facet.range.gap=1,2,3,10

このクエリの URL:

select?q=table%3Acontent&wt=json&indent=true&facet=true&facet.range=castleid&f.castleid.facet.range.start=0&f.castleid.facet.range.end=10000&facet.range.gap=1%2C2%2C3%2C10

私が得ているエラーは次のとおりです。

「フィールドのギャップ 1,2,3,10 を解析できません: Castleid」

私は何か間違ったことをしていますか、それともこの方法で範囲を作成することは不可能ですか?

4

2 に答える 2

3

この例は、私が見る限り、現在のバージョンではコミットされていない実験的な機能を指しています。

代わりにInterval Facetingを使用して解決できる場合があります (ただし、間隔バケットを自分で作成する必要があります)。

于 2015-02-14T12:59:16.240 に答える
2

私の例に対する完全な答えは次のとおりです。

Castleid フィールドのスキーマで docValues="true" を設定して間隔を有効にしました。対応するクエリは次のようになります。

&facet=true
&facet.interval=castleid
&f.castleid.facet.interval.set=[0,1]
&f.castleid.facet.interval.set=[2,2]
&f.castleid.facet.interval.set=[3,3]
&f.castleid.facet.interval.set=[4,13]
&f.castleid.facet.interval.set=[14,23]
&f.castleid.facet.interval.set=[24,33] 
. 
. 
.
&f.castleid.facet.interval.set=[994,1003]
于 2015-11-09T14:14:56.617 に答える