2013-05-20 4 views
0

У меня есть индекс, где каждый документ представляет класс, со списком учеников и списком учителей.Пользовательский рейтинг в Elastic Search

Вот отображение:

{ 
"properties" : { 
    "students" : { 
     "include_in_root" : 1, 
     "type" : "nested", 
     "properties" : { 
      "name" : { 
       "first" : "text", 
       "last" : "text", 
       }, 
      }, 
      "email" : { "type" : "string", "index" : "not_analyzed" }, 
     }, 

    "teachers" : { 
     "include_in_root" : 0, 
     "include_in_all" : 0, 
     "type" : "nested", 
     "properties" : { 
      "name" : { 
       "title" : { "type" : "string", "index" : "not_analyzed" }, 
       "first" : "text", 
       "last" : "text", 
       }, 
      }, 
     }, 
    }, 
} 

Я хотел бы, чтобы влиять на Elastic функции поиска оценки, таким образом, что это даст более высокий балл на документы с согласованным techers.

Например, если у меня есть поиск «Смит», я хотел бы получить документы с преподавателем Смит с более высоким рейтингом, чем документы со студентами Смит.

Кто-нибудь знает, как это должно быть сделано в Elastic Search? Другими словами, как я могу вернуть результаты, упорядоченные по некоторой логике?

Заранее благодарен!

ответ