2013.01.30

에버노트, 하둡과 파엑셀로 본격 빅 데이터 분석 환경 구현

Andrew Lampitt | InfoWorld
막대한 양의 데이터로 인해 에버노트의 분석 시스템이 포화 상태에 이르면서, 에버노트는 예산을 초과하지 않으면서도 빅 데이터를 감당할 수 있도록 자체 분석 환경의 현대화 작업을 수행 했다. 인기 절정의 개인용 정보 관리 및 업무 생산성 애플리케이션인 에버노트는 전통적인 데이터 웨어하우스에서 하둡(Hadoop)과 대규모 병렬 처리 분석 데이터베이스인 파액셀(ParAccel)을 결합한 하이브리드 환경으로 이전했다.
 
에버노트는 자사 서비스 사용자들의 막대한 양의 데이터를 수집하고 분석한다. 2008년 이래, 3,600만 명의 사용자가 에버노트 계정을 만들었고, 이들은 12억 개의 “노트”와 20억 개의 첨부 파일 등을 포함한 수백 테라바이트 규모의 데이터를 생성하고 있다. 노트에는 텍스트, 웹 페이지, 사진, 음성 메모 등이 포함되어 있는데, 태그하고, 주석을 달고, 편집하고, 폴더로 분류하는 등을 포함한 여러 가지 다양한 방법들로 조작할 수 있다.
 
에버노트는 사용자 경험을 최적화하기 위해 현재 하루에 2억 건의 이벤트를 하둡과 파엑셀 데이터베이스 조합을 통해 분석하고 있다. 거기에다, 오픈소스 재스퍼리포트 서버(JasperReports Server) 커뮤니티 에디션이 보고서와 차트 등을 생성하는데 사용된다.
 
데이터 볼륨 한도 초과
에버노트의 기존 데이터 웨어하우스는 OLTP에 기반한 관계형 데이터베이스였는데, 데이터가 트랜젝션과는 대조적으로 쿼리에 따라 배치되는 스타 스키마를 사용했다. 이 솔루션은 보통 MySQL 상의 데이터 볼륨이 몇 테라바이트 정도에 그칠 경우 보고와 분석을 하기에 적합하다. 그러나 데이터가 그 한도를 넘어서면서, 히스토리 보유량이 줄어들고, 데이터 웨어하우스 쿼리 속도, 유연성, 비용이 타격을 받게 된다.
 
에버노트는 바로 이런 상황에 에버노트가 처했던 것이다. 에버노트의 데이터 웨어하우스는 같은 네트워크 상의 대형 RAID10 어레이 위의 MySQL을 애플리케이션의 주 서버로 구동된다. 매일 밤마다, 9시간에서 18시간에 걸친 배치 프로세스를 통해 몇몇 운영 데이터베이스 테이블과 분산 구조화된 이벤트 로그의 결합 증분을 애플리케이션 서버에서 폐기했다. 수작업식 생성과 튜닝 이후, 보고서들이 이메일을 통해 배분되었다.
 
그러나 2012년 초에 이르자, 분석팀은 기존의 솔루션이 워크로드를 더 이상 감당할 수 없다는 사실을 깨달았다. 400억 줄이 넘는 주요 테이블들을 처리하기 위해서, 한 번에 며칠 분량이 넘는 데이터에 접속하는 것은 비현실적이었다. 보고 데이터베이스는 느렸고, 유지하기도 어려웠으며, 즉석 쿼리에도 적합하지 않았다.
 
에버노트 팀은 효율적으로 데이터의 전체 히스토리를 저장하고, 표준 일일 보고서 수십 건을 생성하고, 즉석 쿼리를 손쉽게 관리하고, 미래에도 계속 확장할 수 있는 분석 환경을 구축하고자 했다. 그리고 그 모든 목표를 주어진 예산 안에서 달성해야 했다.
 
하이브리드 분석 환경 구축하기
에버노트는 하둡과 파액셀로 구성된 새로운 접근방식을 선택했다.
 
