Atvirų duomenų manifestas¶
Kas yra manifestas?¶
Manifestas yra YAML failų rinkinys, kuriuose aprašomos duomenų struktūros. Manifestas yra vidinis komunikacijos protokolas, skirtas susikalbėti duomenų tiekėjams, duomenų naudotojams ir centriniam atvirų duomenų portalui.
Manifestas turi pakankamai daug metaduomenų (metaduomenys yra duomenys apie duomenis) apie duomenų rinkinį jį sudarančias duomenų struktūras. Tai leidžia automatizuoti duomenų importavimą į atvirų duomenų portalą, duomenų kokybės patikrinimą, duomenų eksportavimą į kitus formatus ir pan.
Pats savaime Manifestas nėra dar vienas standartas, tai yra vidinei komunikacijai skirtas protokolas, kurio pagrindu sudaroma galimybė tranformatuoti duomenis į įvairius formatus. Pats Manifestas yra aktualus tik tiekėjams norintiems atverti duomenis.
Kaip tai veikia?¶
Kad geriau suprasti, kaip visa tai veikia, pabandykime aprašyti CSV failo
duomenų struktūrą. Tarkime turime tokį CSV faile, kuris pasiekiamas adresu
https://example.com/countries.csv
, šio CSV failo turinys atrodo taip:
code,country
lt,Lietuva
lv,Latvija
ee,Estija
Šiam CSV failui Manifesto duomenų struktūros aprašas atrodytų taip:
name: pavyzdziai/salys
type: dataset
resources:
countries:
type: csv
objects:
geografija/salis:
source: https://example.com/countries.csv
properties:
id:
type: pk
source: code
kodas:
type: string
source: code
pavadinimas:
type: string
source: country
Šio duomenų aprašo dėka galima automatiškai importuoti duomenis iš įvairių šaltinių vėliau juos eksportuoti įvairiais formatais.
id | kodas | pavadinimas |
---|---|---|
552c4c24 | lt | Lietuva |
b5dcb868 | lv | Latvija |
68de1c04 | ee | Estija |
Funkcijos¶
Toks duomenų struktūros aprašas turi pakankamai informacijos, kad galėtume automatiškai atlikti dalykus išvardintus žemiau.
- Importuoti duomenis iš įvairių šaltinių.
- Patikrinti šaltinio duomenų kokybę.
- Patikrinti ar duomenų aprašas tikrai atitinka duomenų šaltinį.
- Eksportuoti duomenis įvairiais kitais formatais.
- Susieti įvairių šaltinių duomenis naudojant vieningą žodyną.
- Valdyti duomenis naudojant API.
- Normalizuoti denormalzuotas duomenų struktūras.