Search
💿

실제 테크 기업에서 데이터 분석가는 어떤 데이터 환경을 사용할까? (feat. AWS Athena vs. GCP BigQuery)

Created at
2025/02/20
Updated at
2025/02/20
Tags
Keywords
Athena
BigQuery
3 more properties
실제 테크 스타트업에서 데이터분석가 일을 시작하기 전에는 주로 어떤 데이터 분석 환경에서 업무를 하게 되는지 나도 정확히는 알지 못했다. DA를 목표로 취업이나 이직을 준비하는 많은 사람들도 비슷한 고민을 할 거라는 생각이 든다. 채용공고를 보면 SQL을 사용한다고 하니 공부를 하긴 하는데, 현실의 DA들이 어떤 환경에서 업무를 하고 있는지에 대해서는 막연하게 느껴질 수 있다.
이번 글에서는 미리 알아두면 좋은, 테크 기업들의 데이터 분석 인프라와 대표적인 클라우드 기반 분석 도구인 AWS Athena(아테나)와 GCP BigQuery(빅쿼리)에 대해 설명해보려고 한다.

1. 운영DB와 분석DB(aka. 분석계)는 분리되어 있다.

DA 일을 시작해보기 전에는 모를 수 있는 부분 중 하나는 운영DB분석DB는 분리되어 있다는 점이다.
많은 사람들이 서비스를 운영을 위한 데이터가 MySQL, MongoDB 같은 DB에 저장될테고, 그걸 사용해서 DA가 분석하는거 아니야? 라고 생각할 수 있다. 하지만, 현실적으로는 운영DB와 분석DB를 분리하는 것이 일반적이다. 이때, 운영계에 대비되는 개념으로 분석계 데이터라는 용어를 흔히 사용한다.

1.1 운영DB와 분석DB, 왜 분리할까?

서로 목적이 다르다.
운영DB: 서비스의 실시간 트랜잭션을 처리 (예: 유저 로그인, 결제, 주문 등)
분석DB: 복잡한 쿼리와 대량 데이터를 효율적으로 처리해서 분석 및 의사결정 지원
운영DB의 성능 및 안정성을 보호하기 위해
운영계에서 복잡한 대용량 분석 쿼리를 실행하면 과도한 리소스를 사용하고, 성능 저하와 장애 위험이 발생할 수 있음
분석DB는 분석에 최적화된 환경 제공
대용량 데이터 처리 최적화 → 대량 데이터를 빠르게 조회할 수 있도록 설계됨
Tableau, Power BI 같은 BI도구와 쉽게 연동 가능
운영DB와 분리된 환경에서 필요한 만큼만 리소스를 사용해 비용 절감 가능
개인정보 보호를 위해 암호화된 데이터를 제공하거나 민감 데이터를 제외한 데이터셋만 제공 가능

1.2 운영DB에서 분석DB로 데이터 전송

운영DB와 분석DB를 분리하여 운영하기 위해서는, 운영DB의 데이터를 분석 DB로 전송하는 과정이 필요하다. 이는 주로 데이터 엔지니어의 영역으로 다음과 같은 특징을 가진다.
배치(batch) 프로세스
실시간 업데이트가 필요하지 않은 경우, 주기적으로 대량의 데이터를 한번에 처리
hourly, daily, weekly, monthly 등 정해진 주기로 운영DB의 데이터로 분석DB를 업데이트
ETL(Extract, Transform, Load) 과정
추출(Extract): 운영DB에서 필요한 데이터를 추출
변환(Transform): 추출된 데이터를 분석에 적합한 형태로 가공
불필요한 데이터를 제거하거나 형식 통일
개인정보 등 민감한 데이터는 암호화하거나 제외
적재(Load): 변환된 데이터를 분석DB에 저장
리소스 관리
운영DB의 부하를 최소화하기 위해 주로 피크 시간을 피해 실행
분석DB로의 데이터 전송 과정에서 네트워크 대역폭 사용을 고려
오류 처리 및 모니터링
데이터 전송 과정에서 발생할 수 있는 오류를 처리하고 기록
전송 프로세스의 성공 여부와 소요 시간 등을 모니터
이러한 데이터 전송 프로세스를 통해 DA들은 최신의, 정제된 데이터를 분석계 환경에서 사용할 수 있게 된다.

2. 대표적인 클라우드 기반 분석 환경: AWS 아테나(Athena)와 GCP 빅쿼리(BigQuery)

많은 테크 기업과 스타트업에서는 비용 효율성과 관리 편의성을 고려해 분석계에 클라우드 기반 분석 환경을 채택한다. 그중에서도 아테나(Athena)빅쿼리(BigQuery)가 대표적인 선택지이다. 이 서비스 위에 데이터 레이크(Data Lake)를 구성하고, 데이터 마트(Data Mart)도 만들게 되는데, 이 내용은 다음 번에 다시 정리해보자.
DA 채용 공고를 살펴보면 아마도 둘 중에 한 서비스를 사용하는 경우가 대부분일 것이다. 따라서 관심 있는 기업이 사용하는 기술 스택에 맞춰 학습하면 취업이나 이직에도 도움이 될 것이다. 두 서비스 모두 표준 SQL을 사용해 데이터를 쿼리할 수 있기 때문에 큰 어려움 없이 적응할 수는 있다. 아래에서는 두 서비스의 개요와 장단점을 간단히 비교해보겠다.

