帮助理解Solr调试

时间:2011-08-14 20:13:34

标签: lucene solr

我正在调试我的提升算法,我无法对调试文本进行调整。问题是以下文字:

  

358.5638 = product(const(1.0E10),div(int(ViewCount)= 47092,ms(const(1313350611991),str(UploadDate)= 2008-09-19T16:30:16Z)))

现在,如果我的数学运算正确,我们得到1e10 * 47092 / ms(NOW,''that_date'')= 1e10 * 47092 / 9.1510096E10 = 5146.09885。

更糟糕的是,似乎没有一种模式。在此示例的结果的调试信息中,solr计算314.40195,而我计算33667.1973。所以从我的角度来看,solr将这两个结果反过来了!

我是否感到困惑?

感兴趣的读者:这是上述两个示例的调试信息。但是我只对每个条目底部的小FunctionQuery部分感兴趣。

<str name="10525"> 
45.199703 = (MATCH) sum of:
  1.2967482 = (MATCH) max plus 0.1 times others of:
    0.1823791 = (MATCH) weight(primary_text_phonetic:FRT^0.25 in 6498), product of:
      0.14184701 = queryWeight(primary_text_phonetic:FRT^0.25), product of:
        0.25 = boost
        4.7508817 = idf(docFreq=4940, maxDocs=210282)
        0.11942795 = queryNorm
      1.285745 = (MATCH) fieldWeight(primary_text_phonetic:FRT in 6498), product of:
        1.7320508 = tf(termFreq(primary_text_phonetic:FRT)=3)
        4.7508817 = idf(docFreq=4940, maxDocs=210282)
        0.15625 = fieldNorm(field=primary_text_phonetic, doc=6498)
    1.2785102 = (MATCH) weight(primary_text:friday in 6498), product of:
      0.6856842 = queryWeight(primary_text:friday), product of:
        5.741405 = idf(docFreq=1834, maxDocs=210282)
        0.11942795 = queryNorm
      1.8645759 = (MATCH) fieldWeight(primary_text:friday in 6498), product of:
        1.7320508 = tf(termFreq(primary_text:friday)=3)
        5.741405 = idf(docFreq=1834, maxDocs=210282)
        0.1875 = fieldNorm(field=primary_text, doc=6498)
  1.0804138 = (MATCH) max plus 0.1 times others of:
    0.18776983 = (MATCH) weight(phrase_phonetic:FRT^0.25 in 6498), product of:
      0.14540447 = queryWeight(phrase_phonetic:FRT^0.25), product of:
        0.25 = boost
        4.870032 = idf(docFreq=4385, maxDocs=210282)
        0.11942795 = queryNorm
      1.2913622 = (MATCH) fieldWeight(phrase_phonetic:FRT in 6498), product of:
        1.4142135 = tf(termFreq(phrase_phonetic:FRT)=2)
        4.870032 = idf(docFreq=4385, maxDocs=210282)
        0.1875 = fieldNorm(field=phrase_phonetic, doc=6498)
    1.0616368 = (MATCH) weight(phrase:friday in 6498), product of:
      0.6914851 = queryWeight(phrase:friday), product of:
        5.789977 = idf(docFreq=1747, maxDocs=210282)
        0.11942795 = queryNorm
      1.5352995 = (MATCH) fieldWeight(phrase:friday in 6498), product of:
        1.4142135 = tf(termFreq(phrase:friday)=2)
        5.789977 = idf(docFreq=1747, maxDocs=210282)
        0.1875 = fieldNorm(field=phrase, doc=6498)
  42.82254 = (MATCH) FunctionQuery(product(const(1.0E10),div(int(ViewCount),ms(const(1313350611991),str(UploadDate))))), product of:
    358.5638 = product(const(1.0E10),div(int(ViewCount)=47092,ms(const(1313350611991),str(UploadDate)=2008-09-19T16:30:16Z)))
    1.0 = boost
    0.11942795 = queryNorm
</str><str name="190925"> 
41.04527 = (MATCH) sum of:
  1.6962012 = (MATCH) max plus 0.1 times others of:
    0.28546843 = (MATCH) weight(primary_text_phonetic:FRT^0.25 in 4562), product of:
      0.14184701 = queryWeight(primary_text_phonetic:FRT^0.25), product of:
        0.25 = boost
        4.7508817 = idf(docFreq=4940, maxDocs=210282)
        0.11942795 = queryNorm
      2.0125093 = (MATCH) fieldWeight(primary_text_phonetic:FRT in 4562), product of:
        3.8729835 = tf(termFreq(primary_text_phonetic:FRT)=15)
        4.7508817 = idf(docFreq=4940, maxDocs=210282)
        0.109375 = fieldNorm(field=primary_text_phonetic, doc=4562)
    1.6676544 = (MATCH) weight(primary_text:friday in 4562), product of:
      0.6856842 = queryWeight(primary_text:friday), product of:
        5.741405 = idf(docFreq=1834, maxDocs=210282)
        0.11942795 = queryNorm
      2.4321027 = (MATCH) fieldWeight(primary_text:friday in 4562), product of:
        3.8729835 = tf(termFreq(primary_text:friday)=15)
        5.741405 = idf(docFreq=1834, maxDocs=210282)
        0.109375 = fieldNorm(field=primary_text, doc=4562)
  1.8006895 = (MATCH) max plus 0.1 times others of:
    0.31294972 = (MATCH) weight(phrase_phonetic:FRT^0.25 in 4562), product of:
      0.14540447 = queryWeight(phrase_phonetic:FRT^0.25), product of:
        0.25 = boost
        4.870032 = idf(docFreq=4385, maxDocs=210282)
        0.11942795 = queryNorm
      2.1522703 = (MATCH) fieldWeight(phrase_phonetic:FRT in 4562), product of:
        1.4142135 = tf(termFreq(phrase_phonetic:FRT)=2)
        4.870032 = idf(docFreq=4385, maxDocs=210282)
        0.3125 = fieldNorm(field=phrase_phonetic, doc=4562)
    1.7693945 = (MATCH) weight(phrase:friday in 4562), product of:
      0.6914851 = queryWeight(phrase:friday), product of:
        5.789977 = idf(docFreq=1747, maxDocs=210282)
        0.11942795 = queryNorm
      2.5588324 = (MATCH) fieldWeight(phrase:friday in 4562), product of:
        1.4142135 = tf(termFreq(phrase:friday)=2)
        5.789977 = idf(docFreq=1747, maxDocs=210282)
        0.3125 = fieldNorm(field=phrase, doc=4562)
  37.548378 = (MATCH) FunctionQuery(product(const(1.0E10),div(int(ViewCount),ms(const(1313350611991),str(UploadDate))))), product of:
    314.40195 = product(const(1.0E10),div(int(ViewCount)=41292,ms(const(1313350611991),str(UploadDate)=2011-03-25T21:03:52Z)))
    1.0 = boost
    0.11942795 = queryNorm
</str>

1 个答案:

答案 0 :(得分:0)

你能解释为什么在

中有str功能

MS(常量(1313350611991),的 STR (UploadDate)= 2008-09-19T16:30:16Z)。))

我假设uploadDate的数据类型是TrieDateField。

如何使用

之类的东西

MS(NOW,uploadDate)