Spinta
Pastaba
Ši dokumentacija yra rengiama (draft). Šiuo metu prioritetas — Spinta Agento diegimo instrukcijos, skirtos institucijoms, pradedančioms diegiančioms SPINTA agentą UDTS duomenų paslaugų publikavimui vartuose. Kitos dalys bus papildomos vėliau.
Įspėjimas
Nuo Spinta versijos 0.2dev22 config.access numatytoji reikšmė pasikeitė: protected → open. Jei config.yml nėra išskirtinai nurodytas access laukas, ir
DSA modeliai naudoja access=protected arba access=public — po atnaujinimo
tokie modeliai grąžins ModelNotFound klaidą.
Sprendimas: į config.yml pridėti:
access: protected
Patikrinkite savo konfigūraciją prieš atnaujinant Spintą.
Kas yra Spinta?
Spinta — metaduomenimis valdomas (metadata-driven) duomenų logistikos variklis, sukurtas VSSA. Platforma transformuoja uždaras, heterogeniškas duomenų saugyklas į modernius, saugius ir standartizuotus API išteklius pagal UDTS/UAPI standartą — nekeičiant esamų sistemų.
Spinta esmė — manifesto (DSA) dominavimas prieš kodą. Sistema elgiasi pagal metaduomenų aprašą (DSA failą), o ne užkoduotą logiką. Tai leidžia valdyti duomenų struktūrą, prieigos teises ir šaltinius be papildomo programavimo.
Vystytojas: VSSA
Statusas: Aktyvios plėtros stadija (v0.x) — veikimas tiesiogiai priklauso nuo manifesto tikslumo
Projektai: ADP (Atvirų duomenų portalas), DVMS (Duomenų valdymo modelio sistema)
Licencija: (MIT licencija)
Architektūra
Spinta sudaro penki pagrindiniai loginiai blokai:
Blokas |
Aprašas |
|---|---|
Core Engine |
Centrinė dalis, interpretuojanti Manifestą; |
CLI |
Administratoriaus įrankių rinkinys — konfigūravimas, atvirkštinė inžinerija, duomenų transportavimas |
Auth |
OAuth2/JWT sistema; prieigos teisės per scopes iki lauko lygmens |
Backends |
Abstrakcijos sluoksnis — PostgreSQL, MongoDB, MySQL, failų sistemos |
API/Renderer |
Duomenų pateikimas REST ar RDF formatais per ASGI serverį |
CLI komandos
Komanda |
Paskirtis |
Kada naudojama |
|---|---|---|
|
Nuskaito šaltinį ir sugeneruoja pradinį Manifestą (DSA) |
Prieš diegimą — DSA paruošimas |
|
Paleidžia API serverį — Agento režimas |
Realaus laiko duomenų teikimas |
|
Siunčia duomenis į Spinta saugyklą |
Duomenų publikavimas į ADP |
|
Pritaiko Manifesto struktūrą fizinėje DB |
Schemų pokyčių valdymas |
|
Perkelia duomenis tarp backend’ų |
Vidinė duomenų migracija |
|
Generuoja OAuth2 klientus ir raktus |
Prieigos valdymas |
Pagrindiniai veikimo režimai
Režimas A — Agentas (spinta run)
Spinta veikia kaip standartizuotas fasadas virš institucijos duomenų bazės ar paslaugos. Partneriai ir piliečiai gauna duomenis per autorizuotą UDTS/UAPI API tiesiogiai iš šaltinio — realiu laiku.
Naudojama: tarpinstitucinei duomenų integracijai per Gravitee vartus (DVMS projektas).