Задача:
Перенести каталог на ElasticSearch и настроить движок для быстрого и гибкого поиска для группы сайтов Inventive Retail Group
Что мы делали:
Развитие интернет-торговли идет семимильными шагами, заставляя представителей отрасли постоянно совершенствовать свои услуги, технологии и коммуникации. Просто качественного продукта давно не достаточно, а удобство пользования интернет-магазином стремительно выходит на первый план. Когда количество товаров на вашем сайте перевалило за несколько тысяч, подвисающий каталог и несообразительный поиск по нему может лишить вас не только лояльности покупателей, но и значительной части прибыли.
О заказчике:
Сотрудничество Интаро с Inventive Retail Group началось с переноса сайтов группы компаний на мультисайтовую платформу 1С-Битрикс. Этот проект позволил повысить эффективность управления функционалом всех сайтов группы компаний и сократить финансовые и временные затраты на дальнейшее внедрение и сопровождение.
Для дальнейшей оптимизации сайтов re-store.ru, mir-kubikov.ru и street-beat.ru было принято решение о переносе каталога мультисайта на Elasticsearch.
Elasticsearch — масштабируемый полнотекстовый поисковый и аналитический движок с открытым исходным кодом.
Перенос каталога
Для удобного пользования каталогом сайт предоставляет клиенту большое количество
фильтров. Из-за сложной бизнес-логики мы не могли использовать стандартные решения, а те возможности, которые предоставляет Битрикс, на практике работали довольно медленно. В частности, из-за ограничений в работе со свойствами в запросе по нескольким инфоблокам для построения фильтра производилось большое количество запросов к базе данных. Это
существенно увеличивало время загрузки страниц и вызывало большие нарекания.
Функционал Elasticsearch для фильтрации, группировки и поиска по каталогу значительно шире, но использовать его как основное хранилище нельзя, так как он не гарантирует актуальность при обновлении данных. Поэтому нам пришлось комбинировать возможности двух систем. Три каталога в Битрикс превратились в три индекса ElasticSearch. Каждый индекс содержит свой минимальный набор данных, необходимых для работы каталога, вывода данных о товаре и построения фильтров.
Планово все данные каталога индексируются три раза в сутки. А при изменении остатков, цен или изменений в админке индексируются только та часть данных, которую затронули изменения. Так интеграция и частичный перенос каталога в
Elasticsearch увеличили скорость загрузки страниц в несколько раз.
Гибкий поиск
Также функционал ElasticSearch с огромным отрывом обходит стандартный поиск Битрикс. Он позволяет осуществлять полнотекстовый поиск по артикулам, названиям и описанию товаров, а также выводить автодополнения, подсказки и ранжировать результаты по релевантности. При должной настройке, его не собьют опечатки и неточности запроса. В любом случае
покупатель получит то, что хотел. При текущем уровне конкуренции, когда борьба между ритейлерами идет за каждого клиента, это крайне важно.
Морфологические фильтры
Настройка необходимых фильтров обеспечивает более гибкий и живой язык запросов, учитывающий правила и нюансы конкретного языка. Поиск распознает различные формы и числа слова. А также перед индексированием исключает слова, которые не несут большой смысловой нагрузки, например, "и", "а", "но" в русском или "and", "a", "to" в английском языке.
Словарь синонимов
Он представляет собой таблицу запросов со всевозможными вариантами их написания, включая синонимы, варианты написания с ошибками или некорректной раскладкой. В идеале, почти любую абракадабру, введенную клиентом, поисковик должен распознать и предложить подходящую категорию или серию товаров. Это значительно увеличивает наши шансы на то, что клиент совершит покупку.
Статистика популярных запросов
Встроенная в состав ElasticSearch платформа Kibana может собирать статистику, выполнять расширенный анализ данных и визуализировать результаты в различных диаграммах,
таблицах и картах. Мы можем в режиме реального времени или за любой прошлый период видеть статистику поиска - какие запросы вводят пользователи; находят ли то, что нужно и делают ли после использования поиска заказы.
Данные статистики дают широкие возможности для маркетинговых активностей заказчика. На основе статистики за последние две недели формируется список популярных фраз и, при вводе запроса в поисковую строку, словарь выдает подсказку - наиболее популярные варианты и позволяет клиенту сразу перейти на страницу результатов поиска, сократив время на поиск по каталогу.
При этом, если нужно убрать из подсказок нежелательные товары, также составляется список исключений.