Cache DVC e file in staging

Introduzione al versionamento dei dati con DVC

Ravi Bhadauria

Machine Learning Engineer

Cache DVC

  • Archivio nascosto per file e versioni tracciati
  • Mette in staging file temporanei fino al commit
    • Meglio aggiungere dataset grandi e file binari
  • Si trova nella directory .dvc della workspace
    • Configura la posizione
      $ dvc cache dir ~/mycache
      

Struttura DVC dentro la workspace

Introduzione al versionamento dei dati con DVC

Aggiungere file alla cache

  • Aggiungi i file dati a dvc
$ dvc add data.csv
100% Adding...|====================|1/1 [00:00, 53.55file/s]

To track the changes with git, run:
    git add data.csv.dvc
To enable auto staging, run:
    dvc config core.autostage true
Introduzione al versionamento dei dati con DVC

File .dvc

  • Ogni file tracciato da DVC ha il relativo file .dvc

    • data.csv -> data.csv.dvc
  • Per versionare il file dati, usa git commit -m "data.csv.dvc"

  • Contenuto dei file .dvc

outs:

- md5: f38a850818377e97155d22755caa39d0
size: 16
hash: md5
path: data.csv
Introduzione al versionamento dei dati con DVC

Interazione con la cache DVC

  • Il percorso del file in cache usa il valore MD5
$ find .dvc/cache -type f
.dvc/cache/f3/8a850818377e97155d22755caa39d0
  • Calcola l’MD5 del dataset
$ md5 data.csv
MD5 (data.csv) = f38a850818377e97155d22755caa39d0
Introduzione al versionamento dei dati con DVC

Interazione con la cache DVC

  • Usa dvc add -v per output dettagliato

Output del comando dvc add con flag -v

Introduzione al versionamento dei dati con DVC

Rimozione e pulizia della cache

  • Rimuovi i file aggiunti con dvc remove
$ dvc remove data.csv.dvc
  • Per pulire la cache, usa dvc gc
    • Con il flag -w rimuovi la cache della workspace
$ dvc gc -w
WARNING: This will remove all cache except items used in the workspace of the current repo.
Are you sure you want to proceed? [y/n]: y
Removed 1 objects from repo cache.
Introduzione al versionamento dei dati con DVC

Riepilogo

  • La cache DVC mette in staging i file prima del commit
  • Configura la posizione della cache
    • dvc cache dir ~/mycache
  • Aggiungi file alla cache
    • dvc add data.csv
    • Crea un file .dvc con metadati
  • Rimuovi i file aggiunti dvc remove data.csv.dvc
    • Pulisci la cache della workspace con dvc gc -w
Introduzione al versionamento dei dati con DVC

Passiamo alla pratica !

Introduzione al versionamento dei dati con DVC

Preparing Video For Download...