2009年Netflix举办了一场Netflix大奖赛。他们公开一批匿名数据,允许参赛团队使用以得出更好的算法。他们从获胜的团队中得到了现有算法10.06%的提升。Netflix本想再举行一场Netflix大奖赛,但最终由于FTC(联邦贸易委员会)对隐私问题的考虑而取消。

Netflix的推荐系统包含许多算法。用于生产系统的两个核心算法是有限玻尔兹曼机(RBM,Restricted Boltzmann Machines)和一种称为SVD+ +的矩阵分解法(Matrix Factorization)。这两种算法用线性混合方式来结合产生一个单一的更高精度的估算值。

RBM是被修改为可以进行协同过滤的神经网络。每个用户都有一个RBM,其输入节点都代表用户评分过的电影。

SVD + +是一种非对称形式的SVD(奇异值分解),使用用像RBM一样的隐含信息。它是Netflix大赛奖的获奖团队开发的。

Netflix团队在他们的技术博客上的报道:Learning a Personalized Homepage

开源项目

https://netflix.github.io/。Netflix有一个优秀的工程博客,他们最近发布了一个帖子叫做The Evolution of Open Source at Netflix。

大数据

Genie:一个强大的,基于REST的抽象体,应用于我们的各种数据处理框架,尤其是Hadoop。

Inviso:提供了对我们的Hadoop工作和集群性能的详细见解。

Lipstick:以一种清晰的视觉方式展示了Pig工作流程。

Aegisthus:从Cassandra批量抽象数据以供下游分析处理。

建造和交付工具

Nebula:Netflix分享其内部基础设施建设的工具。

Aminator:一个用于创建EBS AMI的工具。

Asgard:亚马逊Web服务(AWS)用于应用程序部署和云管理的Web界面。

一般运行服务和程序库

Eureka:Netflix云平台服务搜索

Archaius:分布式配置。

Ribbon:弹性和智能化进程及服务通信。

Hystrix:提供单一服务调用外可靠性。在运行时隔离延迟和容错。

Karyon和Governator:JVM容器服务。

Prana sidecar:提供实例内代理功能。

Zuul:在云部署的边缘提供动态脚本代理。

Fenzo:为云计算本地框架提供先进的调度和资源管理。

数据持久性

EVCache和Dynomite:用于大规模Memcached和Redis。

Astyanax和Dyno:更好地使用云数据存储的客户端库。

分析、可靠性和性能

Atlas:时间序列遥测平台

Edda:跟踪云变化的服务

Spectator:与Atlas易集成Java应用程序代码

Vector:以最小的花费获取高分辨率主机级指标。

Ice:获取当前成本和云使用趋势。

SimianArmy:Netflix实例随机故障测试。

安全

Security Monkey:有助于监测和保护的基于AWS的大环境。

scumblr:利用全网针对性搜索定位特定安全问题以进行调查。

MSL:一种可扩展的、灵活的安全消息传递协议,解决了许多安全通信使用情况和需求。

falcor:通过虚拟的JSON图以单域模型展现远程数据源。

restify:Node.jsREST架构,专门用于Web Service API

Rxjs:JavaScript的反应式编程库

http://www.tuicool.com/articles/7zaqye

