구글 프로페셔널 클라우드 아키텍트 자격증 대비 교육자료 (1편) [Google Professional Cloud Architect]
구글 클라우드 자격증 중 하나인 Google Cloud Certified - Professional Cloud Architect 를 취득하였습니다. 공부 자료가 많지 않고 전부 영어로 되어 있어서 클라우드 아키텍트 자격증을 준비하시는 분들께 조금이라도 도움을 드리고자 준비해보았습니다.
관련 내용 :
<문제예시>
- MountKirk Games needs to set up their game backend database. Based on their requirements, which storage service best fits their needs?
A. Cloud SQL
B. Cloud Dataflow
C. Host database on a Compute Engine NoSQL instance
D. Cloud Datastore
위와 같은 형식으로 50문제가 나옵니다. 3개의 케이스 스터디 문제에서 7문제 정도 나왔습니다. 예전에 응시하신 분들은 문제의 20~30% 정도가 케이스 스터디에서 나왔다고 합니다. 시험보실 때 케이스 스터디 내용은 쉽게 조회 가능합니다. 문제를 풀다가 애매한 경우 문제 밑에 Mark for review 같은 체크박스를 클릭하면 나중에 Review all 버튼을 눌러 쉽게 다시 보실 수 있습니다.
위 문제의 정답은 D입니다. MountKirk Games의 게임 백엔드의 요구사항(requirements)를 보시면 game activity에 따라 dynamically 하게 scale up or down 해야 하고, game activity를 timeseries 데이터베이스에 저장해서 나중에 분석할 때 사용해야 합니다. 그리고 transactional 데이터베이스를 사용하여 user profiles와 game state를 관리해야 합니다.
* game state 와 game activity는 다릅니다. 혼동하지 마세요.
구글 데이터베이스 중 Datastore는 NoSQL 데이터베이스입니다. scalable (확장 가능), fully managed (구글에서 다 관리해줌) 시험에서 user profiles, product catalogs, game state 를 저장할 곳을 물어보면 무조건 Datastore 고르시면 됩니다. NoSQL DB는 key-value 쌍으로 데이터를 저장합니다. Cloud SQL은 relational 한 RDBMS입니다. user profiles와 game state을 저장하기에 적합하지 않습니다. Dataflow는 storage(저장소)가 아닙니다. Compute Engine에 데이터베이스를 운영해서 사용하면 요구사항에 나온 scale(확장)을 해결할 수 없습니다.
요구사항의 내용 중 game activity 데이터를 timeseries 데이터베이스에 저장해서 분석에 사용해야 한다고 나옵니다. 이때는 빅쿼리(BigQuery)에 저장하면 됩니다. 헷갈릴 수 있는 부분은 timeseries(시계열)란 단어입니다. 보통 다른 문제에서 timeseries란 키워드가 나오면 Bigtable이 정답입니다. 하지만 game activity를 저장해야 하기 때문에 BigQuery가 정답입니다. Bigtable은 low latency, high throughput 이라서 많이 비쌉니다. BigQuery는 Bigtable보다 cost-effective 합니다.
쉽게 아래와 같이 외우시면 됩니다.
trasactional data ----> DataStore
time series data ----> Bigtable
historical data ----> BigQuery
user profiles, game state, product catalogs -----> DataStore
game activity -----> BigQuery
위의 내용을 잘 외우셨다면 아래 문제를 바로 푸실 수 있습니다.
- Based on MountKirk Games' technical requirements, what GCP services will they use for the backend data services?
A. Cloud Datastore for transactional data, Bigtable for time series data and BigQuery for historical data
B. Cloud Datastore for transactional data, BigQuery for time series data and Bigtable for historical data
C. Cloud SQL for transactional data, BigQuery for time series data and Bigtable for historical data
D. Cloud SQL for transactional data, Bigtable for time series data and historical data
백엔드 데이터 서비스로 GCP 서비스 어떤 걸 쓸래? 라는 문제에 대한 정답은 A 입니다.
- Based on MountKirk Games' technical requirements, which GCP services/infrastructure can help achieve the requirement of storing the game activity data in a time series database service for future analysis?
A. Bigtable
B. Cloud Dataflow
C. Cloud Spanner
D. BigQuery
요구사항에 따라 나중에 분석하기 위해 game activity 데이터를 저장할 time series 데이터베이스가 필요한데 뭘 쓸까? 라는 문제입니다. 정답은 바로 빅쿼리입니다. 바로 전 문제에서는 time series 데이터는 Bigtable이 정답이였지만 이번엔 아닙니다. 이번 문제 키워드는 game activity입니다. 꼭 기억하세요!!!
*** 빅쿼리(Bigquery)는 serverless, fully managed data warehouse 입니다. NoSQL 데이터베이스와 비슷한 특성이 있지만 NoSQL 이 아닙니다. SQL 쿼리를 사용합니다. (데이터웨어하우스)
빅테이블(Bigtable)은 fully managed, massively scalable NoSQL 데이터베이스 서비스입니다.
Comments
Post a Comment