...

пятница, 6 февраля 2015 г.

Как починить машину в интернете: история создания поисковика автозапчастей

image

За последние несколько лет в интернете появилось множество самых разнообразных сервисов-агрегаторов и поисковиков, «заточенных» под любые нужды пользователей от поиска смартфонов до бронирования авиабилетов и отелей. Мы создали поисковик, который помогает автолюбителям выгодно покупать запчасти для авто. В сегодняшнем топике — история развития и рассказ об инфраструктуре проекта.


Что не так с магазинами автозапчастей




Автовладелец, который решит самостоятельно заняться поиском запчастей для своей машины, неизбежно сталкивается с проблемой поиска нужной детали. Существует огромное количество автозапчастей, в одном авто в среднем 10 тысяч деталей. Ассортимент популярных марок — десятки миллионов уникальных позиций, поэтому в обычном магазине найти нужную вещь очень сложно, наличие обычного магазина 2-5 тысяч позиций.

Поэтому популярны рынки автозапчастей, где одновременно представлено много продавцов и высока вероятность уйти с покупкой. Но и у рынков есть недостатки — туда нужно ехать (потеря времени) и цены там всегда выше, чем в интернете.


image


Немного истории




В начале 2000-х годов интернет-магазины, в которых можно было купить запчасти для авто, были очень редким явлением — по сути, существовал единственный сайт Exist.ru.

Прежде чем запустить собственный проект мы долгое время работали в компаниях, занимающихся продажей запчастей — с точки зрения программиста этот бизнес был отлажен из рук вон плохо, поэтому мы создали SaaS-сервис для запуска интернет-магазина автозапчастей, который помогал таким компаниям выходить в интернет и автоматизировать процессы магазина.


Этот сервис оказался востребованным и число клиентов быстро росло — в результате появилась возможность создания поисковика-агрегатора, который помогал бы пользователям находить запчасти сразу во множестве магазинов (как «Яндекс.Маркет») — так появился 4mycar.ru.


image


В последнее время из-за проблем с курсом валют интерес к сервису значительно повысился — мотивация сэкономить на ремонте авто увеличилась пропорционально падению курса рубля.


Однако, несмотря на перечисленные выше плюсы покупки запчастей в сети, этот процесс все же гораздо сложнее, чем приобретение нового iPhone.


На самом деле все очень сложно




Для того, чтобы самостоятельно купить деталь пользователю необходимо провести много подготовительной работы — изучить каталоги производителей, сопоставить VIN-код своего авто с подходящими к этой модели деталями и т.д.

К примеру, вот так выглядит описание диска сцепления к одной из моделей BMW в профильном каталоге:


image


Разобраться в подобной информации непросто — при этом упомянутые в примере машины BMW очень хорошо документированы, чего не сказать о продукции других автопроизводителей. Очень часто можно встретить ситуацию «коллизии», когда в каталоге одному и тому же VIN-коду соответствует две похожих детали — что это приводит к покупке ненужной запчасти. В результате впустую тратятся деньги и время на ремонт, в ходе которого машина простаивает.


В результате многим автовладельцам проще переплатить на авторынке, но точно получить нужную деталь.


UX спешит на помощь




Общение покупателя с продавцом запчастей в офлайн-магазине — это важнейший аспект, влияющий на конечную продажу. Как правило автовладельцы только примерно знают, что они хотят («мне нужен масляный фильтр и масло, какое получше») и продавец помогает им не совершить ошибку.

Процесс поиска деталей самостоятельно в интернете мы описали выше — справиться с этим может очень небольшой процент пользователей.


Чтобы приблизиться к удобству обычных магазинов с консультантами, мы разработали кнопку «Не знаете код запчасти?».


image


За этой кнопкой скрываются живые эксперты по всем моделям автомобилей. Они подбирают нужные артикулы запчастей в любое время суток, избавляя вас от необходимости изучать каталоги и устройство автомобиля. Мы разделили процесс подбора артикулов и поиска предложений по ним, поэтому получив ответ от эксперта — можно перейти к поиску предложений.


image


Highload




На данный момент сервис хранит ~750 млн записей о продаваемых товарах. Каждые сутки продавцы полностью обновляют треть информации (~250 млн записей). Количество операций UPDATE примерно в 10 раз больше, чем количество операций SELECT. Особенность проекта — у нас нет возможности кешировать данные, поскольку очень важна актуальность цен и отображение наличия товара на складах.

Мы достигли очень хороших результатов в заливке прайс-листов: система поддерживают все популярные форматы, возможна загрузка прайс-листов огромных размеров (типичный пример — csv-прайс на 120 мегабайт). Скорость заливки/обновления прайсов в сервисе на данный момент составляет 30000 позиций в секунду, что позволяет обновить вышеупомянутые ~250 миллионов за 10% суточного времени. Эта производительность достигнута за счёт нескольких решений:



  • Распределение данных по параллельным базам.

  • Использование почти что NoSQL (подробнее в следующих публикациях).

  • Отдельные сервисы для конвертации данных в эталонный формат

  • Применение алгоритма заливки разницы в данных (diff).




В одной из следующих публикаций мы подробнее расскажем о том, как это все устроено с технической точки зрения.

Но ведь есть же «Маркет»




Действительно, автозапчасти продаются и на «Яндекс.Маркете», что вызывает вопрос в целесообразности создания сервисов, вроде нашего. Однако в реальности магазинам автозапчастей очень трудно работать с «Маркетом», поскольку этот сервис предъявляет жесткие технические требования к формату и структуре выгружаемого файла с прайс-листом (поддерживается только XML).

Еще одна проблема — поиск автозапчастей осуществляется сложнее, чем поиск электроники (об этом мы рассказали выше). Пользователи просто вбивают название нужной детали, не знают никаких номеров из каталогов, и не смогут выбрать в выдаче действительно нужную им деталь. При этом экспертов, подключенных к «Маркету» и помогающих выбрать запчасти, просто не существует. Для «Яндекса» направление автозапчастей не является профильным, поэтому заниматься его развитием компания, очевидно, не будет.


На сегодня все, спасибо за внимание! В следующих топиках мы расскажем о «внутренностях» нашего поисковика и работе по оптимизации интерфейса сайта.


Recommended article: Chomsky: We Are All – Fill in the Blank.

This entry passed through the Full-Text RSS service - if this is your content and you're reading it on someone else's site, please read the FAQ at http://ift.tt/jcXqJW.


Комментариев нет:

Отправить комментарий