아마존 CTO, 탈 오라클을 말하다

"11월1일 아마존에서 오라클 DW 제거"

컴퓨팅입력 :2018/11/30 08:17

[라스베이거스(미국)=김우용 기자] 아마존닷컴 최고기술책임자(CTO)인 버너 보겔스가 오라클 데이터베이스를 아마존웹서비스(AWS)의 여러 DB 서비스로 이전한 내용을 공개했다. 10년 안에 불가능하다던 오라클의 공언이 무색하게, 오라클 DB를 90년대 구식 기술이라 평가절하했다.

버너 보겔스 아마존닷컴 CTO는 29일(현지시간) ‘AWS 리인벤트 2018’ 기조연설에서 “지난 11월 1일 세계에서 가장 큰 오라클 데이터웨어하우스를 완전히 레드시프트로 이전했다”며 “아마존 역사상 최고의 날이었다”고 밝혔다.

그는 기조연설에서 AWS의 관계형 데이터베이스(RDB) 서비스인 ‘아마존 오로라’와 NoSQL 서비스인 ‘아마존 다이나모 DB’의 혁신을 설명하고, 차세대 애플리케이션에 적합한 클라우드 중심의 DB 기술을 사용하라고 강조했다.

그는 “2004년 12월12일은 아마존 최악의 날이었다”며 “그 당시 일정금액 이상 구매하면 무료로 배송받을 수 있는 체계를 갖추고 있었는데, 12월12일이 크리스마스 전에 상품을 배송받을 수 있는 마지막 날이었다”고 말했다.

버너 보겔스 아마존닷컴 CTO가 아마존 오로라 혁신을 설명하고 있다.

보겔스 CTO에 따르면, 당시 아마존은 서비스지향아키텍처(SOA)를 구동하고 아이템 주문, 카탈로그, 고객 DB 등의 세 축을 오라클 DB RAC 기반으로 운영하고 있었다. 2004년 12월12일 한꺼번에 많은 구매자가 아마존에 접속하려 했지만, DB의 버그 때문에 12시간 동안 아마존닷컴이 다운됐다. 그렇게 아마존은 DB에 대한 제어권을 고민하게 됐다.

그는 “당시 오라클 RAC는 놀라운 아키텍처였지만, 아마존은 안정성, 확장성, 성능 그 어떤 것에도 제어권을 갖지 못했다”며 “이 사건이 오늘날 AWS의 여러 개발을 이끌었고, 모든 걸 작은 빌딩블록으로 나눠 폭발 반경을 줄이는 셀 기반 아키텍처로 가게 했다”고 설명했다.

아마존은 DB 샤딩, 파티셔닝 등 데이터를 분산 저장하는 방법을 적극적으로 고민했다. 그러나 DB 샤딩도 클라우드에 완전하게 적합하지 않았다. 보겔스 CTO는 “80~90년대 만들어진 모델을 떠나 클라우드 네이티브한 현대적 DB로 가야겠다고 생각했다”며 “근본적인 빌딩 블록을 고민했고, 멀티테넌트, 폴트톨로런스, 자가복구, 데이터를 인지하는 스토리지 등으로 아마존의 통제력을 갖도록 했다”고 말했다.

2004년부터 시작된 고민은 ‘아마존 오로라’의 탄생으로 이어졌다. 장애에도 10초 만에 읽기와 쓰기를 복구할 수 있는 RDB다. 그는 “아마존 오로라는 진정한 의미의 혁신을 가져왔다”며 “과거의 DB는 간단한 웹사이트에 적합했지, 현대의 혁신에는 어울리지 않는다”고 강조했다.

아마존이 탈 오라클DB를 선언하게 된 또다른 이유도 소개됐다. 모든 데이터를 엄숙한 RDB에 담을 필요가 없다는 것이다. 특정 목적에 맞게 RDB, 키밸류 데이터스토어(NoSQL) 등을 적용하는 게 낫다는 설명이다.

그는 “아마존의 데이터 운영 가운데 70%는 키밸류 스토어에서 이뤄지며, 10%만 실제로 관계를 가진 값이었다”며 “RDB를 모든 것에 사용하는 건 잘못된 선택이라 생각하게 됐다”고 말했다.

관계를 갖지 않은 데이터를 운영하기 위해 고안된 게 ‘아마존 다이나모DB’다. 2007년 버너 보겔스의 논문으로 시작된 다이나모DB는 아마존의 쇼핑카트 지원 기술로 처음 활용됐다. 확장성을 보장하며, 신뢰가능하고, 성능, 비용, 일관성 등을 제어할 수 있는 NoSQL DB다.

그는 “다이나모DB는 대규모 환경에서 고성능을 제공하면서, 완벽하게 제어할 수 있”"며 “현대의 대규모 환경에 적합한 성능이야말로 다이나모의 핵심 개념”이라고 강조했다.

그는 아마존의 관계형 데이터를 RDB에서 다이나모DB로 이전하는 것에 대해 내부의 반감을 줄인 사례를 공유했다

그는 “아마존의 상품 페이지는 다양한 셀러의 아이템이 올라가 다양한 종류의 관계를 갖고 있다”며 “아이템 마스터 서비스는 24개 오라클 DB로 샤딩하고, 6천억건의 레코드를 가졌으며, 50억건의 업데이트가 매일 일어나고 있었다”고 말했다.

그는 “매년 30~40% 씩 늘어나는 24개의 DB 는 성능 관리도 어렵고, DBA팀이 파티션 관리에 신경써야 했다”며 “이 DB의 6천억건 레코드를 모두 다이나모로 옮겼는데, 아마존 서비스를 내리지 않고 실시간으로 마이그레이션했다”고 밝혔다.

아마존의 DW로 선택된 ‘아마존 레드시프트’는 지난 6개월 사이 3.5배 빨라졌다. 첫 출시 후 반복적 쿼리의 성능은 17배, 삭제 성능은 10배, 인서트 성능은 3배, 커밋 성능은 2배 향상됐다고 한다. AWS는 최근 데이터 조회 성능을 더 빠르게 하기 위해 레드시프트에 새 기능을 추가했다. 아마존 레드시프트 컨커런시 스케일링 기능이다.

이 기능은 대기 시간이 쿼리에서 발생하면 추가적인 레드시프트 클러스터를 투입해 속도를 높인다. 무료로 레드시프트 처리성능이 늘어난다.

지난 8월초 아마존이 오라클 DB를 2020년 1분기까지 완전히 걷어내려 한다는 사실이 외부에 알려졌다. 다음날 오라클은 이례적으로 입장문을 발표하고 '지난해 아마존이 오라클의 DB와 소프트웨어에 6천만달러를 지불했다'고 반박했다.

관련기사

래리 엘리슨 오라클 회장은 올해초 "아마존은 오라클에서 빠져나가는데 10년을 들였지만, 아직도 오라클을 쓰고 있다"고 말했었다.

29일 버너 보겔스 CTO의 기조연설 후 리인벤트 컨퍼런스 곳곳에서 '아마존의 오라클DB 마이그레이션 사례' 세션이 열렸다. 관련 세션은 인산인해를 이뤘다.