0

Nutch を使用して、いくつかのページをクロールする Solr インデックスを正常に作成しました。Luke を使用してインデックスをクエリすると、期待どおりの結果が得られます (デフォルト フィールド 'content')。ただし、solr/admin インターフェイスを使用しようとすると、 q= :を使用してすべてを取得します。

<response>
<lst name="responseHeader">
  <int name="status">0</int>
  <int name="QTime">0</int>
  <lst name="params">
    <str name="indent">on</str>
    <str name="start">0</str>
    <str name="q">*:*</str>
    <str name="version">2.2</str>
    <str name="rows">10</str>
  </lst>
</lst>
<result name="response" numFound="11" start="0">
  <doc>
    <float name="boost">1.0</float>
    <str name="content">
      'a lot of text...'
    </str>
    <str name="digest">f73dc90d5ab992f62ba3980de2312dfe</str>
    <str name="id">http://thenet.net/</str>
    <str name="segment">20120529084510</str>
    <str name="title">1 < 2 < 3</str>
    <date name="tstamp">2012-05-29T06:45:12.872Z</date>
    <str name="url">http://theurl.net</str>
  </doc>

ただし、特定の文字列を照会する場合はまったく何もありません:

<response>
  <lst name="responseHeader">
    <int name="status">0</int>
    <int name="QTime">0</int>
    <lst name="params">
      <str name="indent">on</str>
      <str name="start">0</str>
      <str name="q">java</str>
      <str name="version">2.2</str>
      <str name="rows">10</str>
    </lst>
  </lst>
  <result name="response" numFound="0" start="0"/>
</response>

Solr 管理インターフェイスでは、次のように表示されます。

mro:8983
cwd=/$PATH_TO_SOLR_AND_NUTH_DIRS/solr/example SolrHome=solr/./ 
HTTP caching is OFF

schema.xml では、'content' がデフォルトの検索フィールドです。

どんな助けでも大歓迎です!

4

1 に答える 1

0

schema.xml ファイルの content フィールドの fieldType を確認してください。に設定されている場合string、特定のテキスト値に対してクエリ結果が得られない理由が説明されます。より良い検索結果を得るには、 fieldType または類似のものを使用する必要text_generalがあります。その fieldType は、インデックス付けされた値をトークン化し、フィルター処理し、ステム処理するためです。詳細については、Solr Wikiのアナライザー、トークナイザー、およびトークン フィルターを参照してください。

于 2012-05-30T11:32:54.843 に答える