Apache Spark를 사용한 데이터 처리 - 아마존 SageMaker

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Apache Spark를 사용한 데이터 처리

Apache Spark는 대규모 데이터 처리를 위한 통합 분석 엔진으로서, SageMakerAmazon은 분산 데이터 처리 작업을 실행하는 데 필요한 Apache Spark 및 기타 종속 항목이 포함된 사전 빌드된 Docker 이미지를 제공합니다. Amazon SageMaker Python SDK를 사용하면 Spark 프레임워크를 사용하여 데이터 변환을 쉽게 적용하고 기능 (기능 엔지니어링) 을 추출할 수 있습니다. SageMaker Python SDK를 사용하여 Spark 처리 작업을 실행하는 방법에 대한 자세한 내용은 Amazon Python SageMaker SDK에서 Spark를 사용한 데이터 처리를 참조하십시오.

Spark 이미지의 소스 코드와 Dockerfile이 들어 있는 코드 리포지토리는 에서 사용할 수 있습니다. GitHub

Spark 프로세싱 작업 실행

sagemaker.spark.PySparkProcessor 또는 sagemaker.spark.SparkJarProcessor 클래스를 사용하여 프로세싱 작업 내에서 Spark 애플리케이션을 실행할 수 있습니다. 참고: 최대 런타임 제한을 MaxRuntimeInSeconds 5일로 설정할 수 있습니다. 실행 시간 및 사용된 인스턴스 수와 관련하여 단순한 스파크 워크로드는 인스턴스 수와 완료 시간 간의 관계가 거의 선형적으로 나타납니다.

다음 코드 예제는 PySpark 스크립트를 preprocess.py 호출하는 처리 작업을 실행하는 방법을 보여줍니다.

from sagemaker.spark.processing import PySparkProcessor spark_processor = PySparkProcessor( base_job_name="spark-preprocessor", framework_version="2.4", role=role, instance_count=2, instance_type="ml.m5.xlarge", max_runtime_in_seconds=1200, ) spark_processor.run( submit_app="preprocess.py", arguments=['s3_input_bucket', bucket, 's3_input_key_prefix', input_prefix, 's3_output_bucket', bucket, 's3_output_key_prefix', output_prefix] )

자세한 내용은 Apache Spark를 사용한 분산 데이터 처리 및 SageMaker 처리 예제 노트북을 참조하십시오.

Amazon SageMaker Python SDK와 해당 프로세서 클래스 중 하나를 사용하여 사전 빌드된 이미지를 검색하지 않는 경우 이러한 이미지를 직접 검색할 수 있습니다. SageMaker 사전 빌드된 도커 이미지는 아마존 엘라스틱 컨테이너 레지스트리 (Amazon ECR) 에 저장됩니다. 사용 가능한 사전 구축된 Docker 이미지의 전체 목록은 사용 가능한 이미지 문서를 참고하십시오.

프로세싱 컨테이너와 함께 SageMaker Python SDK를 사용하는 방법에 대해 자세히 알아보려면 Amazon SageMaker Python SDK를 참조하십시오.