2.1 Athena란?

Athena(아테나)는 AWS에서 제공하는 서버리스 데이터 쿼리 서비스로, S3에 저장된 데이터를 SQL로 분석할 수 있도록 한다.
아테나의 주요 특징
서버리스: 별도 인프라 관리 없이 SQL로 데이터 조회 가능
S3 데이터를 직접 분석: 데이터 웨어하우스로 적재 없이 S3에서 바로 쿼리를 실행
비용 효율성: 저장 공간 비용이 저렴한 S3를 활용하고, 쿼리 실행 시에만 비용 발생
파티션 기능 지원: 데이터 파티셔닝을 통해 성능을 최적화

2.2 BigQuery란?

BigQuery는 Google Cloud Platform(GCP)에서 제공하는 서버리스 데이터 웨어하우스로, 마찬가지로 대규모 데이터를 빠르게 처리할 수 있도록 설계되었다.
빅쿼리의 주요 특징
서버리스 및 확장성: 인프라 관리 없이 페타바이트 규모의 데이터 처리 가능
대규모 데이터 처리 최적화: 복잡한 조인과 서브쿼리를 포함한 쿼리에 강점
비용 모델 다양성: 온디맨드 방식(사용량 기반 청구)과 예약형 플랜(정액제) 제공
Google 생태계 통합: Looker, Data Studio 등과 강력하게 연동 가능

2.3 AWS 아테나 vs 빅쿼리: 어떤 분석 환경을 선택할까?

아테나와 빅쿼리의 특성 비교

비교 항목
AWS 아테나
GCP 빅쿼리
스토리지
S3 기반
GCS(Google Cloud Storage) 기반
컴퓨팅 방식
쿼리 실행 시 비용 발생 (Pay-per-query)
쿼리 실행 시 비용 발생 (On-demand) or 예약형 (Flat-rate)
쿼리 성능
복잡한 조인과 서브쿼리에 약함
대규모 데이터 처리에 최적화
사용 편의성
S3 데이터 관리 필요
기본적으로 최적화된 데이터 관리
BI 도구 연동
Power BI, Tableau 등과 쉽게 연동 가능
Looker, Data Studio 등과 강력한 통합
비용 관리
저장 비용 낮지만, 비효율적 쿼리 시 비용 급증
대량 쿼리 시 예약형 플랜 활용 가능
아테나는 S3에 저장된 데이터를 직접 쿼리하는 반면, 빅쿼리는 자체적인 컬럼 기반 스토리지와 분산 쿼리 처리 엔진을 사용해 대규모 데이터에 대한 복잡한 쿼리를 더 효율적으로 처리할 수 있다고 한다. Athena에서도 쿼리 최적화는 수행하지만, BigQuery만큼 강력하지는 않을 수 있다고. Athena도 분산처리와 쿼리 최적화를 제공하지만, BigQuery가 더 많은 내부 최적화와 기능을 제공한다고 이해할 수 있을 것 같다.

선택 기준

DA는 직접 인프라를 구축하는 역할을 하지는 않지만, 기업에서 아테나와 빅쿼리를 어떤 기준으로 선택할 수 있는지 정도는 알아두면 좋을 것 같다.
S3를 이미 활용하고 있다면? → AWS 아테나
빠른 분석 성능과 Google 생태계를 원한다면? → 빅쿼리
데이터 엔지니어링 리소스가 적다면? → 빅쿼리가 더 유리

2.4 클라우드 기반 분석 환경을 사용할 때 주의해야할 점

Athena와 BigQuery 모두 편리하지만, 효율적으로 사용하기 위해 몇 가지 주의할 점이 있다. 핵심은 기본적으로 두 서비스 모두 스캔량에 기반해 쿼리 비용이 청구되기 때문에, 쿼리를 효율적으로 사용해야 한다는 것이다.
SELECT * 사용 지양하기
불필요한 데이터 스캔 비용이 발생할 수 있으므로 필요한 컬럼만 선택해야 한다.
파티션 필터 적용하기
WHERE 절에서 반드시 파티션 조건을 지정해야 비용과 속도를 최적화
데이터 포맷 최적화
CSV나 JSON보다는 Parquet, ORC 같은 컬럼 형식의 파일 사용 권장

3. 마무리

많은 테크 기업과 스타트업에서는 운영DB와 분석DB를 분리하여 데이터 분석 환경을 구축하고 있다. AWS 아테나와 GCP 빅쿼리는 이런 환경에서 많이 사용되는 대표적인 솔루션으로, DA로서 각 서비스의 특징과 사용시 주의점 등을 이해하고 사용 경험을 쌓아두면 실제 업무에서 큰 도움이 될 것이다.

 Key Takeaways

운영DB와 분석DB는 반드시 분리해야 한다. AWS 아테나는 S3 데이터를 직접 쿼리할 수 있는 서버리스 분석 도구다. 빅쿼리는 Google Cloud 기반의 강력한 분석 플랫폼으로, 대규모 데이터 처리에 강점이 있다. 비용과 성능을 고려해 적절한 솔루션을 선택하는 것이 중요하다.