Search relevance in human names

I am using elastic search for searching the human names and have about 1 million names in my indices.
I am stuck in scoring or relevance of the terms hoping you could guide me

for example the 5 names aree :-

  1. Mary Jane
  2. Raj kumar
  3. Naresh Jane
  4. Rajhirani
  5. Umar raj
  6. K B Raj

i have used ngrams analyzers and shingles analyzers to rank my documents..but when i search for raj i get rajhirani and Umar raj above rather than raj which is coming first.

I want my results in order when we type raj

Raj Kumar (Raj is coming first)
Umar raj (raj is there)
K B Raj (raj is there)
Rajhirani (last because due to ngram it constains raj)

Waiting for ur reply.
Thanks in advance