Техническое задание: Реализация поиска на Elasticsearch

Общая задача

Необходимо разработать серверный модуль (микросервис или часть существующего API) для организации мощного и точного поиска товаров в интернет-магазине строительных материалов. Решение должно быть построено на стеке Node.js и Elasticsearch версии 9.

Блок 1: Конфигурация индекса Elasticsearch

Требуется создать индекс products со следующей кастомной настройкой:

Фильтры символов (Char Filters)

  • dimension_fixer: Нормализация обозначений размеров. Замена кириллических символов 'х' и 'Х' на латинскую 'x' (например, преобразование '250х120' в '250x120').

Анализаторы (Analyzers)

  • klavka_text: Для обработки названий и описаний товаров.
    Цепочка обработки:
    1. Char Filter: dimension_fixer
    2. Tokenizer: standard
    3. Filters: lowercase, synonym_graph (с подключением словаря синонимов, например: тротуарка=плитка), russian_stop, russian_stemmer.
  • klavka_tech: Для технических полей (марки, коды спецификаций).
    Цепочка обработки:
    1. Tokenizer: whitespace
    2. Filter: lowercase
    Важно: Стемминг (отсечение окончаний) применяться не должен, чтобы сохранять точные значения, такие как 'M150'.

Сопоставления полей (Mappings)

  • specs_code (text): Технические коды, марки. Используется анализатор klavka_tech.
  • dimensions (keyword): Нормализованные размеры.
  • name, description (text): Используется анализатор klavka_text.
  • brand (keyword + text): Производитель.
  • in_stock (boolean): Наличие на складе.

Блок 2: Разработка API

Требуется реализовать API-эндпоинты для поиска, которые будут взаимодействовать с настроенным индексом. Логика должна включать предварительную обработку (препроцессинг) поисковых запросов пользователя для повышения релевантности результатов.

Разработка технического проекта по экологическому мониторингу ликвидируемых шахт

Требуется инженер для разработки комплексного технического проекта по экологическому мониторингу ликвидируемых угольных шахт и разрезов на Дальнем Востоке. Работа включает анализ, проектирование систем наблюдения и составление документации на 2026-2027 годы.

Покупка Telegram-групп с историей

Ищу для приобретения Telegram-группы, созданные в период с 2016 по 2024 год. Обязательные условия: наличие облачного пароля на аккаунте и отображение года создания для новых участников. Передача осуществляется только через смену владельца.