Solr 4.0で、関係のあるドキュメントに「結合」機能が導入されていることに気付きました。これは素晴らしいことですが、http: //wiki.apache.org/solr/Joinの例は、すべてのドキュメントが単一のインデックスにあるシングルコア用であることに気付きました。
マルチコアに「join」を使用できるかどうか誰かが知っていますか?
このコメントは、以下を使用することで可能であると述べています。
{!join from=fromField to=toField fromIndex=fromCoreName}fromQuery
私はそれを自分で試しました、そしてここにもっと詳細な例があります:2つのコアを持っています
ブランド:{1、Apple}、{2、Samsung}、{3、HTC}
製品:{1、iPhone、1}、{2、iPad、1}、{3、Galaxy S3、2}、{4、Galaxy Note、2}、{5、One X、3}
http://example.com:8999/solr/brands/select?q=*:*&fq={!join from = brand_id to = id fromIndex = products} name:iPad
これは次のように変換されます。
SELECT b.* FROM brands b
INNER JOIN products p ON b.id=p.brand_id
WHERE p.name="iPad";
結果は次のようになります:{id: "1"、name: "Apple"}