Netflix架构 – 解道Jdon

视频巨头NetFlix云存储使用亚马逊的公有云,两者形成公有云生态环节,互相促进,亚马逊将在Netflix成功方案推广给其他客户服务,Netflix则通过每晚占据全美60%网络下载量的巨大流量检验亚马逊云平台。

netflix 亚马逊


Netflix几个功能块

分发 CDN

存储 包括内存存储和磁盘存储

消息 效率协调。

计算 包括同步计算和异步并发计算

支付 各种支付接口

分析 数据挖掘分析


Netflix遭遇关系数据库瓶颈:

 

 

  • 内容 用户资料 产品模型等等都有存储,防止当机丢失。随着用户规模扩大,用户写入数据巨大,需要巨量存储

 

 

  • 传统的集中式关系数据库无法水平扩展,分布分区能力很差。

 

 

  • 一旦表结构改变,导致停机重启。

 

 

 


Netflix视频数据模型特点:

 

 

  • 用户资料 AAA

 

多种格式媒体描述,flv MP4

本地差异化内容

中心统一推送内容

用户本地触发内容

特点:数据的主键比较容易获得。主要是用户主键和视频主键。

 

 

 


需要解决巨量登录Session

 

 

  • 用户登录后,必须在服务器保留Session,以确认其已经登录。

 

Session数据在服务器间复制,效率差,影响服务器处理正向处理能力

过去使用负载平衡器将用户发往其Session创建后的服务器,负载实际不均衡。

容易导致集中式过程编程,一个服务干很多事情

 

云存储Session

 

 

  • Cassandra保存Session,易于修改。

 

跟踪终端用户每次操作事件,记录在Session中,可作为其回放缓存。

Cassandra前端再添加memcached,提高Seesion快速就近读取能力。

最前端通过负载平衡球进行请求级别的分发。

 


迁移到健壮的协议

 

 

 

  • 云服务协议:REST + JSON

 

支持单个请求包含复杂的数据类型。

 

 

  • Apache Avro:数据序列化更加快速,适合在http上更快交换数据。

 

 

  • REST结合OAuth

 

 

 


NetFlix持久化方案

 

 

  • 将Avro保存在memcached。包括定义

 

节省空间,降低延迟(zigzag编码减少一半)

 

  • Avro能够使用JSon表达,由POJO产生。但是比较难,需要专门工具。

 

 

 

 


SQS消息中间件

 

 

  • 消息异步中间件,提供异步分布式处理能力。

 

 

  • 事件监听模式。发布者-订阅者。类似JMS,有Topic和Queue两种。

 

 

  • 可实现cron类型 繁重 巨大计算任务。

 

 


消息在视频制作流程应用

异步后弹性易于扩展

消息的订阅提醒服务


Amzon EC2

 

 

  • 弹性 多租户系统,可评估内存和CPU。

 

底层使用IAAS虚拟化

Eucalyptus, OpenNebula, OpenStack, OpenQRM, XenServer, Oracle VM, CloudStack, ConVirt 比较

Map/reduce计算开源工具:GridGain;GigaSpace 和Hadoop。

 

 


Netflix重点自己整合运维监视管理工具

Netflix的监视界面AppDynamics

性能线程实时监视和评估

建立大规模的真实世界推荐系统Building Large-scale Real-world Recommender Systems – Recsys2012 tutorial

解剖了Netflix的个性化特点(“一切都是个性化”),在这篇PPT中谈了Netflix的数据模型(包括物流/线性回归,弹性网,矩阵分解和马尔可夫链),消费数据科学(用户离线和在线测试),

Netflix是如何用大数据捧火《纸牌屋》的 | 36氪

Netflix基于AWS的大数据平台Hadoop架构解析-CSDN.NET

IBM的WebSphere实施案例使用了大半netflix oss工具

NetFlix源码开放中心

如何基于开源构架设计一个视频平台?

 NetFlix测试Cassandra:-每秒百万次写

美国视频巨头Netflix的云存储方案

Netflix开源Hystrix

开源真正分布式实时大数据分析仓库Druid

Blitz4j – 可伸缩的日志框架

Apache Curator :让ZooKeeper使用更容易 

FaceBook大数据架构

集群专题

伸缩性scalable

大数据BigData

云计算Cloud

来源URL:http://www.jdon.com/artichect/netflix.html