MetaX-Blogi

Teemme ketterästi Suomen tutkimusaineistojen metatietovarantoa, joka tulee palvelemaan OKM:n tutkimusaineistopalveluita (esim. TPAS, IDA ja Etsin). Tässä blogissa käsitellään kehityksessä ajankohtaisia ja usein avoimia asioita, eikä mikään tässä esitetty edusta mitään virallisia linjauksia. Sen sijaan toivomme palautetta ja avointa keskustelua.

tisdag 20 februari 2018

Voihan versio!

By The Conmunity - Pop Culture Geek from Los Angeles, CA, USA (WonderCon 2011 - Clone Troopers) [CC BY 2.0 (http://creativecommons.org/licenses/by/2.0)], via Wikimedia Commons

Versioinnin toteutus liittyen eri tyyppisiin tutkimusaineistoihin on ollut muutaman viimeisen sprintin vakiopuheenaihe. Monet keskustelun avaukset ovat päätyneet nopeasti umpikujaan yhteisesti sovittujen käsitteiden puuttumisen takia. Pelkästä versioinnista puhuminen, ilman tarkentavaa määrettä, on hankaloittanut keskustelua, koska Metax käsittelee tutkimusaineistoihin liittyviä versioita sekä metatieto- että datatasolla. Metaxin tavoitteena on ylläpitää molempiin liittyviä versiohistorioita datan ja datan kuvauksen provenienssin säilyttämiseksi. Toisaalta, koska varsinainen aineisto sijaitsee aina Metaxin ulkopuolisessa järjestelmässä kuten esimerkiksi IDAssa, kyse on pikemminkin datalinkityksistä. Aineistoon liittyvät tiedostot voivat myös sisältää metatietoa aineistosta, joten osa metatiedostakin on Metaxin ulottumattomissa.

Staattisen aineiston versioinnin lähtökohtana on, että jos tutkimusaineistoon liittyvät tiedostot muuttuvat millään tavalla, aineistosta on tehtävä uusi versio, joka saa uuden URN-muotoisen tunnisteen. Kumulatiivisiin aineistoihin voidaan sen sijaan lisätä uusia tiedostoja ilman, että tutkimusaineiston tunniste muuttuu. Kumulaativisten tutkimusaineistojen luominen on aluksi mahdollista ainoastaan sellaisille aineistoille, joiden tiedostot on tallennettu IDAan. IDA tarjoaa Metaxille luotettavan tiedon yksittäisten tiedostojen identiteetistä, minkä avulla Metax voi päätellä ovatko tutkimusaineistoon liittyvät tiedostot muuttuneet. Muissa järjestelmissä olevien tiedostojen kohdalla vastaavanlainen toiminnallisuus voisi liittyä esimerkiksi aineistoon liittyvien tiedostojen checksum-tietojen vertailuun, mutta tätä ei ole vielä toteutettu.

Tiedoston lisääminen tarkoittaa tässä yhteydessä linkin luomista tutkimusaineiston ja tiedoston välillä tietokantatasolla, mikä mahdollistaa lisättyjen tiedostojen selailun Etsimessä, mutta kyseiset tiedostot eivät kuitenkaan näy osana tutkimusaineiston metatietoja. Toteutuksen ansiosta paljon tiedostoja sisältävät aineistot eivät kasvata metatietodokumenttia, jos tiedostoja ei ole erikseen kuvailtu. Tiedoston kuvailu tarkoittaa metadatan lisäämistä lisättyyn tiedoston tai hakemiston metatietoihin Metaxin Research dataset -katalogiin. Metatieto voi olla esimerkiksi tiedoston tyyppi (dokumentaatio, konfiguraatio jne.) tai tarkempi nimike. Tiedostojen kuvailut tallennetaan osaksi tutkimusaineiston metadataa, mikä puolestaan tuottaa uuden metadataversion.

Tutkimisaineistojen versioiden väliset linkityksen tulisi olla myös osa metatietoja. Esimerkiksi DataCite sisältää relaatiot “isNewVersionOf” ja “isPreviousVersionOf”, joita voidaan käyttää tutkimusaineistojen linkittämiseen toisiinsa. Kun käyttäjä luo uuden version olemassa olevasta aineistosta, Metax lisää uuden tutkimusaineiston metatietoihin automaattisesti linkin aikaisempaan versioon. Koska versiolinkki on osa Qvaimessa vapaasti muokattavissa olevia relaatiotietoja, on mahdollista, että käyttäjä syystä tai toisesta poistaa linkin tai muokkaa sen sisältämään virheellisiä tietoja. Tästä syystä Metax ylläpitää tietokantatasolla tietoja myös tutkimusaineistojen versioiden välisistä linkeistä samaan tapaan kuin metatietoversioista, joita käyttäjä ei pysty muokkaamaan. Etsin käyttää tätä muuttumatonta versiota versiotiedostosta(!) hakuindeksin ylläpitoon ja versioiden näyttämiseen käyttöliittymässä.

Fairdata-kokonaisuuteen liittyvät komponentit aineistojen tallentamiseen (IDA), kuvailuun (Qvain) ja hakuun (Etsin) liittyvät toisiinsa Metaxin kautta, jonka tavoitteena on tarjota palveluille skaalautuva, varmatoiminen ja turvallinen ratkaisu datan integroimiseen. Versioilla ja versioilla on vaikutuksia sekä aineiston kuvailuun Qvaimen päässä että niiden näyttämiseen osana Etsimen käyttöliittymää. Qvaimen käyttäjä saattaa esimerkiksi haluta vertailla saman tutkimusaineiston metadatan versioita selvittääkseen kuvaukseen liittyviä ongelmia. Etsimen käyttäjä on puolestaan todennäköisesti kiinnostunut enemmän tutkimusaineistojen eri versioista.

tisdag 13 februari 2018

IDAn migraatiot käynnistyvät

IDA:n uudistumiseen liittyvät datamigraatiot ovat nyt alkaneet. Datamigraatioiden aikana käyttäjien palveluun lataamat tiedostot kopioidaan vanhasta IDAsta uuteen ympäristöön. Nyt meneillään olevan datasiirtovaiheen jälkeen alkavat varsinaiset projektikohtaiset migraatiot, joiden aikana tehdään datasiirtojen tarkistus ja mm. tiedostojen järjestelmätietojen siirto, niin että kaikki tarvittava tieto tuodaan vanhasta ympäristöstä uuteen. MetaX astuu kuvaan vasta kun tiedostoja migraation jälkeen jäädytetään uudessa ympäristössä, jolloin niistä siirtyy tietoja metatietovarantoon file API:n kautta.

Uudessa IDA:ssa on nimittäin kaksi eri säilytysaluetta: valmistelualue (staging) ja jäädytetty alue (frozen). Valmistelualueella projektin jäsenet voivat lisätä, uudelleennimetä, ylikirjoittaa ja poistaa dataa sekä muokata hakemistorakenteita. Valmistelualueella hakemistojen ja tiedostojen metatietoja ei tallenneta metatietovarantoon eli ne eivät myöskään näy tutkimusaineistojen kuvailutyökalussa. Uudistuneessa IDAssa ei itsessään tulla enää liittämään tiedostoihin käyttäjän luomaa metadataa, vaan IDA-tiedostoja tullaan kuvailemaan aineistoiksi tulossa olevalla kuvailutyökalulla, jolla tehty aineistometadata tallentuu Metaxiin. Valmistelualueen tiedostoista ei tehdä replikaa, joten datan tallennus valmistelualueelle ei suojaa dataa häviämiseltä mikäli palveluun tulee vakava vikatilanne. RAIDin ansiosta kuitenkaan yksittäinen levyrikko palvelussa ei aiheuta datan häviämistä.

Uudistunut IDA tulee loppukäyttäjien saataville kevään kuluessa. Kuva Pekka Tolvanen CC BY-NC-SA 2.0

Kun käyttäjä jäädyttää uudessa IDAssa dataa, data siirtyy IDAn valmistelualueelta jäädytetylle alueelle. Jäädytetyllä alueella tiedostoilla on UUID:t, tarkistussummat ja niiden metatiedot tallennetaan metatietovarantoon. Jäädytetyn alueen tiedostoista tehdään myös replika toiselle medialle jäädytyksen yhteydessä.

Uudistuneen IDAn käyttöönotto on tarkoitus tehdä niin, että ensimmäiset vanhasta IDAsta migroidut projektit ottavat palvelun käyttöön suunnilleen samoihin aikoihin kun palvelu tulee myös uusien IDA-käyttäjien saataville. Projektit migroidaan uuteen palveluun osissa, eli kaikille vanhoille käyttäjille uusi IDA ei tule samana ajanhetkenä käyttöön. IDA:n verkkosivuille tullaan lisäämään tarkennusta aikatauluun migraation edetessä. Ajankohta-arvio uudistuneen IDA-palvelun käyttöönotolle on maalis-huhtikuu 2018.

Uuden ympäristön loppukäyttäjille tarjolla oleva verkkotallennustila on rakennettu NextCloud-ohjelmiston päälle. On tärkeä kuitenkin huomioida, että IDA:ssa on poistettu käytöstä monia NextCloudin toiminnallisuuksia ja rakennettu uusia. Siksi on hyvä tutustua tarkasti uuden IDA:n käyttöoppaaseen, joka tullaan pian lisäämään IDAn verkkosivuille. Myöskään loppukäyttäjille ei ole järkevää mainostaa IDA NextCloudina, sillä tiedostojen säilytykseen liittyvien toiminnallisuuksien vuoksi esim. NextCloudin native/mobiili clientia ei tueta, eikä myöskään monia muita rajapintaan liittyviä asioita.

Palvelun käyttö vaatii jatkossakin CSC-tunnuksen ja kuulumisen CSC-projektiin. Erillistä IDA-salasanaa ei jatkossa enää ole, vaan autentikaatio tehdään joko Hakalla tai suoraan CSC-tunnuksella.

fredag 26 januari 2018

Tutkimuksen aineistot ja niiden pysyvät tunnisteet



Tutkimusdataa on monenlaista ja sitä voi luokitella ja jaotella monella eri tavalla. Yksi tapa, joka on erityisen keskeinen kun puhutaan aineistojen elinkaaren hallinnasta ja tutkimuksen toistettavuuden tarpeista, on jakaa aineistot dynaamisiin, karttuviin ja staattisiin aineistoihin. Olemme Metaxin tiimissä työstäneet seuraavanlaista ratkaisua.

Dynaamiset aineistot ovat tietokantatyyppisiä ja niissä tehdään versionhallintaa. Niissä viittaukset (ja niissä käytettävät pysyvät tunnisteet) voivat vaikka olla tietokantakyselyitä. Näille aineistoille on tehty Research Data Alliance-työryhmässä omat viittausohjeet. Tällä hetkellä palvelukokonaisuutemme ei ainakaan vielä suoraan kata tämän tyyppisten aineistojen pitkäaikaista aineistonhallintaa tai pysyviä tunnisteita. Dynaamisia aineistoja ylläpidetäänkin pääosin tutkimusalakohtaissa asiantuntijaorganisaatioissa, sillä niiden ylläpitäminen ja hallinnointi vaatii erityisosaamista. Ne voivat myös olla riippuvaisia eri alojen erilaisista tarpeista ja käytännöistä. Mutta jos haluaa, metatietovarantoon voi tallentaa tällaisen luotettavan lähteen uri-tunnisteen remote resource-kohtaan ja kuvailla sen.


Staattinen aineisto on “perinteinen” tutkimusjulkaisu, jonka tunniste on ehdoton tae aineiston ainutkertaisuudesta ja siitä, että se on aina identtinen milloin ja mistä vaan siihen löytää tiensä. Kunnes se ehkä poistetaan tarpeettomana tai virheellisenä. Silloinkin sen tunniste resolvoituu edelleen kuvailusivulle. Jos staattinen aineisto muuttuu, siitä syntyy uusi versio, joka saa uuden oman pysyvän tunnisteen, joka linkittyy edellisiin versioihin. Tulemme hakupalvelussamme indeksoimaan vain uusimman version metatiedot, mutta niistä pääsee aina myös edellisiin versioihin. Vanhan version tunniste johtaa aina oikealle sivulle, mutta siitä näkee, että uudempiakin versioita on. Tällä tavoin viittaaminen on tutkijoille turvallista ja selkeää.


Karttuvat aineistot ovat hieman uudenlainen aineistotyyppi, vaikka sitä on jo suositeltu aiemmin.  Se sopii erityisesti erilaiselle mittausdatalle tai muille kasvaville aineistoille, joita kertyy aikasarjoina ja formaatiltaan täysin yhtenäisenä. Tällaista tarvetta varten ei ole tarpeen luoda uusia tunnisteita (metatietosettejä) joka kerta kun uutta dataa lisätään uudessa tiedostossa. Sen sijaan tällaisen avoimen datasetin kohdalla sallitaan vain yhdenlainen muutos: tiedoston lisääminen, mikä tallennetaan tapahtumana. Mikäli parametrit tai laatu jotenkin muuttuu, aineisto on suljettava. Siitä voi tehdä uuden version tai aloittaa uuden aineiston keräämisen uusilla metatiedoilla. Tällainen aineisto, joka on avoimessa tilassa, ei siis ole kokonaisuutena välttämättä täysin identtinen joka kerta kun tunnisteen kautta sinne päätyy. Silti viittaaminen on turvallista, koska olemassa oleviin tiedostoihin ei voi kajota. Mikäli tekijä poistaa tiedostoja, aineisto rikkoontuu ja poistuu, mutta muistosivu jää. Aineistosta voi tehdä uuden version, johon voi sitten viitata. Koska viittaamisohje on osa hakupalveluiden tehtävää, voidaan viittausohje laatia tälle aineistotyypille sopivalla tavalla, siten että viittamisen yhteydessä on syytä tarkentaa mitä osaa ainestossa on käytetty esim. päivämäärien avulla.

måndag 8 januari 2018

Lomiltapaluu isojen kysymysten äärelle


Ensimmäinen hahmotelma MetaXin softa-arkkitehtuurista


Tänään alkoi joululomien jälkeen uusi sprintti ja palattiin taas hieman paremmin organisoituun toimintamalliin. Lomien jälkeiset keskustelut koskivat muun muassa dokumentaation ja arkkitehtuurikuvien tuottamista. Sovimme myös pysyvien tunnisteiden käytöstä taas vähän lisää ja keskustelimme karttuvien aineistojen asettamista vaatimuksista. Ennen joulua tutkimusaineisto (Dataset) tietomalliin ilmestyi myös Restriction grounds eli assosiaatio, jonka avulla kerrotaan käyttörajoitusten peruste. Muuten käyttöoikeuksien metatiedoista voi lukea lisää viime vuonna julkaistusta selvityksestä,  jonka liitteistä löytää paljon relevanttia tietoa.

Pysyvien tunnisteiden osalta tärkeimpiä ovat tutkimusaineistojen ja aineistokatalogien tunnisteet. Ne tulevat näillä näkymin saamaan urn-muotoiset resolvoituvat tunnisteet. MetaX antaa näitä tunnisteita ja huolehtii siitä, että Kansalliskirjaston resolverilla on oikea tieto kuvailusivujen verkko-osoitteista. Tässä vaiheessa vältämme resolvoituvien tunnisteiden jakamista millekään muulle, ja palvelukokonaisuudessa tullaan operoimaan UUID:n varassa. Pyrimme välttämään semantiikkaa mahdollisimman tarkkaan, jotta tunnisteet olisivat tyhmiä, kuten sekä EU:n että kypsissä tutkimusaineistoyhteyksissä suositellaan.

måndag 18 december 2017

Katalogeista

By Stuart Caie from Edinburgh, Scotland (Indexed) CC BY 2.0, via Wikimedia Commons


Tänään vaihtui taas sprintti. Edellisen sprintin aikana on paljon pohdittu versiointia (johon palaan joku toinen kerta piakkoin) sekä hakemistojen versus yksittäisten tiedostojen kuvailemista. Koska järjestelmiä on palvelukokonaisuudessamme useita (esimerkiksi tässä kyse on pitkälti MetaXin keskustelusta IDA:n ja kuvailutyökalun kanssa) pienilläkin yksityiskohdilla voi olla yllättävän suuria vaikutuksia järjestelmäkokonaisuuden muissa osissa. Pyrimme koko ajan varmistamaan sen, että käyttäjälle toiminnallisuudet näyttäytyvät selkeinä ja että aineistojen hallinta on luotettavaa. Pysyväksi tarkoitetun aineiston pitää olla suojassa tahattomilta muutoksilta, mutta järjestelmä ei toisaalta saa olla liian jäykkä. MetaXin monitasoisuus ja joustavuus ovat käsittääkseni aika uniikkeja. Tuntuu oikeasti, että olemme tekemässä jotain ihan uudenlaista, uudenaikaista palvelua.

Yksi juonne on järjestelmän sisäiset katalogit (Research Data Catalog). Ne mahdollistavat eri tietolähteistä tulevien metatietojen hallinnan yhdessä ja erikseen. Esimerkiksi kukin haravointilähde saa omat metatietonsa katalogiluetteloon. Haravointi tapahtuu Etsimen CKANin avulla. Haravointilähteinä ovat tähän asti olleet Tietoarkisto, Kielipankki ja SYKE. Myös esimerkiksi Zenodosta haravointi on onnistunut vanhaan Etsimeen. Kun haravointi ensi vuonna siirtyy MetaXiin, entistä tarkemmat mappaukset mahdollistuvat. Olemmekin jo hieman suunnitelleet uusia haravia, tosin esimerkiksi odottelemme vielä Tietoarkiston uuden rajapinnan DataCite-formaattia. Katsotaan miten saamme mahdollisimman nättiä ja täydellistä tietoa asiakkaillemme.

Seuraavassa sprintissä tehdään arkkitehtuuridokumentaatioita, perehdytetään uutta tiimiläistämme ja kirjoitellaan skriptejä aineistojen tiedoston kokojen ja määrien koostamiseen. Lisäksi esiin on noussut pohdintaa migraatiosta ja kasvavien aineistojen joustavasta ja selkeästä hallinnasta.

tisdag 12 december 2017

MetaX elää ja kehittyy


Auringonnousu Keilarannassa

MetaX-metatietovarantoa on nyt tehty neljäntoista sprintin verran. Työskentelemme noin kahden viikon sprinteissä. Tässä uudessa blogissa kerromme kehityksen etenemisestä ja toivomme palautetta ja kommentteja. Blogi on tarkoitettu henkilöille, jotka kehittävät ja ylläpitävät järjestelmiä ja palveluita, jotka tulevaisuudessa mahdollisesti hyödyntävät varantoa. Kehitystyötä tehdään pääosin CSC:llä, mutta meillä on läheistä yhteistyötä myös Kansalliskirjaston kehittäjien kanssa. 
Itse olen juuri aloittanut MetaX:in PO:na ja olen tästä innoissani. MetaX tulee olemaan täysin uudenlainen palvelu, joka palvelee niin IDAa ja tutkimusaineistojen pitkäaikaissäilytystä kuin kansallisia hakupalvelujakin. Tietomalli on uudenlainen ja rakentuu linkitetyn datan varaan. Tämä tarkoittaa, että tulemme kokoamaan tärkeitä referenssitietoja, joita muutkin voivat hyödyntää ja tällä tavoin helpottaa yhteentoimivuutta. Metaxin tietomalleja on useampia, ja niitä ylläpidetään ajantasaisesti IOW-palvelussa. 
MetaX tulee sisältämään useita eri katalogeja. Katalogien tiedot löytyvät omasta rakenteestaan, Research Data Catalog. Lisäksi kuvailemme IDAssa olevia tiedostoja omassa luettelossaan Data Storage Metadata -tietomallia hyödyntäen. Varsinaiset tutkimusaineistojen metatiedot ovat sitten Dataset-mallissa. Kaikki nämä ovat sovelluksia yhteisestä ATT -sovellusprofiilista
Työn edetessä tietomallit muuttuvat, ja joissain kohdissa muutoksia on myös viety ATT-sovellusprofiiliin. Varsinkin MetaX:in mallit saattavat vielä muuttua eli niitä voi vielä hyvin kommentoida ja toivommekin palautetta.