2

結合は、SQL の内部クエリと同等であるため、疑似結合と呼ばれます。BlockJoinは SQL 結合に似ていると説明されていますが、洗練されたインデックス作成スキーマが必要であり、作成する可能性のあるすべての結合を予測します。インデックス時とクエリ時にこれらの機能を実装する方法に関して、これらの機能の違いを誰かが説明できますか? そして、パフォーマンスへの影響は何ですか?

4

2 に答える 2

0

blockjoinquery は Solr 関数ではないと思います。Luceneの機能だと思います。

solr 結合は、from クエリのドキュメントをスコアリングせず、結合された結果を返しません。そのため、フィルター クエリとして使用するのが最適です。これにより、メインのクエリがスコアリングされます。

一方、ブロック結合はスコアリングを使用し、両方の結果を返します (100% 確実ではありません)。

クエリタイム結合も使用できます。これには、サーバル スコアリング オプションがあります。これも lucene の機能ですが、特別なインデックス ブロックは必要ありません。これをsolrクエリパーサープラグインと組み合わせて使用​​ しました。パフォーマンスは blockjoin より少し低くなりますが、動作します。

私は solr join と querytimejoin しか使用していないので、blockjoin についてはあまり言えません。

于 2013-04-08T16:34:22.190 に答える