본문 바로가기

Cloud & Backing services/Database

(2)
Netflix 미디어 데이터베이스 Netflix의 목표는 전 세계 수백만 회원의 재생 시작 시간을 최소화하는 것이다. 이를 위해서 ISO BMFF의 Header 크기에 대한 통계량(최소값, 최대값, 중간값, 평균값등)을 수집해야 한다. Netflix의 Transcoding Pipeline은 방대한 콘텐츠 카탈로그를 서비스하며 모든 콘텐츠에 대해 다양한 코덱+품질 조합을 생성한다. 과거에는 비트 스트림 헤더 정보를 클롤링하는 일회성 스크립트를 작성해야만 데이터를 분석할 수 있었고 이러한 접근 방식에는 확장성이 없었다. 본 글에서는 Netflix의 Media Data Base 시스템에 대해서 소개하고자 한다. 왜 미디어 전용 데이터 베이스가 필요한가? 의미있는 개인화 및 효율적인 스트리밍은 최종 사용자가 서비스를 정의하는 주요 요소이다. 이..
MongoDB Schema Design — Part #1 이제까지 MongoDB를 로그 분석용으로 주로 활용했었고 다른 용도로 사용 할 경우에 스키마를 어떻게 구성해야 하는지에 대해서 검색한 결과를 정리한다. RDBMS의 스키마 디자인과는 다른 전략으로 접근해야 하고 아래 사항을 고려해야 한다. User requirement 기반으로 스키마를 디자인한다. 데이터를 read할 때 join하는 것이 아니라 데이타를 write할때 join해야 한다. 객체간의 관계를 고려한다. (Multiple collection과 Embedded) MongoDB는 아래의 방법으로 관계를 표현 할 수 있다. > db.person.findOne() { name: ‘Kate Monster’, ssn: ‘123–456–7890’, addresses : [ { street: ‘123 Ses..