Elasticsearch возвращает различные значения свойств - PullRequest
0 голосов
/ 09 мая 2018

У меня есть коллекция Товаров с собственностью Брэнд и 2 уникальными значениями:

  • "Супер бренд А"
  • "Супер марка Б"

ES запрос

     var response = new ElasticClient().Search<DTO>(s => s
           .Index("index")
           .Type("type")
           .Aggregations(a => a
               .Terms("unique", t => t
                   .Field(f => f.Brand)
                   //.Field(f => f.Brand.Suffix("keyword"))
                   .Size(1000)
               )
           )
         );

        var brands = (((BucketAggregate)response.Aggregations.First().Value).Items).Cast<KeyedBucket<Object>>().Select(x => x.Key).ToList();

ES возвращает 4 недопустимых значения

  • "Супер"
  • "бренд"
  • "А"
  • "В"

Я попытался принудительно сопоставить полное свойство, добавив .Suffix ("ключевое слово") к полю, но затем он возвращает пустой список. Как я могу получить 2 разных значения?

...