Machine Learning

dvc 를 이용해서 데이터 버전 관리하기 (ft. mlops)

jinmc 2022. 4. 14. 13:09
반응형

DVC란, Data Version Control로, Git과 유사하지만 데이터를 관리하는 툴을 말합니다.

 

관련 웹사이트 : https://dvc.org/doc/start

 

AWS S3, GCP Cloud Storage 등 데이터를 파일 스토리지에 올린 후 다운 받을 수도 있고,

올릴 수 도 있습니다.

 

커맨드는 Git 과 비슷합니다. 

기본적인 커맨드에 대해서 좀 알아보도록 하겠습니다.

일단 기본적으로 Git Repository 내에서 dvc 커맨드를 입력합니다. 

$ dvc init

그 이후 dvc를 git에 저장합니다.

$ git status
Changes to be committed:
        new file:   .dvc/.gitignore
        new file:   .dvc/config
        ...
$ git commit -m "Initialize DVC"

dvc 에 데이터를 저장합니다.

$ dvc add data/data.xml

이럼 dvc 파일이 생기게 됩니다.

git에는 dvc 파일을 저장하고, 실제 데이터는 .gitignore에 저장하게 됩니다.

정확히는, dvc add 커맨드가 .gitignore에 저장하게 됩니다.

 

dvc 파일은 data/data.xml.dvc의 형태로 저장되며, 

이를 git에다 저장하고 commit함과 동시에 git 저장소에 push합니다.

 

$ git add data/data.xml.dvc data/.gitignore
$ git commit -m "Add raw data"

dvc remote 를 통해 s3 버킷 등에 올릴 수도 있습니다.

 

데이터 버전을 불러오려면, 먼저 git을 이용해 버전을 불러온 후 

dvc를 이용해 데이터를 불러옵니다.

 

$ git checkout <...>
$ dvc checkout
반응형