e비즈*솔루션

[AWS 서밋 서울] 쿠팡이 ‘아마존 레드시프트’를 알뜰하게 활용하는 방법

권하영 기자

이성수 쿠팡 데이터플랫폼팀 데이터엔지니어가 지난 16일 서울 코엑스 컨벤션센터에서 아마존웹서비스(AWS)가 개최한 ‘AWS 서밋 서울 2024’에서 ‘쿠팡의 아마존 레드시프트 최적화 전략’을 주제로 세션 발표를 하고 있다. [Ⓒ 디지털데일리]

[디지털데일리 권하영기자] 지난해 연매출 23조원을 달성하고 ‘로켓와우’ 멤버십 회원 1400만명을 돌파한 쿠팡이 빠른 성장만큼이나 대규모로 늘어난 데이터 처리를 위해 데이터웨어하우스를 어떻게 운영하고 있는지 그 노하우를 공개했다.

이성수 쿠팡 데이터플랫폼팀 데이터엔지니어는 지난 16일 서울 코엑스 컨벤션센터에서 아마존웹서비스(AWS)가 개최한 ‘AWS 서밋 서울 2024’에서 ‘쿠팡의 아마존 레드시프트 최적화 전략’을 주제로 세션 발표를 진행했다.

‘아마존 레드시프트’는 포스트그레SQL 데이터베이스(DB)를 기반으로 한 완전관리형 클라우드 데이터웨어하우스 솔루션이다. 대량 병렬처리 아키텍처를 통해 크고 복잡한 분석 쿼리를 빠르게 수행하도록 대용량 데이터 분석에 최적화된 솔루션이라고 할 수 있다. 현재 맥도날드·모더나 등을 포함한 전세계 수만명 고객들이 레드시프트를 활용해 데이터 분석 워크로드를 현대화하고 있다.

장윤정 AWS 테크니컬어카운트 매니저는 “레드시프트는 완전관리형 서비스로, 콘솔을 통해 간단한 조작으로 클러스터를 생성하고 관리하기 편하게 돼 있다”며 “또 기존 사용했던 복잡한 비즈니스 분석 쿼리를 그대로 레드시프트에 적용해 사용할 수 있고, 부서마다 같은 데이터를 중복 저장할 필요 없이 소스 원본 데이터를 다른 부서에서 그대로 활용할 수 있게 하되 보안 장치가 마련돼 있다”고 설명했다.

쿠팡 역시 레드시프트 고객사 중 하나다. 쿠팡은 데이터레이크 구축을 위해 아마존 레드시프트를 활용하고 있다. 특히 레드시프트가 제공하는 데이터 쉐어링, 스펙트럼, 동시성 스케일링(Concurrency Scaling)과 같은 다양한 기능을 적용해 데이터 파이프라인과 아키텍처를 효율화했다.

이성수 엔지니어는 “SQL은 모든 자원을 사용해 빠르게 처리해야 하는데, 그래서 메모리 같은 경우 특정 그룹에 할당될 수 있지만 CPU(중앙처리장치)는 그런 할당 자체가 불가능하다”며 “여기서 특정 SQL이 CPU를 과도하게 점유하게 되면 다른 SQL의 성능에 영향을 받을 수밖에 없는 문제가 발생하는데, 그런 관점에서 AWS는 ‘워크로드 매니저’를 통해 개별 그룹에 대한 자원 관리를 제공해주고 있다”고 설명했다.

이 엔지니어는 “또한 데이터레이크의 고립성 이슈를 해결하기 위해 데이터 파이프라인을 만들어야 했는데, 이걸 어떻게 하면 처리할 수 있을까라고 했을 때 레드시프트에서 ‘스펙트럼’이라고 하는 재밌는 기능을 만들어줬다”며 “쉽게 생각해 데이터레이크에 있는 테이블들을 AWS 레드시프트가 인지해 거기에 저장된 모든 테이블을 즉각 읽을 수 있게 해주는 기능”이라고 소개했다.

문제는 이러한 기능들이 모두 저렴하지만은 않다는 것이다. 그래서 쿠팡은 아마존 레드시프트를 사용하면서도 최적의 비용효율성을 가져갈 수 있도록 고민을 했다.

이 매니저는 “잘 알다시피 레드시프트가 조금 비싸다고 생각하는 분들 있을 텐데, 1년 단위 또는 3년 단위 예약 구매를 할 수 있다는 점을 봐야 한다”며 “예컨대 3년간 인스턴스를 쓰게 됐을 때 온디맨드 대비 약 56% 비용 절감 효과가 발생하기 때문”이라고 말했다. 그러면서 “실제로 쿠팡 같은 경우도 온디맨드 인스턴스 비중이 꽤 높았다가 이를 적당히 나눠서 구매하기 시작했고, 이런 구매를 통해서 기존 비용에서 약 50% 정도를 절감을 할 수 있었다”고 밝혔다.

아마존 레드시프트 서버리스(RMS)를 쓸 경우에도 데이터가 저장되는 공간만큼 비용을 지불해야 하는데, 보통 레드시프트는 클러스터 비용과 RMS 비용이 따로 있다. 이 매니저는 “그래서 레드시프트 클러스터를 중단시킬지라도 저장돼 있는 데이터는 그대로 있기 때문에 RMS에 대한 비용은 계속 청구가 된다”며 “레드시프트의 좋은 기능 중 하나가 ‘프로시저’인데, 쿠팡은 이 기능으로 90일간 액세스되지 않는 테이블은 자동 삭제를 한다”고 설명했다.

이 매니저는 스펙트럼 비용을 효율화하는 방법에 대해서도 조언했다. 그는 “스펙트럼 비용은 데이터레이크에 있는 테이블 중 내가 읽은 스캔된 사이즈 양만큼 비용이 계산되고, 약 1테라당 5달러 정도가 발생한다”며 “5달러가 별 거 아닌 것 같지만 문제는 이걸 제한하지 않았을 경우 특정 사용자가 잘못된 커리를 계속 쓰게 되면 비용이 제한적으로 발생할 수 있다는 점”이라고 지적했다.

그러면서 “그래서 쿠팡은 이를 직접 설정해서 쓰고 있다”며 “만약 데이터레이크에 있는 테이블을 가져와 하루에 수십, 수백번을 읽어야 하는 케이스라면 그냥 복제해 들고 오는 게 좋다”고 언급했다.

권하영 기자
kwonhy@ddaily.co.kr
기자의 전체기사 보기 기자의 전체기사 보기
디지털데일리가 직접 편집한 뉴스 채널