[Cloud Skills Boost] Developing Applications on Google Cloud - Best Practices for Using Datastore ⑤
<Demo: Use Cloud Dataflow to bulk-load data into Cloud Datastore >
Use Dataflow to Bulk-load Data into Datastore
Dataflow를 사용하여 Datastore에 데이터 대량 로드
app-dev-demos App Engine 생성
Apache 빔 애플리케이션을 실행하도록 구성할 컴퓨팅 엔진 가상 머신을 생성
SSH를 이용해 소프트웨어 업데이트 및 설치
Apache Beam 설치 및 작동 확인을 위해 파일의 단어 수를 계산 테스트 실행
Apache Beam 파이프라인을 실행해 데이터를 Cloud Storage에서 Google Cloud Datastore로 이동
우리가 가져온 데모 코드가 있는 폴더로 이동Datastore에 업로드할 데이터가 포함된 csv 파일을 살펴봄csv 파일 : Presidenthttps://github.com/GoogleCloudPlatform/training-data-analyst/blob/master/courses/developingapps/demos/gs2ds/gs2ds.pyApache Beam 파이프라인 코드1) csv 파일을 만들고 업로드할 Cloud Storage Bucket에서 읽어옴 (17번째 줄) 2) csv 파일에 있는 각 엔티티에 대해 파일을 파싱 (18번째 줄~) 3) 각 데이터 줄에서 Google Cloud Datastore 엔티티를 만든 다음, 마지막 줄에 해당 데이터를 Datastore에 씀 (35번째 줄~)
버킷을 만든 후, csv 파일을 Cloud Storage 버킷에 복사gs2ds.py Python 프로그램 코드 수정프로젝트 이름과 Cloud Storage 버킷 이름 변경프로그램 실행
프로그램이 제대로 작동했는지 알아보기 위해 Google Cloud Datastore 관리 콘솔로 이동해 확인
44명의 President 확인 가능→ 즉, Cloud Storage 버킷에 csv 파일과 Apache Beam 파이프라인 코드 (gs2ds.py) 를 복사한 후, 프로그램을 실행하면 프로그램 코드가 실행되어 코드로 인해 Datastore에 csv 파일 데이터를 저장하도록 한 것