AWS/AWS 정보

AWS SageMaker Notebook 사용 이점

chamu 2022. 6. 2. 14:02

1. 개발시간(업무시간)만 사용 
- 24시간 비용을 내야하는 개발서버 대신, 사용시간에만 비용지불하는 sagemaker 인스턴스 활용 
  AI 개발 특성상 큰 리소스가 필요하므로, 비용적인 측면에서 개발서버보다 sagemaker가 우세 

2. 빠른 개발환경 구축 가능 
- R, Python, spark 등의 여러 환경을 aws에서 구축하여 제공하기 때문에 초기 개발환경 구축시간 및 구축인력 단축 가능 
- 단기 poc task가 많아 개발자의 in/out이 잦은데, 그때마다 새롭게 개발환경을 구성할 필요 없이 notebook instance를 신규 생성하면 끝. 
  이를통해 인력 투입이 빠르게 가능해짐

3. scale in/out의 편의성  
- 개발서버의 경우 자원 증설 및 단축시 downtime 발생하여, 자원 증설과 감소가 쉽지 않음.
  sagemaker notebook의 경우 자원 증감이 간단하므로, 큰 리소스가 필요할때 잠시 성능 확장 후 작업 종료후에 단축할 수 있음. 

4. 독립적인 개발환경 갖음 
- 개발서버의 경우 동일 개발환경을 공유하게 되나, sagemaker notebook의 경우 사용자 별로 자원을 독립적으로 사용하여 
  모델 개발자, 분석자간의 다른 사양으로 작업이 가능해진다. 이런 점들로 인하여 비용 낭비가 적어짐. 

5. 다양한 언어 활용 가능 
- R, Python, spark 등 사용언어에 구애받지 않으며, 언어만 바꿔주어 동일한 jupyter 인터페이스를 통하여 사용 가능

6. sagemaker lifecycle 구성을 통한 사용자별 환경 구축 
- lifecycle구성을 통해 efs(nas 서버) mount하여 사용중이다. sagemaker notebook의 경우 개발자 간 독립적으로 사용하기 떄문에, 
  여러 개발자가 전처리된 데이터, 모델등을 efs를 통해 공유하고 있음. 
        - lifecycle 템플릿을 구성하여 각 사용자별로 초기환경을 다르게 가져가고 있음. (환경변수 R, Python 개발자의 초기 개발환경을 다르게 구성)  

 

7. AWS SageMaker 서비스와 연동 편리
- 학습, 예측, 배포 등 SageMaker의 다른 서비스와 연동이 편리하다. 

- Notebook 환경에서 해당 서비스들을 테스트 할 수 있다.