Datan hallinta supertietokoneiden scratch-levyillä
Tärkeä tehtävä kaikille CSC:n supertietokoneiden käyttäjille on hallita sitä, mitä dataa sijaitsee projektien
scratch-kansioissa. Ne on tarkoitettu vain väliaikaiseksi tallennustilaksi datalle, joka on
aktiivisessa käytössä. Kaikki muu data tulisi poistaa tai tallentaa muihin tarkoitukseen paremmin
soveltuviin tallennusjärjestelmiin. Käyttäjien ei oleteta käyttävän koko kiintiötään; enimmäiskiintiö on tarkoitettu vain
lyhytaikaisiin käyttöpiikkeihin.
Huomaa myös, että:
- Lustre-rinnakkaistiedostojärjestelmän suorituskyky alkaa heikentyä, kun levytilasta on käytössä noin 70 %,
ja mitä täydemmiksi levyt tulevat, sitä hitaammaksi suorituskyky muuttuu.
CSC on jakanut kiintiöitä enemmän kuin levytilaa on käytettävissä, joten kaikkien käyttäjien ei ole edes mahdollista
käyttää
scratch-kansioitaan pidempiaikaiseen tallennukseen. scratch-levyalueesta ei ole varmuuskopioita. Älä luota siihen kaiken tutkimusdatasi säilytyspaikkana.- Tiedostojen poistaminen vähentää projektisi Storage BU -kulutusta, koska
scratch-käyttöä laskutetaan TiB-tuntien perusteella.
Pyydämme ystävällisesti kaikkia käyttäjiä auttamaan levytilan käytön pitämisessä hallittavana ja suorituskyvyn kohtuullisena. Tee seuraavat toimet:
- Poista tiedostot, joita ei enää tarvita projektisi
scratch-kansiosta. Huomaa, että emme voi palauttaa vahingossa poistamiasi tiedostoja, joten tee nämä toimenpiteet huolellisesti! - Pakkaa tiedostot, jos se pienentää tiedostokokoa. ASCII-tekstitiedostot pakkautuvat yleensä erittäin hyvin. Testaa ensin yhdellä tiedostolla. Jos tiedostokoko pienenee 50 %, pakkaa kaikki vastaavat tiedostot. Katso täältä saatavilla olevat pakkaustyökalut.
- Siirrä tiedostot, jotka eivät ole juuri nyt aktiivisessa käytössä mutta joiden täytyy olla myöhemmin projektin aikana saatavilla. Tyypillinen toimintamalli on siirtää tiedostot Altaaseen. Suosittelemme käyttämään a-tools-työkaluja pieniin ja keskisuuriin datansiirtoihin, erityisesti silloin kun sinulla on suuri määrä pieniä tiedostoja. Nämä työkalut tekevät Allaksen käytöstä turvallisempaa ja voivat helpottaa datan hallintaa. Erittäin suuriin datansiirtoihin suosittelemme käyttämään rclonea. Datansiirron opastus on saatavilla kohdassa Allas HPC -opas.
- Arkistoi tiedostot, joiden tulee olla saatavilla pidempään kuin laskentaprojektien elinkaaren ajan. Vaihtoehtoja tähän voivat olla esimerkiksi organisaatiosi omat tallennusjärjestelmät tai IDA turvallinen säilytyspalvelu tutkimusdatalle.
Datan sijainnin tunnistaminen
Jos sinulla on suuri määrä tiedostoja, sen analysointi, kuinka paljon dataa eri kansioissa on, voi viedä paljon aikaa ja myös kuormittaa tiedostojärjestelmää. Suosituksemme työkaluiksi, jotka voivat näyttää kansioissa olevan datan määrän:
- Vältä käyttämästä
find-valintoja kuten-sizetai vastaavia - Vältä käyttämästä
du - Käytä
lue-työkalua tailfs find --lazy-komentoa
CSC on kehittänyt likimääräisen työkalun nimeltä LUE (Lustre usage explorer) kansioissa olevan
datan määrän raportointiin. Lue LUE-dokumentaatio ennen sen käyttöä.
lfs find --lazy sisältää joitakin reunatapauksia, joissa se voi olla yhtä huono kuin du tai epäonnistua hiljaisesti oikeiden
kokotietojen hakemisessa. Suorita man lfs-find, jos haluat lisäohjeita ja tietoa sen rajoituksista.
Note
Riippumatta siitä, mitä työkalua käytät, sinun ei koskaan pidä yrittää listata tai käsitellä kaikkia projektisi
tai scratch-kansiosi tiedostoja yhdellä komennolla. Sen sijaan komentojen tulisi kohdistua tiettyihin
alihakemistoihin, joissa on rajallinen määrä tiedostoja ja dataa. Käytössä olevan datan kokonaismäärä on
saatavilla csc-workspaces-komennolla.
Tiedostojen automaattinen poisto
On olemassa käytäntö, jonka mukaan poistetaan tiedostot,
jotka ovat vanhempia kuin 180 päivää (scratch-kiintiö alle 5 TiB) tai 90 päivää (scratch-kiintiö
5 TiB tai enemmän) scratch-alueelta (ei projappl-alueelta), jotta levyllä sijaitsee vain aktiivisesti käytettyä dataa.
Seuraavassa siivouksessa poistettavat tiedostot listataan niin sanottuihin "purge list" -tiedostoihin.
Nämä on jaettu projekteittain, ja ne löytyvät Lustresta jostakin alla olevista sijainneista.
Vain projektiryhmien jäsenet voivat käyttää projektihakemistoja.
Jos projektisi on juuri luotu, sillä ei ehkä vielä ole omaa alihakemistoa
purge_lists-hakemistossa, jolloin se ei vielä osallistu automaattiseen siivoukseen.
/scratch/purge_lists/<PROJECT NAME>/path_summary.txt
Jos path_summary.txt-tiedostoa ei ole olemassa, projektissasi ei ollut yhtään tiedostoa, joka olisi vastannut
siivouskriteerejä, eikä siitä siis poisteta mitään. Osoittaakseen, että tiedosto puuttuu tarkoituksella,
CSC sijoittaa projektisi purge_lists-alihakemistoon tiedoston nimeltä nothing-to-remove-for-your-project,
joten tarkista myös tämän tiedoston olemassaolo.
Osana automaattista siivousprosessia tiedostojen nimet muuttuvat. Ennen kuin siivous on alkanut,
jokaisella siivoukseen kuuluvalla projektilla on tiedosto nimeltä path_summary.txt.
Erityistapauksissa, joissa projekti on vapautettu tulevasta siivouksesta tai tarvitsee enemmän aikaa
tiedostojen siirtämiseen, ylläpitäjät nimeävät tiedoston uudelleen joksikin muuksi, yleensä
path_summary.txt-later-delete. Kun projekti on käsitelty automaattisessa siivouksessa,
tiedosto nimetään uudelleen muotoon path_summary.txt-stashed. Nämä tiedostot ovat edelleen projektien luettavissa,
jotta listaan voidaan viitata myös siivouksen jälkeen.
Edellisen kierroksen tiedostot arkistoidaan, kun seuraava siivouskierros on alkamassa.
Voit tarkistaa, onko projektisi purge list päivitetty hiljattain, tarkistamalla sen viimeisimmän
muokkauspäivän. Alla olevassa esimerkissä tiedosto on muutaman kuukauden vanha, joten se on selvästi
edelliseltä siivouskierrokselta:
$ stat -c %y /scratch/purge_lists/project_2001659/path_summary.txt-stashed
2023-05-23 00:35:28.000000000 +0300
$ date +%F
2023-08-04
Toinen tiedosto, joka sijoitetaan jokaisen projektin purge_lists-hakemistoon, on total_size.txt.
Tämä tiedosto sisältää valmiiksi lasketun kokoarvion, joka perustuu path_summary.txt-tiedostojen lukuihin.
Tämä tiedosto on olemassa jokaiselle projektille, ja se luodaan automaattisesti, kun purge listit muodostetaan.
Tiedosto voi näyttää tältä:
$ cat /scratch/purge_lists/project_2001659/total_size.txt
Total size: 798343125192 bytes = 743.515 GiB = 0.726 TiB
Näiden tietojen avulla voit arvioida, kuinka paljon aikaa datan varmuuskopiointi muualle saattaa vaatia,
jos haluat säilyttää kaiken purge listalla olevan scratch-tiedostojärjestelmän ulkopuolella.