ФИАС - Федеральная информационная адресная система
ФИАС выкладывает справочник адресов России в открытом доступе (и регулярно его обновляет). Но данные доступны всего в 2 форматах XML и DBF (FoxPro). В распакованом виде база весит около 20Гб. В таком формате не совсем удобно работать со справочником.
Для решения этой проблемы на Go была написана утилита экспортирующая данные из XML (в дальнейшем будет опция XML или DBF) в PostgreSQL.
- Скачайте утилиту
go get -u github.com/pavlik/fias_xml2postgresql
- Перейдите в директорию с исходниками
cd $GOPATH/src/github.com/pavlik/fias_xml2postgresql
- Скачайте все зависимости
go get -u
- В этой директории создайте папку
xml
(позже будет создаваться автоматически). - Скачайте в директорию
xml
полный архив справочника в формате XML (позже будет скачиваться автоматически). - Создайте в PostgreSQL базу с именем fias принадлежащую пользователю dev с паролем dev. Или ваши данные, но тогда не забудьте изменить строку подключения в файле main.go
- Запустите
go run main.go
- Сделать обработку таблиц многопоточной
- Вариант экспорта либо из XML, либо из DBF
- Добавить возможность автоматического скачивания архива с сайта ФИАС, распаковки и экспорта
- Добавить возможность автоматической проверки обновлений базы и автоматической установки, если требуется
- Проставить в схемах таблиц индексные поля
- Написать Makefile для автоматического создания таблицы fias и пользователя, для работы с ней