Woot의 웹 사이트 Woot.com의 첫 페이지는 지속적으로 변화합니다. 2004년에 설립되어 2010년 Amazon이 인수한 오늘의 딜 사이트인 Woot에서는 전자 제품, 의류 및 야외 장비, 스포츠 장비, 가정 용품 및 기타 제품을 매일(때로는 30분마다) 특별한 가격으로 제공합니다.
2018년, Woot는 사이트 백엔드에도 변화를 주기로 했습니다. 특히 Woot는 Oracle Database용 Amazon Relational Database Service(RDS) 기반의 기존 데이터 웨어하우스를 중단하고 Amazon Web Services(AWS)의 클라우드 네이티브 데이터 웨어하우징 솔루션으로 전환하고자 했습니다.
레거시 웨어하우스의 여러 문제 중 하나는 데이터 원본이 추가될 때마다 새로운 사용자 지정 파이프라인이 필요하다는 것이었으며, 구축하는 데 몇 주가 걸리기도 했습니다. 또한 쿼리 프로세스가 복잡해서 잠재적으로 유용한 쿼리는 시도조차 되지 않았고, 데이터 웨어하우스가 프로덕션 AWS 계정에 상주하므로 이에 대한 사용자 액세스를 엄격하게 제한해야 한다는 것도 문제였습니다.
현재 Woot는 데이터 수집 및 저장을 위해 Amazon Kinesis Data Firehose 및 Amazon S3(Amazon Simple Storage Service) 기반 서버리스 데이터 웨어하우스를 운영하고 있습니다. ETL 작업 예약 및 메타데이터 관리 작업을 위해 AWS Lambda를 사용하여 AWS Glue를 오케스트레이션합니다. Amazon Athena와 Amazon QuickSight는 강력하고 사용자 친화적인 쿼리 및 데이터 시각화 기능을 제공하며, SQL 지식이 없는 사용자도 사용할 수 있습니다. 그리고 이 모든 것이 회사의 프로덕션 계정과 완전히 분리된 별도의 데이터 웨어하우스 계정에 있습니다.
데이터에서 인사이트를 확보하고 관리하는 방법은 아주 다양한데 어떻게 Woot는 현재의 솔루션을 선택하게 되었을까요? 간단히 설명하면 고객의 의견을 경청하는 데에서 시작됩니다. 이렇게 하면 데이터 웨어하우스에 의존하는 다양한 분야의 직원들이 Woot 고객에게 최적의 쇼핑 환경을 제공할 수 있습니다.
Woot의 데이터 엔지니어이자 회사의 데이터 웨어하우스 관리를 담당하는 유일한 직원인 Chaya Carey는 “이 프로젝트가 Woot 내에서 선한 영향력이 되기를 원했습니다. 마감 기한에 임박해 업무를 수행하다 보면 그저 요구 사항에 따라 실행하고 기술적인 고민은 나중으로 미루기 마련입니다. 우리는 대신 데이터 웨어하우스를 누가 사용했는지, 당면한 문제는 무엇인지, 그리고 데이터를 사용하기 위해 무엇이 필요한지 파악하기 위해 많은 시간을 보냈습니다. "라고 말합니다.
이러한 대화를 통해 Carey가 데이터 웨어하우스를 위해 세운 하나의 목표는 모든 새로운 서비스 또는 서비스 변경에 대해 사용자 지정 파이프라인을 구축하거나 변경할 필요가 없는 데이터 공동 책임 모델로 전환하는 것이었습니다. "서비스가 데이터를 데이터 웨어하우스로 전송하고 최소한의 개입으로 데이터가 허용되었으면 했습니다. 하지만 기존 개발자 기술에 맞도록 데이터를 푸시할 수 있는 쉬운 방법을 찾아야 했습니다."라고 그녀는 말합니다.
Carey는 개발자가 Woot에서 사용 중인 다양한 프로그래밍 언어 및 플랫폼에 대해 AWS SDK(Software Development Kit)를 사용하여 데이터를 웨어하우스의 Kinesis Data Firehose 전송 스트림으로 보낼 수 있는 준비된 솔루션을 찾았습니다.
Carey는 "이제 개발자는 서비스에서 데이터를 전송하는 배치 작업을 구축하지 않고 데이터를 Firehose 엔드포인트로 푸시하는 API 호출을 추가하기만 하면 됩니다. Kinesis Data Firehose는 공동 책임 모델을 개발자들이 훨씬 쉽게 사용할 수 있도록 했습니다. 이는 마이그레이션의 큰 성과였습니다. 새로운 서비스를 추가하거나 기존 서비스의 변경 사항에 적응하는 데 걸리는 지연 시간을 제거했기 때문입니다."라고 말합니다.
Woot는 데이터 쿼리 및 시각화를 위해 Amazon Athena 및 QuickSight를 선택함으로써, 데이터 사이언스나 비즈니스 인텔리전스 기술은 부족하지만 데이터 웨어하우스의 정보를 필요로 하는 많은 직원들(회계사, 재무 분석가, 재고 분석가, 공급업체 관리자 및 고객 서비스 담당자 포함)이 훨씬 쉽게 업무를 수행할 수 있게 했습니다.
Carey는 "이전 솔루션에서 쿼리를 사용하려면 티켓을 열어 관리자 승인을 받고 90일 동안만 유효한 암호가 필요했어요. 가장 어려운 점은 쿼리를 작성하려면 SQL을 이해해야 했죠. 이제 Amazon QuickSight를 사용하면 SQL 지식이 없어도 누구나 끌어서 놓는 방식만으로 그래프 및 기타 시각화 도구를 만들 수 있습니다. 더 많은 사용자 정의를 필요로 하는 직원에게는 Athena 콘솔을 통해 쿼리할 수 있지만 SQL 지식은 필요하지 않습니다."라고 말합니다.
지금은 쿼리 프로세스가 단순해졌을 뿐만 아니라 쿼리 자체도 완료하는 데 훨씬 적은 시간이 걸립니다. Carey는 "모든 사용자가 Amazon Athena에서의 빠른 쿼리 속도에 대해 이야기하고 있어요. 또한 이전에는 아주 복잡했던 쿼리도 Athena에서는 문제 없이 실행된다는 피드백을 듣고 있습니다. 즉, 이전에 비해 훨씬 더 많은 질문에 답변할 수 있게 되었다는 뜻이죠."라고 말합니다.
새로운 솔루션의 AWS 도구는 사용자에게 친숙하기 때문에, 점점 더 많은 직원이 질문에 답변하는 데 셀프 서비스 방식을 취하고 있습니다. Carey는 "QuickSight에서 구축할 수 있는 시각화 기능이 아주 인기예요. 그래서 어떻게 더 많이 활용할 수 있을까 방법을 찾느라 바쁩니다. "BI 직원은 직원은 4명뿐인데 과거에는 처리 가능한 양보다 많은 요청을 받곤 했습니다. 이제는 기술직과 관련 없는 일반 직원들도 Amazon QuickSight를 통해 스스로 정보를 얻을 수 있으므로 Woot BI 직원들은 전략적 프로젝트에 더 많은 시간을 할애할 수 있습니다."라고 말합니다.
Carey는 마이그레이션을 통해 이전 솔루션의 문제를 해결했을 뿐만 아니라, 비용 절감 효과 외에도 AWS의 다양한 도구와 서비스를 시험해 보는 계기가 되었다고 말합니다. "서버리스 AWS 데이터 웨어하우스 솔루션으로 전환함으로써 데이터 웨어하우스 운영 비용을 거의 90%나 절감할 수 있었습니다."라고 Carey는 덧붙였습니다. 또한 새로운 솔루션의 서버리스 아키텍처 덕분에 3주간의 휴가 동안 단 한 번도 업무 관련 연락을 받은 적이 없다고 합니다.
Carey는 다음과 같이 첨언합니다. "데이터 웨어하우스가 자체 계정에 있고 Amazon S3에 모든 것을 저장한다는 점은 저와 BI 엔지니어들이 Amazon Elastic MapReduce, Amazon SageMaker, Amazon Redshift Spectrum과 같은 다양한 기술을 원활하게 통합하고 또 탐색할 수 있게 해 주었습니다. 앞으로 계속 어떤 혁신을 거듭할지 매우 기대됩니다."
자세한 내용은 aws.amazon.com/what-is/data-warehouse/를 참조하세요.