daehy***
2022-08-28

SQL을 사용해 데이터 분석 실무에 가장 많이 활용되는 시계열 분석, 코호트 분석, 리텐션 분석 등을 익히는 책. 웹사이트에 공개된 실제 데이터셋을 사용해 실전에 가까운 분석을 실습해본다.
SQL로 시작하는 데이터 분석 (SQL for Data Analysis)
SQL 및 데이터베이스 공부를 해야겠다고 처음으로 생각한 것이 약 3년 전이다. 3년 전에 처음으로 SQL을 공부하려고 알아봤을 때 가장 어려웠던 점은 바로 SQL 종류가 많아도 너무 많다는 것이다. MySQL, NoSQL, PostgresSQL, Oracle 등등 그 종류가 정말 많기 때문에 공부를 시작하고자 하는 사람에게는 무엇으로 시작해야하는지부터 큰 어려움이다. 나의 경우에도 3년 전에 처음으로 SQL에 관심을 가진 이후로 몇 번 정도 공부하고자 마음을 먹었으나, 매번 SQL을 고르는 문턱을 넘지 못했다. 그러다가 이번에 “SQL로 시작하는 데이터분석 (SQL for Data Analysis)”를 통해 드디어 SQL에 입문하게 되었다. 하지만 결론부터 이야기하자면, 이 책은 나처럼 SQL에 관한 경험이 한 번도 없는 사람에게는 적절하지 않으며, 기존에 SQL 지식과 경험이 있는 사람이 SQL을 활용하여 데이터 분석을 공부하고자 할 때 적합한 책이라고 생각한다. 이에 대해서는 마지막 부분에 다시 정리하며, 책에 대한 소개를 먼저 하겠다.
이 책의 구성은 다음과 같다.
1. SQL을 활용한 분석
2. 데이터 준비
3. 시계열 분석
4. 코호트 분석
5. 텍스트 분석
6. 이상 탐지
7. 실험 분석
8. 복잡한 데이터셋 생성
9. 결론
처음 1-2장은 간단히 SQL에 대한 설명과 data type 및 기본적인 함수를 소개한다. 3장부터 7장까지는 각 자료 타입에 대한 데이터 분석을 다루었으며, SQL의 특징을 강조하여 타 문법 (Python, R 등)과 비교했을 때의 장단점 또한 소개한다. 8장에서는 보안 및 확장 등을 고려하여 복잡한 데이터셋 생성에 대해 간단히 소개하며, 9장에서는 퍼널 분석, 이탈 분석, 장바구니 분석을 간단한 예시와 함께 소개하며 책을 마무리한다. 개인적으로 재밌게 읽었던 부분은 4장 코호트 분석 및 6장 이상 탐지였다. 사실 3-7장에서 소개한 데이터 분석은 SQL뿐만 아니라 일반적인 데이터 분석에도 모두 적용되는 이야기라, SQL을 잘 모르는 사람도 분석하는 생각 및 주의점을 익히기 좋다고 생각한다. 코호트 분석은 내가 지금까지 상세하게 접하지 못한 분야라서 흥미로웠으며, 이상 탐지도 사례별로 자세한 설명이 도움이 되었다.
개인적으로 아쉬웠던 점은 다음과 같다. 먼저 본격적으로 SQL을 활용하여 데이터 분석을 해보지 않은 입장에서는, 굳이 SQL을 사용하지 않고 Python을 사용하면 될텐데 왜 SQL을 사용해야 하는지에 대한 이유가 잘 드러나지 않았다. 사실 이는 내가 SQL 경험이 없는 초보자이기 때문이라 생각하며, SQL을 이미 잘 사용하는 사람들은 SQL을 사용하는 충분한 이유를 가지고 있을 것이라 생각한다. SQL 자체에서는 그림도 그릴 수 없으며, 책에서 제공하는 그래프는 모두 별도로 그린 것이다. 또한 고급 통계 및 머신러닝을 사용하려면 결국 외부 언어와의 연계가 필수적으로 보이는데, 그럼으도 불구하고 왜 SQL을 사용해야 하는지 책을 읽는 내내 궁금했다. 이를 위해서 SQL을 활용한 데이터베이스 관리에 대한 효율성과 이를 통한 데이터 분석의 시너지를 조금 더 부각시켰다면 SQL을 처음으로 접하는 독자에게도 더 큰 흥미를 제공했을 것이라 생각한다.
"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."