Сервис контроля и архивации материалов портала открытых данных г. Москвы: различия между версиями

Материал из GIS-Lab
Перейти к навигации Перейти к поиску
Строка 32: Строка 32:
#Генерация красивых diff-ов для отображения изменений в данных.
#Генерация красивых diff-ов для отображения изменений в данных.


==Код==
==Результаты==
Твиттер для оповещений об изменениях: https://twitter.com/datamosru
Архивированные данные: http://gis-lab.info/data/mos.ru/data
 
===Код===
Весь исходный код на языке Python доступен на [https://github.com/simgislab/datamosru Github].
Весь исходный код на языке Python доступен на [https://github.com/simgislab/datamosru Github].


Использованы:
Использованы:
*[http://code.google.com/p/python-twitter/ python-twitter]
*[http://code.google.com/p/python-twitter/ python-twitter]

Версия от 09:06, 14 мая 2013

Эта страница опубликована в основном списке статей сайта
по адресу http://gis-lab.info/qa/data-mos-control.html


Описание сервиса контроля данных

Проблема

Первым городом раскрывшим более-менее существенное количество открытых геоданных является Москва. Данные по городу выкладываются на Портал открытых данных г. Москва. Портал неплохо справляется с функцией доставки данных потребителю, нет привязки к API, для получения наборов данных не нужна регистрация. Однако, некоторые другие функции выполняются не очень хорошо: нет четкой системы оповещений об обновлениях, непонятно что же вообще обновилось. Дополнительно, нет уверенности, что отдельные наборы данных завтра не пропадут с портала окончательно.

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

Идея

Создать независимый сервис архивации и проверки изменений в данных портала.

Реализация

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

Функции сервиса

  • Ежедневная проверка
  • Изменение комплектации данных
    • Обнаружение новых наборов данных
    • Обнаружение удаленных наборов данных
    • Обнаружение восстановленных (после удаления) наборов данных
  • Изменение данных
    • Добавление/удаление атрибутивных полей
    • Добавление/удаление записей
    • Другие изменения содержания (не ведущие к изменению количества полей и/или строк)
  • Сохранение версий измененных наборов данных
  • Компрессия данных
  • Оповещение о главных событиях в специальном твиттере и лог-файле.
  • Регистрация изменений в специальных лог-файлах для каждого набора (пример)

Планы на будущее

  1. Интеграция с процессом нормализации и конвертации данных с портала в более приемлемый для ГИС и разработчиков вид. Вместо пакетной конвертации, как сейчас, будут конвертироваться только измененные наборы данных.
  2. Генерация красивых diff-ов для отображения изменений в данных.

Результаты

Твиттер для оповещений об изменениях: https://twitter.com/datamosru Архивированные данные: http://gis-lab.info/data/mos.ru/data

Код

Весь исходный код на языке Python доступен на Github.

Использованы: