Elasticsearch przy użyciu NEST: Jak skonfigurować analizatory, aby znaleźć częściowe słowa?

Próbuję wyszukiwać według częściowego słowa, ignorując obudowę i ignorując akcentowanie niektórych liter. Czy to możliwe? Myślę, że ngram z domyślnym tokenizerem powinien załatwić sprawę, ale nie rozumiem, jak to zrobić za pomocą NEST.

Przykład: „muzyka” powinna pasować do rekordów zawierających „muzykę”

Wersja, w której używam Elasticsearch, to 1,9.

Robię tak, ale to nie działa ...

var ix = new IndexSettings();
        ix.Add("analysis",
            @"{
               'index_analyzer' : {
                          'my_index_analyzer' : {
                                        'type' : 'custom',
                                        'tokenizer' : 'standard',
                                        'filter' : ['lowercase', 'mynGram']
                          }
               },
               'search_analyzer' : {
                          'my_search_analyzer' : {
                                        'type' : 'custom',
                                        'tokenizer' : 'standard',
                                        'filter' : ['standard', 'lowercase', 'mynGram']
                          }
               },
               'filter' : {
                        'mynGram' : {
                                   'type' : 'nGram',
                                   'min_gram' : 2,
                                   'max_gram' : 50
                        }
               }
    }");
        client.CreateIndex("sample", ix);

Dzięki,

David

questionAnswers(1)

yourAnswerToTheQuestion