0

SOLR インデックス付きの空のフィールドを取得するにはどうすればよいですか? 私はsolr 7.2.0を使用しています

スキーマレス SOLR を使用してすべてを文字列としてインデックス化しようとしていますが、空のフィールドを持つファイルの場合、それらのフィールドはインデックス化されません。それらを表示させる方法はありますか?

col1,col2,col3
a,,1
d,e,
g,h,3

たとえば、列1は次のように表示されます

{
"col1":"a",
"col3":"1",
}

col2 も表示させようとしています。私のsolrconfig.xmlにはこれがあります

  <dynamicField name="*" type="text_general" indexed="true" stored="true" required="true" default="" />

私の設定から削除されたremove-blankプロセッサの痕跡があります。コレクションを複数回リロードして削除/再作成しました。これに対する解決策はありますか?

4

2 に答える 2

0

次のように csv ファイルを前処理します。

s/,,/, ,/g

つまり、両方のコンマの間にスペースを追加します (ただし、最後の値を別の方法で特別に処理する必要がありますが、そのための正規表現があります)。

そして、もう一度やり直してください。現在、solrは値を存在しないものとして読み取っているため、スペースが通過する可能性が高くなり、検索結果は変更されません(クレイジーな分析チェーンがない場合)

于 2018-08-04T08:36:34.450 に答える