Пользовательский фонетический анализ в Elasticsearch

В нашем сервисе мы пытаемся перенести настройку фонетического алгоритма nysiis в Elasticsearch.

Наш алгоритм выполняет это преобразование имени:

учитывая список "Фамилий" и "Имен", таких как "[Смит]" и "[Джон]", берет фонетический кодировщик "nysiis" по первой фамилии и объединяет его в нижний регистр, первый инициал первого имени,

Следовательно:

nysiis(Surnames[0]) + lower(Firstnames[0][0])

Таким образом, результат с "Джоном Смитом" будет "SNATHj"

Я знаю, что ES поддерживает фильтр токенов nyyis https://www.elastic.co/guide/en/elasticsearch/plugins/current/analysis-phonetic-token-filter.html

но мне интересно, каков наилучший способ реализовать пользовательский анализатор, который автоматически выполняет вышеуказанное преобразование.


Примечание. Думаю, если потребуется, мы уже можем предоставить ES с простой структурой:

{"surname": "Smith", "initial_first_name": "j"}

0 ответов

Другие вопросы по тегам