10노드 하둡 클러스터는 현재 모든 히스토리 데이터를 저장하고 분석을 위한 데이터 준비도 처리한다. 하둡은 오픈소스 라이선스와 범용 하드웨어를 이용하여 확장할 수 있기 때문에 저렴한 솔루션으로 인식되었다.
 
MPP 분석 데이터베이스에 있어서, 파액셀은 아주 빠른 즉석 쿼리 성능을 제공한다. 에버노트에서 3노드 파액셀 원주 분석 데이터베이스는 파생 테이블 세트들의 쿼리를 처리한다. 노드들은 수퍼마이크로 시스템으로, 각각 2개의 L5630 쿼드코어 프로세서, 192GB RAM, 10Gbps 네트워킹, 수동 프로비저닝된 SSD RAID5가 레드햇 엔터프라이즈 리눅스와 함께 설정되어 있다.
 
마지막으로, 가장 인기있는 오픈소스 보고 솔루션 중 하나인 재스퍼리포트의 선택은 쉬운 결정이었다. 분석팀은 파액셀 서버 쿼리와 다양한 형식의 일일 보고서 수십 개를 생성하는데 재스퍼소프트의 오픈소스 재스퍼리포트 서버를 사용하기로 결정했다. 파액셀과 재스퍼리포트 서버의 조합은 최근 아마존이 이 둘을 자사의 호스팅 기반 분석 환경인 레드시피트(Redshift)에 사용하면서 거의 공인된 상태이다.
 
에버노트는 재스퍼리포트 서버를 사용하여 매일 차트와 보고서 수십 개를 생성한다.
 
보안을 이유로, 분석 환경은 에버노트 애플리케이션 서버와 연결되지 않은 분리된 네트워크 상에 존재한다. 일일 온라인 데이터는 일방통행 네트워크 접속을 통해 보고 작성 환경으로 안전하게 전달된다.
 


2013.01.30

에버노트, 하둡과 파엑셀로 본격 빅 데이터 분석 환경 구현

Andrew Lampitt | InfoWorld
막대한 양의 데이터로 인해 에버노트의 분석 시스템이 포화 상태에 이르면서, 에버노트는 예산을 초과하지 않으면서도 빅 데이터를 감당할 수 있도록 자체 분석 환경의 현대화 작업을 수행 했다. 인기 절정의 개인용 정보 관리 및 업무 생산성 애플리케이션인 에버노트는 전통적인 데이터 웨어하우스에서 하둡(Hadoop)과 대규모 병렬 처리 분석 데이터베이스인 파액셀(ParAccel)을 결합한 하이브리드 환경으로 이전했다.
 
에버노트는 자사 서비스 사용자들의 막대한 양의 데이터를 수집하고 분석한다. 2008년 이래, 3,600만 명의 사용자가 에버노트 계정을 만들었고, 이들은 12억 개의 “노트”와 20억 개의 첨부 파일 등을 포함한 수백 테라바이트 규모의 데이터를 생성하고 있다. 노트에는 텍스트, 웹 페이지, 사진, 음성 메모 등이 포함되어 있는데, 태그하고, 주석을 달고, 편집하고, 폴더로 분류하는 등을 포함한 여러 가지 다양한 방법들로 조작할 수 있다.
 
에버노트는 사용자 경험을 최적화하기 위해 현재 하루에 2억 건의 이벤트를 하둡과 파엑셀 데이터베이스 조합을 통해 분석하고 있다. 거기에다, 오픈소스 재스퍼리포트 서버(JasperReports Server) 커뮤니티 에디션이 보고서와 차트 등을 생성하는데 사용된다.
 
