2

フィールドを「保存しない」とマークした場合、Solr はそのフィールドの元の内容をどこにでも保持しますか?それとも、インデックス自体のために選別した「単語の袋」のみを保持しますか?

文書セキュリティの観点からお尋ねします。誰かが Solr インデックスを実行しているマシンに侵入した場合、この「保存しない」フィールドで元のテキストを Solr に渡すことができるでしょうか?

4

2 に答える 2

3

いいえ、Solr インデックスは、 に設定されたフィールドの取得または表示可能な方法で元の値を保存しませんstored="false"。Solr wiki のCommon Field optionsには、格納されたオプションを設定する次の動作が記載されています。

検索中にフィールドの値を取得できるようにする場合は true

誰かが Solr インデックスを実行しているマシンに侵入し、上記に基づいて Solr クエリを実行した場合、Solr はそのフィールドを返さないため、フィールドの内容を見ることができません。しかし、彼らがディスク、実際のインデックス フォルダー、および Lucene によって書き込まれたセグメント ファイルにアクセスできる場合、Luke - Lucene Index Toolboxを使用してインデックス フォルダーを調べることで、Solr がそのフィールドの各ドキュメントに格納した用語を確認できます。

于 2012-04-19T01:00:43.133 に答える
3

フィールドが Storable.No の場合、Lucene が検索を実行するのに十分な情報のみが保存されます。

ただし、各フィールドを構築するときに WITH_POSITIONS_OFFSETS を指定すると、通常、取得するのに十分な情報があります。

lowercase(EXACTSTRINGINDEXED) - LUCENEDELIMITERS - STOPWORDS

たとえば、インデックスを作成した場合:

Jerry&Mary's Live Bait and Yellow Cab

"&" と "'" を区切り文字として扱い、1 文字のインデックスを作成せず、'and' をストップワードとして処理するアナライザーを使用すると、次のようなインデックスが表示されます。

jerry mary live bait [null word] yellow cab

(上記のように、これは Luke で確認できます。)

于 2012-04-19T15:18:07.710 に答える