Najlepšie postupy pri správe dát¶
Efektívne využívanie zdieľaných súborových systémov je dôležité pre udržanie vysokého výkonu HPC systému a zabezpečenie férového prístupu k zdrojom pre všetkých používateľov. HPC súborové systémy sú optimalizované pre veľké paralelné I/O úlohy a pri používaní typickým spôsobom pre osobné počítače môžu dosahovať horší výkon.
Nasledujúce odporúčania pomáhajú používateľom vyhnúť sa bežným problémom s výkonom a efektívne spravovať svoje dáta.
Používajte vhodné súborové systémy¶
Rôzne súborové systémy sú navrhnuté na rôzne účely.
| Súborový systém | Predpokladané použitie |
|---|---|
/home |
Zdrojový kód, skripty, konfiguračné súbory, malé datasety |
/project |
Zdieľané dlhodobé výskumné dáta |
/scratch |
Dočasné súbory vytvorené počas behu úloh |
Tip
Používajte /scratch na aktívne výpočty a veľké dočasné
datasety. Scratch súborové systémy sú optimalizované na vysokú
I/O priepustnosť a sú určené na ukladanie dát počas behu úloh.
Veľké simulačné výstupy, prechodné súbory a checkpointy by sa mali zapisovať na scratch úložisko, nie do domovských adresárov.
Po dokončení úlohy by sa dôležité výsledky mali presunúť z
/scratch do /project alebo na iné dlhodobé úložisko.
Vyhnite sa ukladaniu veľkých dát do domovských adresárov¶
Domovské adresáre sú zvyčajne optimalizované na prácu s malými
súbormi. Ukladanie veľkých datasetov alebo simulačných výstupov do
/home môže negatívne ovplyvniť celkový výkon súborového systému.
Použitie adresára /home
Domovské adresáre nie sú určené na veľké simulačné
výstupy. Ukladanie veľkých datasetov do /home môže
ovplyvniť zálohovacie systémy a znížiť výkon pre iných
používateľov.
Namiesto toho používajte /project alebo /scratch na veľké
dáta.
Pravidelne čistite dočasné dáta¶
Scratch úložisko je určené len na dočasné súbory vytvorené počas behu úloh.
Použitie adresára /scratch
Súbory uložené v /scratch môžu byť periodicky čistené
alebo automaticky odstránené. Dôležité výsledky by sa
vždy mali preniesť na perzistentného úložisko.
Používatelia by mali pravidelne odstraňovať nepotrebné súbory, aby uvoľnili miesto pre iných používateľov.
Obmedzte počet malých súborov¶
Paralelné súborové systémy sú optimalizované na prácu s veľkými súbormi a vysokú priepustnosť. Pracovné postupy, ktoré generujú milióny malých súborov, môžu výrazne znížiť výkon súborového systému.
Malé súbory
Vytváranie veľmi veľkého počtu malých súborov vytvára veľké zaťaženie metadátových serverov súborového systému a môže spomaliť vaše úlohy aj systém pre iných používateľov.
Ak je to možné:
- kombinujte súbory do archívov (
tar) - ukladajte výsledky do väčších agregovaných súborov
- vyhnite sa veľmi hlbokým adresárovým hierarchiám s veľkým počtom položiek
Príklad:
tar czf results.tar.gz results_directory/
Viac informácií nájdete v sekcii Práca s veľkým počtom súborov.
Spúšťajte I/O náročné úlohy na scratch úložisku¶
Aplikácie, ktoré vykonávajú náročné vstupné/výstupné operácie, by mali čítať a zapisovať dáta zo scratch úložiska, ak je to možné.
I/O náročné operácie
Spúšťanie I/O náročných úloh na /scratch môže výrazne
zlepšiť výkon v porovnaní s perzistentnými súborovými systémami.
Scratch súborové systémy zvyčajne poskytujú vyššiu priepustnosť a sú navrhnuté na prácu s dočasnými dátami úloh.
Prenášajte dáta efektívne¶
Pre veľké datasety používajte nástroje určené na efektívny prenos dát, ako sú:
rsyncscpsftp
Efektívnosť rsync
rsync je zvyčajne efektívnou možnosťou na prenos
veľkých adresárových stromov, pretože prenáša iba zmenené
súbory a dokáže pokračovať v prerušených prenosoch.
Príklad:
rsync -avh data/ <username>@login.<cluster>.sav.sk:/project/<project_id>/data/
Usporiadajte svoje dáta¶
Udržiavanie usporiadaných súborov uľahčuje správu dát a pomáha predchádzať prekročeniu kvót.
Odporúčané postupy zahŕňajú:
- oddeľovanie vstupných dát, výstupov a skriptov
- archiváciu dokončených simulácií
- pravidelnú kontrolu využitia disku
Užitočný príkaz:
du -sh *
slúži na zobrazenie veľkostí adresárov.
Sledujte využitie disku¶
Používatelia by mali pravidelne sledovať veľkosť svojich súborov, aby sa vyhli prekročeniu limitov kvót.
Príklad:
quota -s
alebo
du -sh /project/<project_id>/
Vyčerpanie miesta
Úlohy môžu zlyhať, ak sa prekročia kvóty súborového systému alebo ak sa na súborovom systéme vyčerpá dostupné miesto.
Sledovanie využitia pomáha predchádzať zlyhávaniu úloh spôsobenému nedostatkom miesta na disku.
Chráňte dôležité dáta¶
Hoci niektoré súborové systémy môžu byť zálohované, používatelia by mali vždy, ak je to možné, udržiavať kópie dôležitých dát mimo HPC systému.
Zálohovacia politika
HPC systémy nie sú určené ako dlhodobé archivácie dát. Používatelia sú zodpovední za udržiavanie externých záloh.
Kľúčové výskumné dáta by sa mali archivovať v dlhodobých súborových systémoch alebo inštitucionálnych repozitároch.