데이터 볼륨 한도 초과
에버노트의 기존 데이터 웨어하우스는 OLTP에 기반한 관계형 데이터베이스였는데, 데이터가 트랜젝션과는 대조적으로 쿼리에 따라 배치되는 스타 스키마를 사용했다. 이 솔루션은 보통 MySQL 상의 데이터 볼륨이 몇 테라바이트 정도에 그칠 경우 보고와 분석을 하기에 적합하다. 그러나 데이터가 그 한도를 넘어서면서, 히스토리 보유량이 줄어들고, 데이터 웨어하우스 쿼리 속도, 유연성, 비용이 타격을 받게 된다.
 
에버노트는 바로 이런 상황에 에버노트가 처했던 것이다. 에버노트의 데이터 웨어하우스는 같은 네트워크 상의 대형 RAID10 어레이 위의 MySQL을 애플리케이션의 주 서버로 구동된다. 매일 밤마다, 9시간에서 18시간에 걸친 배치 프로세스를 통해 몇몇 운영 데이터베이스 테이블과 분산 구조화된 이벤트 로그의 결합 증분을 애플리케이션 서버에서 폐기했다. 수작업식 생성과 튜닝 이후, 보고서들이 이메일을 통해 배분되었다.
 
그러나 2012년 초에 이르자, 분석팀은 기존의 솔루션이 워크로드를 더 이상 감당할 수 없다는 사실을 깨달았다. 400억 줄이 넘는 주요 테이블들을 처리하기 위해서, 한 번에 며칠 분량이 넘는 데이터에 접속하는 것은 비현실적이었다. 보고 데이터베이스는 느렸고, 유지하기도 어려웠으며, 즉석 쿼리에도 적합하지 않았다.
 
에버노트 팀은 효율적으로 데이터의 전체 히스토리를 저장하고, 표준 일일 보고서 수십 건을 생성하고, 즉석 쿼리를 손쉽게 관리하고, 미래에도 계속 확장할 수 있는 분석 환경을 구축하고자 했다. 그리고 그 모든 목표를 주어진 예산 안에서 달성해야 했다.
 
하이브리드 분석 환경 구축하기
에버노트는 하둡과 파액셀로 구성된 새로운 접근방식을 선택했다.
 
10노드 하둡 클러스터는 현재 모든 히스토리 데이터를 저장하고 분석을 위한 데이터 준비도 처리한다. 하둡은 오픈소스 라이선스와 범용 하드웨어를 이용하여 확장할 수 있기 때문에 저렴한 솔루션으로 인식되었다.
 
MPP 분석 데이터베이스에 있어서, 파액셀은 아주 빠른 즉석 쿼리 성능을 제공한다. 에버노트에서 3노드 파액셀 원주 분석 데이터베이스는 파생 테이블 세트들의 쿼리를 처리한다. 노드들은 수퍼마이크로 시스템으로, 각각 2개의 L5630 쿼드코어 프로세서, 192GB RAM, 10Gbps 네트워킹, 수동 프로비저닝된 SSD RAID5가 레드햇 엔터프라이즈 리눅스와 함께 설정되어 있다.
 
마지막으로, 가장 인기있는 오픈소스 보고 솔루션 중 하나인 재스퍼리포트의 선택은 쉬운 결정이었다. 분석팀은 파액셀 서버 쿼리와 다양한 형식의 일일 보고서 수십 개를 생성하는데 재스퍼소프트의 오픈소스 재스퍼리포트 서버를 사용하기로 결정했다. 파액셀과 재스퍼리포트 서버의 조합은 최근 아마존이 이 둘을 자사의 호스팅 기반 분석 환경인 레드시피트(Redshift)에 사용하면서 거의 공인된 상태이다.
 
에버노트는 재스퍼리포트 서버를 사용하여 매일 차트와 보고서 수십 개를 생성한다.
 
보안을 이유로, 분석 환경은 에버노트 애플리케이션 서버와 연결되지 않은 분리된 네트워크 상에 존재한다. 일일 온라인 데이터는 일방통행 네트워크 접속을 통해 보고 작성 환경으로 안전하게 전달된다.
 


X