0

私は SOLR 6.0.0 を使用しており、データ インポート ハンドラを使用して MySQL から SOLR へのインデックス作成を処理しています。

db-data-config.xml ファイルに以下のクエリがあります

<entity name="user" query="SELECT ID, A, B, C FROM `USER` U WHERE U.ID = '${dataimporter.request.id}' OR '' = '${dataimporter.request.id}'">
    <field column="A" name="A" ....
    .......
</entity>

基本的に、ID を渡すと、その ID のみがインデックス化されます。それ以外の場合は、テーブル全体がインデックス化されます。

号は、

私は頻繁にインサートを更新しています。

最初の挿入後、単一の id/doc/row のインデックスにリクエストを送信し、数ミリ秒後にレコードが更新されるため、同じ id にインデックスを付けるリクエストを再度送信します。SOLR は 2 番目のリクエストをスキップしているように見えますが、両方のリクエストが行われたことがわかりますが、更新されたデータは SOLR に存在しません。

これは、一意でないアイテムでも発生します (同じ ID ではありません)。同時に 2 つまたは 3 つのデータ インポートを要求すると、solr は 2 番目の要求をスキップまたは無視します。

httpメソッドでリクエストし、以下のクエリを送信し、

http://localhost:8983/solr/user/dataimport?command=full-import&verbose=false&clean=false&commit=true&optimize=false&core=user&id=1
4

1 に答える 1