aws/sagemaker-spark

A Spark library for Amazon SageMaker.

해결하는 문제

SageMaker Spark는 사용자가 Amazon SageMaker의 머신러닝 기능을 Apache Spark ML 파이프라인에 직접 통합할 수 있도록 합니다. Spark에서의 대규모 데이터 처리와 SageMaker의 관리형 트레이닝 및 호스팅 인프라 사이의 격차를 해소하여, Spark DataFrame에서 대규모로 모델을 훈련하고 추론할 수 있도록 합니다.

작동 방식

이 라이브러리는 표준 Spark ML Pipeline API에 통합할 수 있는 SageMakerEstimatorSageMakerModel 클래스를 제공합니다.

  1. 훈련: Spark DataFrame에서 fit()을 호출하면, 라이브러리는 데이터를 직렬화하고 S3에 업로드한 후, Amazon에서 제공하는 알고리즘(예: XGBoost 또는 K-Means) 또는 Docker 컨테이너 내의 사용자 정의 알고리즘을 사용하여 SageMaker 트레이닝 작업을 트리거합니다.
  2. 호스팅: 훈련이 완료되면 자동으로 SageMaker 엔드포인트를 생성하여 모델을 호스팅합니다.
  3. 추론: transform()을 호출하면, 라이브러리는 Spark DataFrame의 청크를 직렬화하고 InvokeEndpoint API를 통해 SageMaker 엔드포인트로 전송한 후, 예측 결과를 DataFrame에 추가합니다.

대상 사용자

데이터 준비에 Apache Spark를 사용하고, Spark 생태계를 벗어나지 않고도 Amazon SageMaker를 활용하여 확장 가능한 모델 훈련과 배포를 원하는 데이터 엔지니어 및 ML 전문가.

주요 특징

  • Spark 파이프라인 통합: 네이티브 Spark ML 스테이지와 SageMaker 트레이닝 및 호스팅 스테이지를 혼합 사용 가능.
  • 유연한 알고리즘 지원: SageMaker 내장 알고리즘 또는 사용자 정의 Docker 기반 알고리즘 모두 지원.
  • SBOM 지원: Scala 및 Python(PySpark 경유) 모두 지원.
  • 확장 가능한 추론: 호스팅된 SageMaker 엔드포인트와 상호작용하여 Spark DataFrame에서 예측을 수행.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • Dispatch