Elasticsearch: Scoring with Ngrams
<p>I have a straight forward question where I have incorporated ngram's for partial matchings. The implementation works well but the score results aren't working as I hoped. I would like my score results to look something like this:</p>

<ul>
<li>Ke: .1</li>
<li>Kev: .2</li>
<li>Kevi: .3</li>
<li>Kevin: .4</li>
</ul>

<p>Instead I am getting the following results where the scoring is the same if there is a match for the field:</p>

<ul>
<li>Ke: .4</li>
<li>Kev: .4</li>
<li>Kevi: .4</li>
<li>Kevin: .4</li>
</ul>

<p>Settings:    </p>

<pre><code> settings: {
    analysis: {
      filter: {
        ngram_filter: {
          type: 'edge_ngram',
          min_gram: 2,
          max_gram: 15
        }
      },
      analyzer: {
        ngram_analyzer: {
          type: 'custom',
          tokenizer: 'standard',
          filter: [
            'lowercase',
            'ngram_filter'
          ]
        }
      }
    }
  }
</code></pre>

<p>Mappings:</p>

<pre><code>mappings: [{
          name: 'voter',
          _all: {
                'type': 'string',
                'analyzer': 'ngram_analyzer',
                'search_analyzer': 'standard'
             },
             properties: {
                last: {
                   type: 'string',
                   required : true,
                   include_in_all: true,
                   analyzer: 'ngram_analyzer',
                   search_analyzer: 'standard'
                },
                first: {
                   type: 'string',
                   required : true,
                   include_in_all: true,
                   analyzer: 'ngram_analyzer',
                   search_analyzer: 'standard'
                },

             }

       }]
</code></pre>

<p>Query:</p>

<pre><code>GET /user/_search
{
    "query": {
        "match": {
           "_all": {
               "query": "Ke",
               "operator": "and"

           }
        }
    }
}
</code></pre>