Netflix的更多相关文章

  1. 转 Netflix OSS、Spring Cloud还是Kubernetes? 都要吧!

    Netflix OSS.Spring Cloud还是Kubernetes? 都要吧! http://www.infoq.com/cn/articles/netflix-oss-spring-cloud ...

  2. Spring-cloud & Netflix 源码解析:Eureka 服务注册发现接口 ****

    http://www.idouba.net/spring-cloud-source-eureka-client-api/?utm_source=tuicool&utm_medium=refer ...

  3. netflix:Conductor微服务编排引擎

    项目地址: https://github.com/Netflix/conductor Conductor 是 Netflix 受需要运行全球流媒体业务流程的启发,构建的基于云的微服务编排引擎. Con ...

  4. Microservices Reference Architecture - with Spring Boot, Spring Cloud and Netflix OSS--转

    原文地址:https://www.linkedin.com/pulse/microservices-reference-architecture-spring-boot-cloud-anil-alle ...

  5. 转:netflix推荐系统竞赛

    原文链接:Netflix recommendations: beyond the 5 stars (Part 1), (Part 2) 原文作者:Xavier Amatriain and Justin ...

  6. [curator] Netflix Curator 使用

    curator简介 Netflix curator 是Netflix公司开源的一个Zookeeper client library,用于简化zookeeper客户端编程,包含一下几个模块: curat ...

  7. Netflix Falcor获取JSON数据

    Netflix开源了JavaScript库Falcor,它为从多个来源获取JSON数据提供了模型和异步机制. Netflix利用Falcor库实现通过JSON数据填充他们网页应用的用户界面.所有来自内 ...

  8. 【云计算】Netflix 开源持续交付平台 Spinnaker

    oschina        发布于: 2015年11月19日 (0评)          分享到:    收藏 +1 CDS首都在线全球云主机.全球私有网络,开工送礼,免费试用! »   日前,Ne ...

  9. Netflix Zuul 了解

    Zuul 是提供动态路由,监控,弹性,安全等的边缘服务.Zuul 相当于是设备和 Netflix 流应用的 Web 网站后端所有请求的前门.Zuul 可以适当的对多个 Amazon Auto Scal ...

  10. 学了这四招,你在Linux上观看Netflix视频不发愁

    导读 一份崭新的Linux发行版已经安装到你的电脑上,你完全准备好使用免费开源办公软件处理长时间的工作.但是你可能会问自己:"难道除了工作,就没有乐趣可言?我就是想观看Netflix视频!& ...

随机推荐

  1. [ javascript ] 司徒正美的fadeOut-fadeIn效果!

    首先感谢司徒正美的文章! 在司徒大神的博客看到一个简单的渐入渐出的效果.全然採用js实现. 例如以下: <!doctype html> <html dir="ltr&quo ...

  2. 跟我一起学extjs5(19--模块记录的拖放删除、拖放复制新增)

    跟我一起学extjs5(19--模块记录的拖放删除.拖放复制新增)         网页其中的拖放(drag-drop)是比較有趣的操作,extjs5中非常好的封装了拖放的动作,也有各种类来支持,可是 ...

  3. 我的IOS学习之路(三):手势识别器

    在iOS的学习中,对于手势的处理是极为重要的,如对于图片,我们经常需要进行旋转,缩放以及移动等.这里做一下总结,详见代码. - (void)viewDidLoad { [super viewDidLo ...

  4. 如何修改MFC发布程序的图标

    (1)第一种方法,直接替换工程路径下面res下面的ico图标,然后重新编译,一般需要重启系统才会生效: (2)第二种方法,在VS工程资源预览窗口的ICO下增加一个ico资源,名为IDR_ICON1,然 ...

  5. Hibernate学习之延迟加载

    转自:http://www.cnblogs.com/xiaoluo501395377/p/3371776.html 在hibernate中我们知道如果要从数据库中得到一个对象,通常有两种方式,一种是通 ...

  6. JBoss 系列二十一:JBossCache核心API

    内容简介 本处介绍JBossCache相关的主要API,我们目的通过本部分描述,读者可以使用JBossCache API,在自己的应用中使用JBossCache. Cache接口 Cache 接口是和 ...

  7. Linux下 保存 git账号密码

    一.通过文件方式 1.在~/下, touch创建文件 .git-credentials, 用vim编辑此文件,输入内容格式: touch .git-credentials vim .git-crede ...

  8. mysql 组合索引

    MySQL单列索引是我们使用MySQL数据库中经常会见到的,MySQL单列索引和组合索引的区别可能有很多人还不是十分的了解,下面就为您分析两者的主要区别,供您参考学习. 为了形象地对比两者,再建一个表 ...

  9. 理解Python的with as语句

    简单的说, with open(filepath, 'wb') as file: file.write("something") 等价于: file = open(filepath ...

  10. Linux C 实现Ping功能的程序.

    ping命令是用来查看网络上另一个主机系统的网络连接是否正常的一个工具.ping命令的工作原理是:向网络上的另一个主机系统发送ICMP报文,如果指定系统得到了报文,它将把报文一模一样地传回给发送者,这 ...