2022.06.19.
AWS에서 분석 플랫폼 구축 실습 Part 3
(Glue Dev Endpoint, Jupyter Notebook)
Part 3 실습 목표
- 실습 목표
- Glue ETL을 사용하여 data를 처리하고 다시 S3에 저장
- Glue 개발 Endpoint와 Sagemaker Notebook을 사용하여 data 변환 단계를 진행
Create 'Glue Dev Endpoint'
- 목표
- PySpark를 사용하여 Glue ETL script를 대화식으로 개발하기 위해 Glue Dev Endpoint를 생성
- Create 'Glue Dev Endpoint'
- 'Glue' console로 이동 => 왼쪽 패널에서 'Dev endpoints' 클릭 => '엔드포인트 추가' 클릭
- '개발 엔드포인트 이름'에 'analyticsworkshopEndpoint1' 입력
- 'IAM' 역할에 'AnalyticsworkshopGlueRole' 선택
- '보안 구성'에서 '데이터 처리 단위(DPU)'에 '2' 입력 (기본은 5임. 2로 하면 비용이 절감됨)
- '태그'에서 '태그 키'에 'workshop' 입력, '태그 값'에 'AnalyticsOnAWS' 입력
- '다음' 클릭
- '네트워킹'에서 '네트워킹 정보 건너뛰기' 선택 => '다음'클릭
- 'SSH 퍼블릭 키 추가'에서 그대로 두기 => '다음' 클릭
- 새로운 Glue Dev Endpoint가 가동되는데 약 6-10분 정도 걸림. state가 'PROVISIONING'에서 'READY'로 변경될 때까지 기다려야 함.
Create 'Glue Dev Endpoint용 SageMaker Notebook (Jupyter)'
- Create 'Glue Dev Endpoint용 SageMaker Notebook (Jupyter)'
- 'Glue' console로 이동 => 왼쪽 패널에서 'Notebooks' 클릭 => 'SageMaker 노트북' 탭에서 '노트북 생성' 클릭
- '노트북 이름'에 'AnalyticsworkshopNotebook' 입력
- '개발 엔드포인트에 연결'에 'analyticsworkshopEndpoint1' 선택
- 'IAM 역할 생성' 선택 => 'IAM 역할'에 'Workshop' 입력
- 'VPC'와 '암호화 키'는 빈 값으로 남김
- '태그'에서 '키'에 'workshop' 입력, '값'에 'AnalyticsOnAWS' 입력
- '노트북 생성' 클릭
- 노트북이 생성되는 데 약 4-5분 정도 걸림. state가 '시작하는 중'에서 '준비'로 변경될 때까지 기다려야 함.
'Jupyter Notebook' 실행
- Create 'Glue Dev Endpoint용 SageMaker Notebook (Jupyter)'
- 아래의 'analytics-workshop-notebook' file을 local에 download
- 'Glue' console로 이동 => 왼쪽 패널에서 'Notebooks' 클릭 => 방금 만든 'aws-glue-AnalyticsworkshopNotebook' 클릭 => '열기' 클릭 => 새 tab으로 Jupyter notebook이 뜸
- 오른쪽 상단의 'Upload' 클릭 => 방금 download한 'analytics-workshop-notebook.ipynb' file을 선택 => 'Upload' 클릭
- 'analytics-workshop-notebook.ipynb'을 클릭해서 notebook 열기 => 오른쪽 상단에 'Sparkmagic (PySpark)'이라고 표시되어 있는지 확인함 (Jupyter가 이 notebook에서 code block을 실행하는 데 사용할 kernel의 이름)
참고: AWS Analytics on AWS (https://catalog.us-east-1.prod.workshops.aws/workshops/44c91c21-a6a4-4b56-bd95-56bd443aa449/ko-KR)
이 워크샵을 추천해주시고 항상 많은 도움을 주시는 정도현 선배님께 감사합니다.