4P by xguru 2019-12-05 | favorite | 댓글 2개

로컬에서 빠르게 개발한뒤, 클라우드에서 대규모로 실행하려고 할때 코드 변경없이 실행하게 해주는 Infrastructure 스택. 노트북으로 작업하던 코드/데이터/디펜던시 등을 스냅샷으로 만들고 S3 또는 파일시스템에 저장해서 워크 플로우를 resume 하거나, 지난 결과를 reproduce 하는 등의 작업이 가능하게 해줍니다.

왜 MetaFlow인지는 그림으로 설명한 https://docs.metaflow.org/introduction/why-metaflow 를 참고하시면 됩니다.

Netflix 와 AWS가 같이 개발을 해서, 깊게 연동되어 있습니다.

Local 에선 하드에 저장하고 노트북 설치해서 빠르고 편하게 개발하다가,
AWS에 올리면 아래 서비스들을 이용해서 대용량으로 실행해볼수 있게 됩니다.

Metadata - RDS 또는 Metaflow Metadata Service https://github.com/Netflix/metaflow-service
Datastore - AWS S3
Compute - AWS Batch https://aws.amazon.com/batch/
Notebook - Sagemaker Notebook https://aws.amazon.com/sagemaker/
Scheduling - Step Functions https://aws.amazon.com/step-functions/
Large-Scale ML - Sagemaker Models https://aws.amazon.com/sagemaker/

실제 머신러닝/데이터 사이언스 라이브러리는 PyTorch , Tensorflow , Scikit-Learn 뭘 쓰던 상관없이 다 연동 가능합니다.