Войти Регистрация
Data base

154. С кофеваркой покупают

Средняя

Neo4j · Neo4j 5.26.20

Walmart строил рекомендации товаров на Neo4j по поведению покупателей; их инженер называл граф подходящим инструментом для рекомендаций в реальном времени.

Граф: (:Customer {id})-[:BOUGHT {at}]->(:Product {sku, name, price_usd}). Одна связь — одна покупка, повторная покупка того же товара — ещё одна связь.

Для кофеварки sku = '100' верните три других товара, которые купило больше всего разных её покупателей: product, customers. Порядок — по customers по убыванию, затем по названию.

В работе: Блок «С этим товаром покупают» в карточке товара.

Как проверяем Движка Neo4j в браузере пока нет, поэтому здесь не запрос, а выбор решения. Выберите один вариант. После ответа — почему каждый вариант верный или нет. Ответ один на подход: после него показываем разбор.
рекомендациикупили вместеcount DISTINCTORDER BYLIMIT

Источник: кейс Neo4j: рекомендации товаров в реальном времени в Walmart, 2018. Условие пересказано своими словами.

Давали на собеседовании? Ответов пока мало — ваш поможет.

Какой запрос соберёт блок «С этим покупают»?

  • count(c), WHERE o <> p
  • count(DISTINCT c), без WHERE o <> p
  • count(DISTINCT c), WHERE o <> p, сортировка по счёту и названию
  • товары покупателей кофеварки, но счёт по всем их покупателям