Co zrobić, aby baza danych była użyteczna?

Katarzyna Mikołajczyk

17 lutego 2017

Przeczytasz w 4 minuty

Coraz więcej baz danych jest udostępnianych przez samorządy dość regularnie. Pozwala to mieszkańcom na śledzenie trendów, zmian w czasie czy na bieżące korzystanie z udostępnianych informacji przez biznes (re-use). Każdy kto tworzy lub aktualizuje jakiekolwiek informacje, powinien pamiętać o unikaniu kilku elementów, które (niestety często spotykane) powodują, że praca z bazą danych jest trudniejsza (=wymaga większych nakładów czasu).
Informacje należy tutaj rozumieć bardzo szeroko: mogą to być informacje o urodzeniach w gminie wprowadzane przez urzędnika do formularza (taka osoba nie widzi końcowej bazy danych); dane o dotacjach przyznanych przez gminę; wykaz wydanych decyzji administracyjnych; wykaz interpelacji radnych gminy itp.
 

1. Rekordy / pozycje nie zawierają pola z unikalnym identyfikatorem, co powoduje, że jest trudno monitorować zmiany w bazie po aktualizacji.

Przykład 1: Jest:
Imię Częstotliwość nadawania
ZUZANNA 9151
LENA 8768
JULIA 8541
MAJA 8092
  Może być:
ID. Imię Częstotliwość nadawania
K001 ZUZANNA 9151
K002 LENA 8768
K003 JULIA 8541
K004 MAJA 8092
Chociaż w tym przypadku jako unikalny identyfikator można traktować po prostu imię. Zaproponowane ID tutaj określa także płeć (przydane w przypadku baz międzynarodowych). W przypadku gdy byłaby to baza częstotliwości nadawania imion z podziałem na województwa mogłaby wyglądać następująco:
Imię województwo Częstotliwość nadawania
ZOFIA mazowieckie 1360
JULIA mazowieckie 1340
ZUZANNA mazowieckie 1300
MAJA mazowieckie 1250
HANNA dolnośląskie 718
JULIA dolnośląskie 642
ZUZANNA dolnośląskie 620
MAJA dolnośląskie 592
Nie ma tutaj kolumny ID, gdyż kolumna “imię” i “województwo” tworzą razem unikalny zestaw.  

Przykład 2:

Jest: 
Nazwa organizacji Kwota dotacji
Nasza Szkoła 1234 zł
Stowarzyszenie “Nasza Szkoła” 1324 zł
Stowarzyszenie “Nasza Szkoła” 1432 zł
Stowarzyszenie “Nasza Szkoła” 1432 zł
  Powinno być:
Nazwa organizacji KRS Kwota dotacji
Nasza Szkoła 0000234808 1234 zł
Stowarzyszenie “Nasza Szkoła” 0000118130 1324 zł
Stowarzyszenie “Nasza Szkoła” 0000102889 1432 zł
Stowarzyszenie “Nasza Szkoła” 0000297307 1432 zł
Unikalnym identyfikatorem jest w tym przypadku numer KRS. W przypadku przedsiębiorców może to być numer NIP. Przy innych informacjach - warto skorzystać z istniejących numerów identyfikacjnych, a jeśli ich nie ma - stworzyć własne (np. numery nadawane przystankom, słupom ogłoszeniowym czy stacjom roweru publicznego).  

2. Rekordy / pozycje nie zawierają pola „data aktualizacji”, co utrudnia sprawdzenie, które dane zostały wprowadzone w wersji pierwszej, a które w kolejnych. Albo też rekordy / pozycje nie zawierają pola „data utworzenia”, co uniemożliwia określenie, kiedy zostały dodane do bazy

Przykład:

Jest:
Imię Częstotliwość nadawania imion w PL w 2015 Częstotliwość nadawania imion w PL w 2016
ZUZANNA 9151 8837
LENA 8768 8367
JULIA 8541 8637
MAJA 8092 8303
  Powinno być:
Imię Częstotliwość nadawania imienia w PL Dane za rok
ZUZANNA 9151 2015
LENA 8768 2015
JULIA 8541 2015
MAJA 8092 2015
ZUZANNA 8837 2016
LENA 8367 2016
JULIA 8637 2016
MAJA 8303 2016
Taki układ, choć zawiera dokładnie te same informacje co tabela wyżej - zdecydowanie ułatwia analizę i pracę z taką bazą danych.  

3. Rekordy / pozycje nie stosują /nie trzymają standardów danych. Najczęściej spotyka się to w przypadku pozycji związanych z datą lub finansami.

  Jest:
Nazwa organizacji KRS Data utworzenia organizacji
Nasza Szkoła 0000234808 23 maja 2005
Stowarzyszenie “Nasza Szkoła” 0000118130 13.06.2002
Stowarzyszenie “Nasza Szkoła” 0000102889 2002.03.26
Stowarzyszenie “Nasza Szkoła” 0000297307 2008-01-30
  Powinno być:
Nazwa organizacji KRS Data utworzenia organizacji
Nasza Szkoła 0000234808 2005-05-23
Stowarzyszenie “Nasza Szkoła” 0000118130 2002-06-13
Stowarzyszenie “Nasza Szkoła” 0000102889 2002-03-26
Stowarzyszenie “Nasza Szkoła” 0000297307 2008-01-30
Zgodnie ze standardem ISO 8601 w zakresie zapisu daty, należy stosować zapis RRRR-MM-DD. Jeden standard warto zastosować także dla zapisów finansowych czy adresowych - jeden adres można zapisać na conajmniej kilka sposobów:
  • ul. Słone 72, 57-350 Kudowa-zdrój
  • Słone 72, Kudowa-zdrój, 57-350
  • 57-350 Kudowa-zdrój; ul. Słone 72
 

4. Istnieją rozbieżności pomiędzy informacjami zawartymi na stronie a publikowanymi w bazie danych

Czasami brak jest niektórych informacji lub brak możliwości eksportu w tym samym formacie lub dane za kolejne lata publikowane są w różnych formatach (dane o częstotliwości imion nadawanych w Polsce w roku w 2015 są w pliku PDF oraz tabelarycznym *.XLS; zaś dane za 2016 w pliku PDF oraz… tekstowym *.ODT). Stąd też czasami łatwiej/ szybciej jest użyć narzędzia do „web scrapping” niż pobierać (i porządkować) bazę danych.  

5. Dane publikowane w bazie danych są umieszczane dużo później niż na stronie internetowej.

Aby baza danych była użyteczna z punktu widzenia obywateli, dane w niej muszą pojawiać się niezwłocznie. Czasami informacje pojawiają się na stronach www urzędów jako grafiki lub relacje z konferencji prasowych; brakuje jednak tych danych w formie umożliwiającej pracę z tymi danymi.   Pamiętanie o tych kilku elementach powyżej już podczas projektowania, a potem podczas uzupełniania jakiejkolwiek bazy danych znacząco ułatwia pracę z zamieszczonymi tam informacjami. Dotyczy to nie tylko otwartych danych, ale wszelkich baz danych. O tych zasadach powinny pamiętać nie tylko administracja ale także także organizacje pozarzadowe.  

Materiał na podstawie: José Luis Marín Some very simple practices to help with the reuse of open datasets 

Zdjęcie: Sanwal Deen, CC-0