독서/서평

[구글 빅쿼리] 빅쿼리에 대해 입문할 수 있는 책

Dibrary 2022. 10. 24. 09:50
반응형

데이터 직무의 자격요건 혹은 기술스택을 보면 어지간해서는 꼭 빅쿼리가 있었다. 처음에는 AWS Athena처럼 클라우드에서 쿼리문 날려서 결과를 받아보는 것이지 않나 하는 생각이었지만, 그래도 기술스택에 '명시'가 되어 있기에 간단하게 봐 두자는 생각으로 이 책을 집었다.

 


우선 책이 매우 얇다. 250페이지 정도. 그렇기 때문에 약간 클라우드를 안써본 사람이라면 조금 버벅댈 부분이 몇 군데 있다.

처음에 빅쿼리 콘솔 화면을 보여준 후에 곧바로 데이터를 넣고, 꺼내고, 쿼리 작성 등을 해 나간다.

빅쿼리에서 사용하는 SQL문은 여느 DB의 SQL문하고 크게 다르지 않다.
물론, 빅쿼리에서만 쓸 수 있는 ARRAY나 STRUCT 등의 다른 점은 있다.

책을 따라 데이터를 로딩시키려고 하다 보면 안 될 것이다. 그래서 나는 뷰를 테이블처럼 생성하는 방법으로 진행해 나갔다. 물론, 생성만 다르게 한 것 뿐이지 책에 나온 기능을 확인해 보는 것은 가능하다.

 


간단하게 쿼리를 사용하는 방법을 익힌 후에 빅쿼리의 '구조'에 대해 설명한다.

빅쿼리는 'Dremel 쿼리 엔진'과 Colossus File System을 조합해서 엄청 큰 데이터를 최대한 빠른 시간에 찾을 수 있게 만들었다.

그리고 쿼리를 날릴 때, 쿼리로 처리된 데이터의 합계 용량으로 비용이 결정되므로, 이 비용을 최소화 할 수 있게 '쿼리 튜닝'하는 방법도 간략하게 나와있다. 물론, 이 책은 워낙 간단한 입문서 수준이므로 '쿼리 튜닝'은 좀 더 깊게 공부할 필요가 있다.

그리고 마지막에는 빅쿼리를 '사용할 수 있는 환경'을 만드는 방법이 나온다. 즉, 데이터 플랫폼을 GCP로 어떻게 만드는지를 소개한다. 

여느 클라우드처럼 GCP도 데이터 수집, 스케줄러 등 여러 기능들이 있다. Pub/Sub, Composer, Dataflow 등 여러 기능들을 간략히 소개하고, 이 기능들을 '어떤 순서'로 배치해서 빅쿼리로 원하는 결과를 얻게 하는지 설계 방법이 나와있다.

 


이 책은 기존에 "빅쿼리라고 해 봐야 기존에 사용하던 MySQL 혹은 MariaDB의 쿼리와 많이 다를까?" 라는 생각을 꽤나 바꿔준 책이다.

애초에 내가 클라우드에 대해 알고, 사용하던 것이 너무 협소한 수준의 '개념'이었다는 것을 알게 되었다.

또한, 각 클라우드별로 장단점이 있고, 필요한 것만을 뽑아서 엮어 사용하는 능력도 중요하다는 것을 깨달았다.

 

빅쿼리를 공부해보고 싶긴 하지만, 클라우드에 대해 깊게 알지 못한다면 이 책으로 기본적인 '개괄'을 잡고 더 심화된 책들을 읽어나가면 좋을 듯 싶다.

말 그대로 좋은 입문서다.

728x90
반응형