10% → 96% адресов попадают в базу чистыми и без дублей. Вот как «101 Интернет» этого добились

Герой статьи. «101 Интернет» — маркетплейс услуг связи. Ведут базу данных с адресами и предложениями интернет-провайдеров. Ее использует сайт.

Задача. Провайдеры присылают «101 Интернет» адреса, по которым оказывают услуги. Нужно найти эти адреса в ФИАС — справочнике адресов налоговой. Затем сопоставить с адресами в своей базе по ФИАС-айди — уникальным идентификаторам домов. И загрузить в базу адреса, которых там еще нет. 

Проблема. Адреса приходят в разных форматах и с ошибками, из-за этого в ФИАС находили только 10% домов. Оставшуюся часть не сопоставляли с существующими записями, а загружали как есть. Так в базу попадали «кривые» адреса и дубли. В результате люди не находили свои дома на сайте или не видели тарифов всех провайдеров.

Решение. Отправляют адреса в сервис «Стандартизация» «Дадаты», прежде чем загружать в базу.

Результат. Находят в ФИАС и на картах 96% адресов, которые присылают провайдеры. Еще 4% разбирают вручную, среди них — несуществующие дома, адреса с лишними частями или с альтернативными вариантами. Теперь в базе не плодят дубли и «кривые» адреса, поэтому люди без проблем выбирают тарифы провайдеров на сайте.

Сервис «Стандартизация» «Дадаты»

Герой этого кейса использует «Стандартизацию». Этот инструмент автоматически исправляет ошибки и приводит контакты к единому формату. С ним не нужно вручную проверять адреса, ФИО, телефоны и емейлы. Можно сразу использовать их в доставке заказов, рассылках, обзвонах и аналитике.

«101 Интернет» получают адреса от интернет-провайдеров и сводят в единую базу

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

Сайт «101 Интернет»

У сайта «101 Интернет» под капотом лежит база данных. В ее таблицах хранят семь миллионов адресов, предложения 70 провайдеров и связи между этими адресами и предложениями. Для любого дома известно, какие услуги, кто и по какой цене оказывает. Это показывают посетителям сайта.

Базу актуализируют. Провайдеры присылают «101 Интернет» свои адреса с услугами, а ребята загружают списки себе. Это регулярная задача.

Актуализация глобально состоит из таких этапов:

  1. Каждый адрес от провайдеров ищут в эталонном справочнике. Используют ФИАС (ГАР) — адресный реестр налоговой. Это самый полный справочник российских адресов среди публичных.
  2. Берут ФИАС-айди найденного дома — уникальный 16-значный идентификатор — и смотрят, хранится ли дом с таким айди в базе «101 Интернет».
  3. Если дом уже лежит в базе, обновляют его связи с провайдерами и услугами. А если нет, добавляют в базу новый адрес.
Схема: как загружают адреса провайдеров в базу «101 Интернет»
Процесс загрузки адресов. Трудности возникали, когда адрес не находили в ФИАС и, соответственно, не могли сопоставить с базой. Об этом и пойдет речь в статье

Интернет-провайдеры присылают адреса в разных форматах

Провайдеры присылают адреса в разных форматах: 

  • строками, по частям или в виде точек на карте; 
  • с компонентами в разной последовательности;
  • без тех или иных компонентов; 
  • сокращая одни и те же вещи по-разному; 
  • с мусором в виде приписок; 
  • с ошибками и опечатками. 

Вот, например, варианты одного и того же адреса, далеко не все возможные:

Разные варианты одного и того же адреса в базах, которые присылают провайдеры
А в Санкт-Петербурге еще и литеры в адресах. Представьте, как по-разному их пишут

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

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

В «101 Интернет» вручную приводили адреса к единому формату, но в базу все равно попадали дубли

Бесполезно искать в ФИАС адреса провайдеров как есть. Сначала их нужно стандартизировать — разделить на компоненты, исправить ошибки, привести сокращения к единому написанию. В общем, сделать так, чтобы адреса были, как в ФИАС: тогда найдутся.

Раньше адреса в «101 Интернет» стандартизировали вручную. Модераторы открывали списки адресов в Excel и применяли формулы с автозаменами, чтобы из условного «Ленинский пр., д10 к1, Москва» сделать «г Москва, пр-кт Ленинский, д. 10 к. 1».

После ручной стандартизации в ФИАС находили около 10% адресов: исходные варианты такие разные, что их не охватить автозаменами. А разбирать каждый адрес вручную не вариант, потому что в файлах десятки тысяч строк.

Не найденные в ФИАС адреса загружали в базу, не сопоставляя с существующими записями. Разве что размечали, где в адресе район, город, улица и дом. 

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

Допустим, человек уже использует интернет «Ростелекома». На сайте «101 Интернет» он вбивает «Ленинский пр-т 10», видит только предложения «Ростелекома» и уходит, ведь альтернатив нет. А вообще-то по адресу работает еще и «Билайн». Но в базе его предложения привязаны к «пр. Лениский д. 10», поэтому человек их не увидел.

Помимо дублей в базу попадали «кривые» адреса. Люди не находили их на сайте, потому что в базе искомые адреса записаны как-то иначе.

Проблема с поиском адресов в ФИАС приводит к проблемам в базе «101 Интернет»
В ФИАС находили мизерную часть адресов от провайдеров

Ручную стандартизацию заменили «Стандартизацией» «Дадаты»

Нужно было изменить этап стандартизации адресов так, чтобы для большинства находить ФИАС-айди. Для этого ручной процесс заменили сервисом «Стандартизация». Он автоматически приводит адреса к единому формату и исправляет в них ошибки:

Ответ «Стандартизации»

Теперь в «101 Интернет» так актуализируют базу данных:

  • сервис-загрузчик получает excel-файл с адресами провайдера и разбирает этот файл на строки;
  • каждую адресную строку отправляет «Стандартизации» — по API;
  • «Стандартизация» присылает ответ — адрес в едином формате, разбитый по полям и сразу с ФИАС-айди. Поэтому не нужно отдельным этапом искать адреса в ФИАС;
  • адрес загружают в базу и сопоставляют с существующими адресами по ФИАС-айди.

Бывает, «Стандартизация» не присылает ФИАС-айди дома. В этом случае смотрят на причину. Сервис сообщает ее с помощью кодов качества — специальных полей, которые приходят для каждого адреса.

Возможны два варианта:

  1. «Стандартизация» не нашла дом в ФИАС, но нашла на карте. Так, например, случается с новостройками — в справочник налоговой их не успели добавить, зато на картах дом уже появился. Подобные адреса сопоставляют с базой по набору полей: город с городом, район с районом, улицу с улицей, дом с домом.
  2. «Стандартизация» не нашла дом ни в ФИАС, ни на карте. Так бывает, если дом не существует или у адреса есть альтернативные варианты. Скажем, «Москва Ленина 1» может оказаться и улицей Ленина, и переулком, и площадью. Такие адреса вручную разбирает модератор.
Загрузка адресов в базу «101 Интернет» до и после «Стандартизации»
Благодаря «Стандартизации» в базу «101 Интернет» попадает больше хороших адресов

В процессе есть еще отдельный этап, который мы не упомянули — адреса готовят к обработке в «Стандартизации». Это иногда нужно, чтобы сервис разбирал записи определенным образом, как ждут в «101 Интернет». Вот пример:

Если отправить в «Стандартизацию» строку «г санкт-петербург, ш южное, д 55 корп 3», то сервис вернет дом с корпусом — «г Санкт-Петербург, ш Южное, д 55, к 3». Но если в том же адресе вместо «корп» написать «к», сервис вернет дом с квартирой — «г Санкт-Петербург, ш Южное, д 55, кв 3».

Причина — в алгоритмах «Стандартизации». Они сначала принимают «к.» за корпус → проверяют, существует ли дом с корпусом в ФИАС → если дома нет, считают «к.» квартирой. Это логично.

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

Ребята общаются с нашей поддержкой: приносят кейсы, в которых поведение «Стандартизации» не подходит или кажется странным. Мы объясняем логику и советуем, как ее обойти, если нужно. В результате растет доля адресов, которые «Стандартизация» разобрала как надо.

Чат поддержки  со «101 Интернет»
Эльза Хайдарова — руководитель нашей техподдержки — рассказывает о логике с «к.» и «корп.»
Сервис «Стандартизация» «Дадаты»

Сервис «Стандартизация»

Инструмент автоматически исправляет ошибки и приводит контакты к единому формату. С ним не нужно вручную проверять адреса, ФИО, телефоны и емейлы. Можно сразу использовать их в доставке заказов, рассылках, обзвонах и аналитике.

Результат

«Стандартизация» справляется с 96% адресов, которые приходят от провайдеров. Еще 4% — несуществующие дома, адреса с лишними частями или с альтернативными вариантами. Такие уходят на ручной разбор модератору. В базе больше не плодят дубли и «кривые» адреса, так что пользователи без проблем выбирают тарифы провайдеров на сайте.

Следующий шаг — прогнать через «Стандартизацию» всю базу адресов «101 Интернет», чтобы исправить:

  • «кривые» адреса, которые не найти на сайте;
  • дубли;
  • адреса с неправильными ФИАС-айди, которые по ошибке указали модераторы. Это провоцирует дубли — несколько одинаковых адресов с разными ФИАС-айди.

Похожий кейс: ics-it определяют ФИАС-айди, чтобы сопоставлять торговые точки с эталонной клиентской базой

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

Решение. Сопоставлять торговые точки по ФИАС-кодам. Определять коды, отправляя адреса точек сервису «Стандартизация».

Результат. «Стандартизация» автоматически определяет коды ГАР для 70-80% исходных адресов. Оставшиеся 20% адресов операторы обрабатывают вручную.

Не пропускайте важные материалы

Подпишитесь в соцсетях

Публикуем ссылку на статью, как только она выходит. А еще даём знать о новых фичах и срочных новостях. Например, напишем, если налоговая потеряет данные по организациям в свежей выгрузке или API «Дадаты» перестанет отвечать.

Подпишитесь на рассылку

Раз в месяц присылаем на почту новые статьи из блога и обновления сервисов «Дадаты». Не тревожим без повода и не шлем спам.

Есть! Отправили письмо с подтверждением
Не удалось подписаться