Skip to main content

Матчинг пользователей

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

Цель матчинга — поддерживать единый реестр пользователей при поступлении данных из разных источников и каналов. Таким образом, аудитории не создают дубликатов пользователей, а обогащают существующие профили.

Какие идентификаторы используются

MoodRec сопоставляет записи по стабильным идентификаторам, которые передаются в событиях и при загрузке аудиторий. В качестве идентификаторов используются:

  • User ID
  • Телефон
  • Email

Если в запросе передано несколько идентификаторов, система рассматривает их все.

Подробнее о User ID

User ID — это внешний идентификатор пользователя. Он должен быть уникальным. При импорте аудитории необходимо выбрать поле/колонку, в котором будет задан этот ID.

Как происходит сопоставление

При поступлении данных MoodRec выполняет следующие действия:

  • Система проверяет, существует ли в базе пользователь с таким же User ID, email или телефоном. Приоритетным для поиска является User ID.
  • Если совпадение найдено хотя бы по одному идентификатору, данные относится к существующему пользователю. В этом случае система дополняет запись о пользователе новыми идентификаторами и данными, которых ранее не было.
  • Если совпадений нет, создаётся новый пользователь и к нему привязываются все идентификаторы, переданные в запросе.

Когда выполняется матчинг

Матчинг выполняется каждый раз, когда в систему поступают данные, потенциально относящиеся к пользователю, например:

  • При получении пользовательских событий: матчинг выполняется при обработке событий из сайта, приложения или других каналов (просмотр, клик, покупка и т.д.). Система анализирует переданные идентификаторы пользователя и сопоставляет событие с существующим профилем либо создаёт новый, если совпадений нет. Это обеспечивает накопление поведенческой истории в рамках одного пользователя, даже если события приходят из разных каналов.

  • При загрузке и обновлении аудиторий: при импорте аудиторий матчинг используется для сопоставления загружаемых записей с уже существующими пользователями. Если пользователь уже есть в системе, его профиль дополняется новыми данными. Если нет — создаётся новый профиль.

  • При переходе от анонимного пользователя к известному: если пользователь сначала взаимодействует с системой анонимно, а затем авторизуется или оставляет контактные данные, матчинг связывает ранее накопленные данные с новым идентификатором. В результате профиль пользователя не «обнуляется», а продолжает использовать всю предыдущую историю взаимодействий.

  • При обновлении идентификаторов пользователя: матчинг срабатывает, когда для уже известного пользователя поступают новые или изменённые идентификаторы (например, новый телефон или внешний идентификатор). Система проверяет, не относится ли этот идентификатор к другому профилю, и в зависимости от правил либо объединяет данные, либо предотвращает некорректное объединение.

Примеры матчинга

Кейс 1. Пользователь найден по User ID

Ситуация В систему поступают данные с User ID, который уже существует.

Поведение системы MoodRec однозначно идентифицирует пользователя по User ID и относит данные к существующему профилю. Если в запросе присутствуют email или phone, которых ранее не было, они добавляются в профиль пользователя.

Результат Профиль пользователя обновляется и обогащается новыми данными. Дубликаты не создаются.


Кейс 2. Пользователь не найден по User ID, но найден по email или телефону

Ситуация User ID в системе отсутствует, но email или phone совпадает с уже существующим пользователем.

Поведение системы MoodRec считает, что данные относятся к существующему пользователю, найденному по email или телефону. Новый User ID привязывается к этому профилю и далее используется как основной идентификатор пользователя.

Результат Существующий профиль сохраняется, к нему добавляется User ID. История пользователя остаётся непрерывной.


Кейс 3. Конфликт идентификаторов

Ситуация В запросе присутствуют несколько идентификаторов, которые по отдельности указывают на разных пользователей. Например, User ID относится к одному профилю, а email или phone — к другому.

Поведение системы MoodRec разрешает конфликт, опираясь на приоритет идентификаторов:

  1. User ID — основной и наиболее приоритетный идентификатор.
  2. Phone — второй по приоритету.
  3. Email — третий по приоритету.

Если идентификаторы в запросе указывают на разные профили, система выбирает профиль, связанный с идентификатором с более высоким приоритетом, и приводит остальные данные в соответствие с ним.

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