首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Netflix 规模的标题发布可观察性(译文)

作者:Varun Khaitan

特别感谢我出色的同事:Mallika Rao、Esmir Mesic、Hugo Marques

在第 1 部分的基础上,我们探讨了 Netflix 影片发布可观察性挑战背后的“原因”,本文将重点转移到“方法”。我们如何确保每部影片都能无缝发布并被合适的受众发现?

在动态的技术世界中,人们很容易陷入解决问题的模式。但持久成功的关键在于退一步——在深入研究解决方案之前先了解更广泛的背景。这种深思熟虑的方法不仅可以解决眼前的障碍;它还可以构建未来所需的弹性和可扩展性。让我们探索这种思维方式如何推动成果。

了解大局

让我们全面了解所涉及的所有要素以及它们如何相互关联。我们应该努力解决以下问题:什么对业务至关重要?问题的哪些方面是必须解决的?我们是如何到达这一点的?

该过程涉及:

确定利益相关者:确定谁会受到问题的影响,以及谁的意见对于成功解决问题至关重要。在这种情况下,主要的利益相关者是:-标题发布运营商角色:负责将标题及其元数据设置到我们的系统中。挑战:不了解他们的设置对这些感知到的黑盒个性化系统的连锁反应-个性化系统工程师角色:开发和操作个性化系统。挑战:最终在标题发布和个性化调查上花费了计划外的周期。-产品经理角色:确保我们为会员提供最佳体验。挑战:会员可能不会与最相关的标题建立联系。-创意代表角色:内容创作者和 Netflix 之间的调解人。挑战:与内容创作者建立对 Netflix 品牌的信任。

绘制当前格局:通过绘制现有格局,我们可以确定需要改进的领域并避免重复工作。除了零散的解决方案和临时脚本之外,显然没有成熟的游戏发布可观察性解决方案。这表明该领域已被忽视了很长一段时间,可能需要大量投资。这种情况既带来了挑战,也带来了机遇;虽然取得初步进展可能更加困难,但有很多容易获得的成功可以利用。

明确核心问题:通过明确定义问题,我们可以确保我们的解决方案解决根本原因,而不仅仅是症状。虽然我们可以解决许多问题,但这里的核心问题是确保我们的个性化堆栈公平对待每个标题。如果我们能够自信地确保公平对待,并让所有利益相关者都能看到这一点,我们就可以解决他们面临的所有挑战。

评估业务优先级:了解对组织而言最重要的事项有助于有效地确定行动和资源的优先级。在此背景下,我们专注于开发系统,以确保成功发布游戏、在内容创建者和我们的品牌之间建立信任并减少工程运营开销。虽然这是一个关键的业务需求,我们绝对应该解决它,但必须评估它与组织不同领域的其他优先级相比如何。

定义健康标题

驾驭如此模糊的空间需要共同理解,以促进清晰度和协作。为了解决这个问题,我们引入了“标题健康”一词,这一概念旨在帮助我们有效沟通并捕捉保持每个标题可见性和性能的细微差别。这种共同语言成为讨论该领域复杂性的基础。

“图书健康度”涵盖各种指标和指标,反映图书在可发现性和会员参与度方面的表现。我们尝试回答的三个主要问题是:

所有

成员都可以看到这个标题吗?

该标题是否能被适当规模的受众看到?

该书名是否触及了所有合适的受众

定义标题健康度提供了一个框架来监控和优化每个标题的生命周期。它使我们能够在构建解决方案之前与合作伙伴就原则和要求达成一致,确保每个标题都能无缝地到达其目标受众。这种通用语言不仅有效地介绍了问题空间,还加速了团队之间的协作和决策。

问题类别

为了制定一个完善的标题发布可观察性计划,我们首先需要对遇到的问题类型进行分类。这种结构化方法使我们能够全面解决标题健康的各个方面。

目前,这些问题主要分为三类:

1. 标题设置

影片的设置包括元数据(例如发布日期、音频和字幕语言、编辑标签)和资产(例如插图、预告片、补充信息)等基本属性。这些元素对于影片的连续播放资格、准确的个性化和引人入胜的呈现至关重要。由于这些属性直接输入算法,因此任何延迟或不准确都会对系统产生连锁影响。

可观察性系统必须确保标题设置完整并及时验证,识别潜在的瓶颈并确保启动过程顺利。

2.个性化系统

标题可以在产品的多个画布上推荐 — 主页、即将推出、消息传递、搜索等。个性化系统负责处理这些画布上的标题推荐和提供,利用庞大的微服务、缓存、数据库、代码和配置生态系统来构建这些产品画布。

我们的目标是验证标题在标题发布的所有阶段中是否符合端到端个性化堆栈中所有适当产品画布的资格。

3. 算法

复杂的算法推动着每项个性化产品体验,为每位会员推荐量身定制的图书。这里的可观察性意味着验证所有图书的算法推荐的准确性。算法性能可能受到各种因素的影响,例如模型缺陷、不完整或不准确的输入信号、特征异常或图书之间的相互作用。识别和解决这些问题可确保推荐保持准确和有效。

通过将问题分类到这些领域,我们可以系统地应对挑战,并为我们平台上的每个标题提供可靠、个性化的体验。

问题分析

我们还想进一步了解一下这类问题出现的频率,以及一旦出现这些问题需要花多少精力去解决。

从上图可以看出,设置问题最为常见,但也很容易修复,因为返回并纠正标题的元数据相对简单。系统问题(主要表现为个性化微服务中的错误)并不少见,需要付出适度的努力才能解决。算法问题虽然罕见,但确实很难解决,因为这些问题通常涉及解释和重新训练复杂的机器学习模型。

评估我们的选择

现在,我们更深入地了解了我们想要解决的问题以及我们应该如何优先安排我们的资源。让我们回到第 1 部分中讨论的两个选项,并做出明智的决定。

最终,我们意识到这个领域需要我们讨论过的全部功能。但问题仍然存在:我们从哪里开始?经过仔细考虑,我们选择首先专注于主动问题检测。在发布之前发现问题最有可能对业务产生影响,确保更顺畅的发布、更好的会员体验和更强的系统可靠性。

这一决定不仅是为了解决当今的挑战,也是为了为可扩展、强大的系统奠定基础,该系统可以随着我们不断发展的平台的复杂性而增长。

接下来

在下一次迭代中,我们将讨论如何设计适用于所有个性化系统的可观察性端点。创建微服务 API 端点时需要注意哪些主要事项?我们如何确保标准化?所涉及系统的架构是什么?

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OYTO6eNp-EOPhyrZg_cJknkA0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券