Search results not what they should be


(Glenn Latomme (Kiwi)) #1

hi,

I'm trying to make a full on search that searches multiple indexs that have some different data (but stored in mostly same fields)

But I'm encountering a lot of problems when I try to search on multiple parts of words

so this is the query I'm currently using:

{
  "query": {
    "dis_max": {
      "queries": [
        {
          "multi_match": {
            "query": "wind turbine",
            "type": "best_fields",
            "fields": [
              "title^3",
              "url^2",
              "text"
            ],
            "tie_breaker": 0.3,
            "minimum_should_match": "30%"
          }
        },
        {
          "fuzzy_like_this": {
            "fields": [
              "title",
              "url",
              "text"
            ],
            "like_text": "wind turbine",
            "max_query_terms": 25
          }
        }
      ],
      "tie_breaker": 0.3
    }
  }
}

this shows that It searches for wind and turbine and the results from a webcrawl on gent.arcelormittal.com gives us:

{
   "took": 17,
   "timed_out": false,
   "_shards": {
      "total": 16,
      "successful": 16,
      "failed": 0
   },
   "hits": {
      "total": 62,
      "max_score": 0.28194994,
      "hits": [
         {
            "_index": "webindex",
            "_type": "web_page",
            "_id": "AU8CvZdzr9BBOz9yqbDC",
            "_score": 0.28194994,
            "_source": {
               "title": "Inzamelacties leveren 4.000 euro op - ArcelorMittal Gent",
               "url": "http://gent.arcelormittal.com/inzamelacties-leveren-4-000-euro-op/"
            },
            "highlight": {
               "text": [
                  " een wedstrijd, waarbij de bezoekers het gewicht konden raden van een pièce montée. Een gokje kostte slechts 1 euro. Deze bezoekers hadden het gewicht van 4.960 gram het best ingeschat en vallen in de prijzen: Nico Demaeght  wint  een iPad  mini  Retina. Thor Dellaert  wint  tickets voor Disney on Ice in"
               ]
            }
         },
         {
            "_index": "webindex",
            "_type": "web_page",
            "_id": "AU8CvPOtr9BBOz9yqbBX",
            "_score": 0.15752894,
            "_source": {
               "title": "Leveranciers - ArcelorMittal Gent",
               "url": "http://gent.arcelormittal.com/leveranciers/"
            },
            "highlight": {
               "text": [
                  " daarover? Die  vind  je gegarandeerd op ons leveranciersportaal. Op het portaal  vind  je ook meer informatie over ons veiligheidsbeleid, de regels die bij ons van kracht zijn en de laatste nieuwtjes die voor jou van belang zijn. Naar leveranciersportaal Heb je bijkomende vragen, aarzel dan niet om contact op te nemen met ons. Over ons Leveranciers Jobs Contact   © 2015 ArcelorMittal Gent"
               ]
            }
         }

      ]
   }
}

there are more hits but body limit was 5k so all the rest can be found here: https://gist.github.com/cskiwi/257e57cc63c575ded9e9

but when searching on windturbines this is in the results:

{
   "_index": "webindex",
   "_type": "web_page",
   "_id": "AU8CvVX-r9BBOz9yqbCq",
   "_score": 1.850398,
   "_source": {
      "title": "Stalen windturbines voor groene energie - ArcelorMittal Gent",
      "url": "http://gent.arcelormittal.com/innovatie/toepassingen/windturbines/"
   },
   "highlight": {
      "text": [
         " groene energie Om één  windturbine  op land te bouwen, is 225 tot 285 ton staal nodig. Er worden verschillende staalsoorten gebruikt, die onder meer door ArcelorMittal Gent worden gemaakt. Europa wil tegen 2020 20% van zijn energiebehoefte halen uit hernieuwbare energiebronnen.  Windturbines  spelen"
      ]
   }
}

and as you can see this has lot of the terms being used in the first query, so why isn't this one showing up in the results of the first query?

and how would you make a query where this does show up?


(system) #2