Кэш DVC и промежуточное хранение файлов

Введение в версионирование данных с DVC

Ravi Bhadauria

Machine Learning Engineer

Кэш DVC

  • Скрытое хранилище для отслеживаемых файлов данных и их версий
  • Промежуточно хранит файлы до фиксации изменений
    • Рекомендуется для больших наборов данных и бинарных файлов
  • Находится в директории .dvc рабочего пространства
    • Настройка расположения
      $ dvc cache dir ~/mycache
      

Структура DVC внутри рабочего пространства

Введение в версионирование данных с DVC

Добавление файлов в кэш

  • Добавление файлов данных в 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
Введение в версионирование данных с DVC

Файлы .dvc

  • Каждому файлу, отслеживаемому DVC, соответствует файл .dvc

    • data.csv -> data.csv.dvc
  • Для версионирования файла данных используйте git commit -m "data.csv.dvc"

  • Содержимое файлов .dvc

outs:

- md5: f38a850818377e97155d22755caa39d0
size: 16
hash: md5
path: data.csv
Введение в версионирование данных с DVC

Работа с кэшем DVC

  • Путь к файлу в кэше формируется на основе значения MD5
$ find .dvc/cache -type f
.dvc/cache/f3/8a850818377e97155d22755caa39d0
  • Вычисление MD5 для набора данных
$ md5 data.csv
MD5 (data.csv) = f38a850818377e97155d22755caa39d0
Введение в версионирование данных с DVC

Работа с кэшем DVC

  • Используйте dvc add -v для подробного вывода

Вывод команды dvc add с флагом -v

Введение в версионирование данных с DVC

Удаление файлов и очистка кэша

  • Удаление добавленных файлов с помощью dvc remove
$ dvc remove data.csv.dvc
  • Для очистки кэша используйте dvc gc
    • Флаг -w удаляет кэш рабочего пространства
$ 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.
Введение в версионирование данных с DVC

Итоги

  • Кэш DVC промежуточно хранит файлы данных до фиксации
  • Настройка расположения кэша
    • dvc cache dir ~/mycache
  • Добавление файлов в кэш
    • dvc add data.csv
    • Создаёт файл .dvc с метаданными
  • Удаление файлов: dvc remove data.csv.dvc
    • Очистка кэша рабочего пространства: dvc gc -w
Введение в версионирование данных с DVC

Давайте потренируемся!

Введение в версионирование данных с DVC

Preparing Video For Download...