Поиск категории по имени продукта на основе существующей классификации
Предполагается следующий сценарий. Есть название товара, например, "батончик сникерс лесной орех 55г". Необходимо определить к какой группе товаров (состоит из названий многих 100+ названий товаров) оно "ближе".
Например "батончик сникерс лесной орех 55г" ближе к "лесной орех", чем к "стиральный порошок", но при этом еще ближе к "шоколадный батончик сникерс лесной орех", чем просто к "лесной орех".
Предполагается, что есть БД в которой содержится информация о группах товаров: название группы + название всех товаров группы. Реализация доступа к БД и прочая инфраструктура (сервисы, репозитории и т.п.) на усмотрение исполнителя.
В качестве БД может выступать текстовый файл с JSON.
Необходимо реализовать сервис, определяющий к какой группе товаров ближе название товара. Сервис содержит один публичный метод (и сколько угодно конструкторов), принимающий название товара и возвращающий название группы и близость к ней.
Предполагается, что реализуемый сервис будет использоваться в нескольких приложениях.
Unit test на усмотрение исполнителя, минусом точно не будут.
Описать в каких случаях разработанный сервис будет работать хорошо, а в каких качество определяемой близости может падать.