자습서: 개발 엔드포인트와 SageMaker 노트북 함께 사용
AWS Glue에서는 개발 엔드포인트를 생성하고 SageMaker 노트북을 생성하여 ETL과 기계 학습 스크립트 개발에 도움을 얻을 수 있습니다. SageMaker 노트북은 Jupyter Notebook 애플리케이션을 실행하는 완전 관리형 기계 학습 컴퓨팅 인스턴스입니다.
-
AWS Glue 콘솔에서 Dev endpoints(개발 엔드포인트)를 선택하여 개발 엔드포인트 목록을 탐색합니다.
-
사용할 개발 엔드포인트의 이름 옆에 있는 확인란을 선택하고 작업 메뉴에서 SageMaker 노트북 생성을 선택합니다.
-
다음과 같이 노트북 생성 및 구성 페이지를 작성합니다.
-
노트북 이름을 입력합니다.
-
개발 엔드포인트에 연결에서 개발 엔드포인트를 확인합니다.
-
AWS Identity and Access Management(IAM) 역할을 생성하거나 선택합니다.
역할을 생성하는 것이 좋습니다. 기존 역할을 사용하는 경우 필요한 권한이 있는지 확인합니다. 자세한 내용은 6단계: SageMaker 노트북용 IAM 정책 생성 단원을 참조하십시오.
-
(선택 사항) VPC, 서브넷 및 하나 이상의 보안 그룹을 선택합니다.
-
(선택 사항) AWS Key Management Service 암호화 키를 선택합니다.
-
(선택 사항) 노트북 인스턴스에 대한 태그를 추가합니다.
-
-
노트북 생성을 선택합니다. 노트북 페이지의 오른쪽 상단에 있는 새로 고침 아이콘을 선택하고 상태가
Ready
로 표시될 때까지 계속합니다. -
새 노트북 이름 옆의 확인란을 선택한 다음 노트북 열기를 선택합니다.
-
새 노트북 생성: jupyter 페이지에서 신규를 선택한 다음 Sparkmagic (PySpark)을 선택합니다.
이제 화면이 다음과 같이 보여야 합니다.
-
(선택 사항) 페이지 상단에서 Untitled를 선택하고 노트북에 이름을 지정합니다.
-
Spark 애플리케이션을 시작하려면 노트북에 다음 명령을 입력한 다음 도구 모음에서 실행을 선택합니다.
spark
잠시 후 다음과 같은 응답이 표시됩니다.
-
동적 프레임을 생성하고 쿼리를 실행합니다. 복사, 붙여넣기 및
persons_json
테이블의 개수 및 스키마를 출력하는 다음 코드를 실행합니다.import sys from pyspark.context import SparkContext from awsglue.context import GlueContext from awsglue.transforms import * glueContext = GlueContext(SparkContext.getOrCreate()) persons_DyF = glueContext.create_dynamic_frame.from_catalog(database="legislators", table_name="persons_json") print ("Count: ", persons_DyF.count()) persons_DyF.printSchema()