Парсер данных и знакомство с Golang

https://scdb-landing-001e.twc1.net/

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

Отдельное требование было к поставке решения: заказчику нужен был не просто скрипт, а готовый Docker‑контейнер с уже наполненной базой данных, который можно развернуть в нужном окружении и сразу получить доступ к API и интерфейсу.

Сначала я начал писать парсер на Node, но при таком объёме XML процесс шёл заметно медленно. В какой‑то момент я остановился, почитал про опыт других разработчиков и выбрал Go — переписал парсер на Golang и параллельно выучил его базу.

Для меня это был хороший опыт переключения с одного языка на другой под конкретную задачу: когда не просто изучаешь новый язык по курсу, а сразу применяешь его на реальном кейсе с большими данными, Docker‑окружением и жёсткими требованиями к производительности.

Парсер данных и знакомство с Golang | Сетка — социальная сеть от hh.ru