TGViewer
Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter @phpproglib · 10.5K subscribers
Post #6185 2.2K
Как Geocodio поддерживает в актуальном состоянии 300 миллионов адресов

Geocodio поддерживает актуальность более 300 миллионов адресов с помощью собственной системы обработки данных Chop Chop.

Как обновляются адресные данные
Адреса постоянно меняются: появляются новые дома, улицы, пересматриваются границы участков. Чтобы поддерживать базу в актуальном состоянии, Geocodio использует почти 3 000 источников данных и автоматизированный конвейер обработки.

Система Chop Chop
Chop Chop — внутренняя платформа компании, построенная на Laravel и SQLite. Она управляет поступающими данными, очищает, нормализует и проверяет их. Благодаря системе очередей в Laravel Horizon данные из сотен источников обрабатываются параллельно на мощных серверах.

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

Этапы обработки данных
1. Получение данных — большинство источников (городские и окружные администрации) обновляются еженедельно.
2. Конвертация форматов — сырые данные приводятся к единому виду (GeoJSON).
3. Обогащение — добавляются недостающие почтовые коды, города, корректируются адресные записи.
4. Валидация — проверяются корректность номеров домов, координат и других параметров. Если качество данных низкое, они отбрасываются (до 30% записей).
5. Проверка изменений — если в новой версии есть значительные отличия, их передают на ручную проверку.

Развертывание обновлений
Каждую ночь Chop Chop собирает свежие данные в агрегированную базу SQLite. Затем тестируется геокодер, и перед развертыванием изменений их проверяет человек.

Благодаря заранее подготовленным копиям базы данных обновления разворачиваются быстро — достаточно переключить систему на новую версию.

👉Читать подробнее
  • ❤ 3
More from @phpproglib
  1. Sep 23, 2026🛠 Symfony 8.2 научился автоматически генерировать JSON Schema для конфигурации приложения…
  2. Sep 23, 2026🚀 Свежий релиз Laravel 13 с набором улучшений и исправлений ✅ добавлена поддержка valkey:…
  3. Sep 21, 2026⚡️ PHP 8.6 выйдет 19 ноября 2026 года. Сейчас версия находится в beta. Самые заметные изме…
  4. Sep 20, 2026❓ Какие существуют проблемы в многопоточной среде? Основные проблемы многопоточности: 1️⃣…
  5. Sep 19, 2026🌞 В Symfony 8.2 появилось 29 новых Bundle — теперь компоненты вроде Mailer, Messenger и C…
  6. Sep 19, 2026А вы уже забрали свой подарок ко Дню программиста? К вашему профессиональному празднику Tp…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →