Netflix展示大数据分析基础架构

简介:
+关注继续查看

Netflix资深软件工程师Tom Gianos和Netflix大数据计算工程经理Dan Weeks在2016年度QCon旧金山活动中介绍了Netflix的大数据策略和分析基础架构,此外还概括介绍了他们的数据规模、S3数据仓库,以及他们的大数据大数据联合编排系统(Federated orchestration system)Genie。

为了介绍具体的需求,Weeks解释称,“规模”是Netflix在大数据领域面临的最大挑战。该公司在全球范围内有超过8600万会员,每天通过流播的方式播放总时长超过1.25亿小时的内容。这样的规模导致他们的数据仓库容量已经超过60PB。

尽管很多人可能觉得视频流播数据是Netflix数据分析工作的主要数据源,但Weeks解释说,他们分析的主要是其他类型的数据,例如公司内部各种微服务和营销活动产生的事件,尤其是Weeks专门提到:

Netflix是一家彻头彻尾的数据驱动型公司。我们喜欢根据真凭实据作出不同的决策。对于整个平台的某些变更,如果无法切实证明有助于改善用户体验,我们宁愿不进行这样的变更。

Weeks列举了一个此类数据类型的用例:A/B测试。数据科学家可以分析用户的交互,进而决定向用户永久推送哪些类型的功能。

Weeks还概括介绍了Netflix的数据流程架构。他们共使用了两个数据流,一个用于事件数据,一个用于维度数据。事件数据通过他们的Kafka数据管道传递,维度数据则使用开源工具Aegisthus从他们的Cassandra群集拉取。最终,所有类型的数据汇总至S3。

虽然传统数据仓库可以使用HDFS,但Weeks提到使用S3可以获得其他一些优势。例如99.99%可用性、版本控制,以及将计算负载从存储系统中剥离的能力。最后一点非常关键,尽管数据未能本地保存会导致延迟增高,但通过这样的剥离可以很轻松地在无须移动数据的前提下对计算群集进行缩放或执行升级任务。

在数据仓库方面,为了获得所需数据,Weeks介绍说他们使用了一种名为Metacat的元数据系统。具体来说,该系统提供了有关确定如何处理数据所需的信息,此外还可以从中了解数据具体是什么,保存在哪里。由于这是一种联合(Federated)系统,因此可在Hive、RDS、S3等存储的基础之上运行的技术。

Weeks还介绍说,数据本身存储为Parquet文件格式。这是一种列式存储格式,借此可获得更高压缩率。Parquet文件还可以存储额外的元数据,例如有关列最大/最小长度及其体积的信息。这样诸如计数或跳过之类的操作就可以非常快速地执行完毕。

有关Parquet调优地详细信息已由Netflix资深软件工程师Ryan Blue公开发布至这里。

在Weeks从底层介绍他们的大数据环境后,Gianos从较高层面进行了介绍。他介绍的内容主要围绕Genie,这是一种联合编排引擎,可用于管理诸如Hadoop、Pig、Hive等不同类型的大数据作业。

为了介绍他们针对Genie的具体需求,Gianos用一个简单的用例作为例子:少量用户同时访问同一个群集。虽然这种情况非常易于管理,但随着组织规模的增大,可能会面临不同的情况,导致对客户端资源和群集资源的需求激增,进而导致部署变得愈加复杂。这就导致了导致数据科学家经常遇到的问题,例如作业速度变慢,数据处理库过时等,这也使得系统管理员难以轻松地对这些问题作出响应。

按照Gianos的介绍,Genie可以帮助系统管理员执行群集的启动和管理、库文件的安装等任务,这一切都不会影响到最终用户。从用户的角度来看,用户可以通过这样的抽象直接访问群集,而无须考虑如何连接到群集,也不需要了解群集上到底运行了什么。

在群集的更新方面,Gianos介绍说,只要成功通过测试,只需要添加对应的标签即可顺利迁移至新群集。Genie可以对所有工作进行编排,并让原本的作业继续在老群集上运行,同时新提交的作业可以在新群集上运行。这样即可实现不停机更新。

Genios还介绍说,Genie的标签机制可以应用于负载均衡,为此只需跨越群集对标签进行复制即可拆分负载。从客户端的角度来看,这一过程是完全透明的。

另外Genios也介绍了Genie的二进制更新机制。新的二进制文件可以移动到一个集中的下载位置,随后在下一次调用时自动替换老的文件。

Genios从数据科学家的角度演示了Genie的完整工作流。基本上,他们只需要将作业提交至Genie,其中可包含群集标签等元数据,以及自己希望使用的大数据处理引擎。随后Genie可以查找最适合运行该作业的群集。Genie的界面会通过用户反馈告诉用户作业的运行进度。

本文转自d1net(转载)

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
5月前
|
存储 SQL 机器学习/深度学习
【数据架构】Netflix 万亿级实时数据基础架构的四个创新阶段(下)
【数据架构】Netflix 万亿级实时数据基础架构的四个创新阶段
|
5月前
|
消息中间件 机器学习/深度学习 监控
【数据架构】Netflix 万亿级实时数据基础架构的四个创新阶段(上)
【数据架构】Netflix 万亿级实时数据基础架构的四个创新阶段
|
5月前
|
云安全 供应链 监控
《云原生架构容器&微服务优秀案例集》——06 国际项目—— Salesforce 社交电商容器化改造,成功落地安全可信软件供应链
《云原生架构容器&微服务优秀案例集》——06 国际项目—— Salesforce 社交电商容器化改造,成功落地安全可信软件供应链
104 0
|
5月前
|
存储 分布式计算 Kubernetes
带你读《2022年开源大数据热力报告》——热力趋势三:云原生大规模重构开源技术栈
带你读《2022年开源大数据热力报告》——热力趋势三:云原生大规模重构开源技术栈
114 0
|
6月前
|
存储 机器学习/深度学习 数据采集
案例研究:Netflix 大数据分析—数据驱动推荐的出现
Netflix 是当今市场上最大的在线流媒体提供商之一。它于 1997 年开始销售 DVD 并以出租方式提供。但随着时间的推移以及市场和用户需求的变化,Netflix不得不将其商业模式转变为视频流。如今,许多其他视频流媒体平台都在提供优质内容,如 Hulu、espn、disney+ 等,为了留在市场并吸引客户,netflix 在其推荐系统中使用大数据分析。该推荐系统有助于根据客户的兴趣和需求向他们推荐电影和节目。使用从订阅者处收集的大量数据,例如用户的位置;用户观看的内容、用户搜索的数据以及用户观看的时间,Netflix 分析这些数据为客户提供更好的订阅服务。基于这些数据,训练算法以提供最佳的
208 0
|
8月前
|
Cloud Native IDE 安全
IT系统应用开发的发展趋势分析
IT系统应用开发的发展趋势分析
|
8月前
|
运维 Cloud Native 架构师
展望架构的2023:Serverless 兴起,下一代微服务的雏形和标准化开始呈现
2022 年,架构领域发生了哪些值得关注的事情?一位架构师必备哪些技能?2023年哪些架构趋势需要掌握?Nacos 和 MSE 创始人、阿里云高级技术专家彦林做客 InfoQ 直播间,为我们带来 2023 年的架构师发展指南。
448 0
|
缓存 前端开发 jenkins
分析Netflix公司产品Spinnaker的微服务实践
Netflix 是业界微服务和 DevOps 组织的楷模,有大规模生产级微服务的成功实践。微服务有些公司甚至比 Netflix 做得更早,但 Netflix 大概是大规模生产级微服务做得最杰出的。
143 0
分析Netflix公司产品Spinnaker的微服务实践
|
消息中间件 存储 SQL
Netflix:如何打造开放协作的实时 ETL 平台?
本文由 Netflix 高级软件工程师徐振中分享,内容包含有趣的案例、分布式系统基础方面的各种挑战以及解决方案,此外还讨论了其在开发运维过程中的收获,对开放式自助式实时数据平台的一些新愿景,以及对 Realtime ETL 基础平台的一些新思考。
|
数据采集 机器学习/深度学习 监控
mPaaS 核心组件:支付宝如何为移动端产品构建舆情分析体系?
移动舆情分析 MMA(Mobile Media Analysis)通过采集应用内、应用市场反馈及外部媒体等内容,经过机器学习、自然语言处理等大数据技术,为企业的产品进化、运营、营销、公关提供实时、有效的舆情监控-分析-预警-处理的闭环能力,帮助企业发现与跟踪产品问题,收集产品建议,危机公关,辅助市场调研、产品营销与竞争分析。
2397 0
推荐文章
更多