Solr 3.5 のexampleディレクトリの以下で

% java -jar start.jar

した際の index fileの形式を見る. その7.

indexはまっさらにしている. 前回の続きではない.

1件update&commit(id, cat field)


curl http://localhost:8983/solr/update\?commit\=true -H "Content-Type: text/xml" --data-binary '<add><doc><field name="id">abc</field><field name="cat">abc def</field></doc></add>'

schama.xml (抜粋)


    <fieldType name="string" class="solr.StrField" sortMissingLast="true" omitNorms="true"/>
    <fieldType name="text_general" class="solr.TextField" positionIncrementGap="100">
      <analyzer type="index">
        <tokenizer class="solr.StandardTokenizerFactory"/>
        <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
      </analyzer>
    ...
    </fieldType>
   <field name="id" type="string" indexed="true" stored="true" required="true" /> 
   <field name="cat" type="string" indexed="true" stored="true" multiValued="true"/>
   <field name="text" type="text_general" indexed="true" stored="false" multiValued="true"/>
   <copyField source="cat" dest="text"/>

ファイル

  • segments.gen
  • segments_2
  • _0.fdt
  • _0.fdx
  • _0.fnm
  • _0.frq
  • _0.nrm
  • _0.prx
  • _0.tii
  • _0.tis
  • segments* については略.
  • *.fdx *.fnm *.tii はその6と同じ

_0.fdt


0000000 00 00 00 03 02 00 00 03 61 62 63 01 00 07 61 62
0000020 63 20 64 65 66
0000025
  • Format
    • 00 00 00 03
      • org.apache.lucene.index.FieldsWriter.FORMAT_LUCENE_3_2_NUMERIC_FIELDS
  • FieldCount
    • 02
  • FieldNum
    • 00
      • id
  • Bits
    • 00
  • Value
    • 03 61 62 63
      • "abc"
  • FieldNum
    • 01
      • cat
  • Bits
    • 00
  • Value
    • 07 61 62 63 20 64 65 66
      • "abc def"

_0.frq


0000000 00 00 01 01
0000004

  • idフィールド
  • TermFreq(DocDelta)
    • 00
  • cat フィールド
  • TermFreq(DocDelta)
    • 00
  • text フィールド
  • TermFreq(DocDelta)
    • 01
      • When DocDelta is odd, the frequency is one.
  • TermFreq(DocDelta)
    • 01

_0.nrm


0000000 4e 52 4d ff 79
0000005
  • NormHeader
    • 4e 52 4d ff
      • 'N','R','M',Version
  • Version
    • ff
      • currently -1.

_0.tis


0000000 ff ff ff fc 00 00 00 00 00 00 00 04 00 00 00 80
0000020 00 00 00 10 00 00 00 0a 00 07 61 62 63 20 64 65
0000040 66 01 01 00 00 03 00 00 01 01 00 03 00 02 01 01
0000060 00 00 03 64 65 66 02 01 01 01
0000072
  • TIVersion
    • ff ff ff fc
      • org.apache.lucene.index.TermInfosWriter.FORMAT_VERSION_UTF8_LENGTH_IN_BYTES
  • IndexTermCount
    • 00 00 00 00 00 00 00 02
  • IndexInterval
    • 00 00 00 80
  • SkipInterval
    • 00 00 00 10
  • MaxSkipLevels
    • 00 00 00 0a
  • TermInfo(Term<PrefixLength, Suffix, FieldNum>, DocFreq, FreqDelta, ProxDelta, [SkipDelta])
    • 00 07 61 62 63 20 64 65 66 01 01 00 00
      • Suffix : 07 61 62 63 20 64 65 66 ("abc def"), FieldNum: 1(cat), DocFreq: 1, SkipDeltaなし
  • TermInfo(Term<PrefixLength, Suffix, FieldNum>, DocFreq, FreqDelta, ProxDelta, [SkipDelta])
    • 03 00 00 01 01 00
      • Suffix : 03 61 62 63 (abc), FieldNum: 0(id), DocFreq: 1, FreqDelta: 1, SkipDeltaなし
  • TermInfo(Term<PrefixLength, Suffix, FieldNum>, DocFreq, FreqDelta, ProxDelta, [SkipDelta])
    • 03 00 02 01 01 00
      • Prefixlength: 3, Suffix: 0, FieldNum: 2(text), DocFreq: 1, FreqDelta: 1, ProxDelta: 0, SkipDeltaなし
  • TermInfo(Term<PrefixLength, Suffix, FieldNum>, DocFreq, FreqDelta, ProxDelta, [SkipDelta])
    • 00 03 64 65 66 02 01 01 01
      • Suffix: 03 64 65 66 (def) FieldNum: 2(text), DocFreq: 1, FreqDelta: 1, ProxDelta: 1, SkipDeltaなし

メンバーのみ編集できます