Fanatiz 是全球增长最快的体育直播平台之一。它拥有数万名订阅者,特别受海外侨民欢迎,他们可以在任何地方实时观看自己球队的比赛或点播回看。如果没有 1190 Sports 的管理以及体育版权的商业化,或者Nunchee 的白标技术支持,这一切都将成为不可能。
这些业务由 Fz Sports 所有和运营,该公司在拉丁美洲、欧洲和美国设有办公室,拥有 85 名员工。它每年直播约 10,000 场比赛,相当于每天约 20 场。
图 1 — Fz Sports 移动应用 — 我的体育场
图 2 — Fz Sports 移动应用 — 我的团队首页
“我们希望成为世界上最大的数字体育场。我们的订阅用户主要关注男性和女性的足球,但我们还提供篮球、手球、高尔夫和其他体育赛事的直播,”Fz Sports 工程和技术运营副总裁Damian Krynveniuk透露。
为了将体育迷与所喜爱的内容连接起来,Fz Sports是新技术快速采纳者,其所有三项业务都建立在尖端技术和创新文化的基础上。“我们正在优化整个体育价值链,重新定义版权持有者、品牌和粉丝之间相互联系的方式,并计划成为享受和货币化体育内容的领先数字平台,”Krynveniuk补充道。
在直播事件方面,可扩展性是一个普遍的挑战。仅足球一项,就可能同时进行多达30场比赛。系统必须准备好无缝处理需求指数级增长。
Krynveniuk表示:“如果你的系统在比赛中途崩溃,你可能会失去订阅用户。他们的忠诚度是对他们球队的,而不是他们的直播平台。我们需要能够实时不间断地进行直播并管理流量高峰。”但是,拥有备用容量并不是许多人都能负担得起的奢侈品,因此Fz Sports必须找到高性能数据库平台来支持其业务。
公司使用最擅长的技术——关系型数据库构建了一个最小可行性产品。然而,它很快就遇到了可扩展性和灵活性的挑战,并且开发团队在手动维护上浪费了太多时间。
Fz Sports在多个地区和任何设备上提供内容——从可穿戴设备、智能手机到网络浏览器和智能电视。这种复杂性需要灵活的数据库来处理非结构化数据,并使其易于导航。订阅用户应该能够快速轻松地找到他们想看的体育赛事,无论是观看直播还是浏览存档。
图3 — Fz Sports手机应用 — 按需游戏列表
Fz Sports开始寻找支持非结构化数据并能够随着业务增长和适应的非关系型数据库。“我们正在寻找一个轻量级、用户友好的数据库,与JavaScript、微服务和AWS兼容。当我们进入市场时,处理高流量量的最佳数据库是MongoDB,”Krynveniuk说。
团队采用了一个MERN栈;由MongoDB、Express.js、React.js和Node.js组成的Web开发框架。MongoDB作为数据库层,中间的Express和Node作为应用层,React在最顶层创建表示层。这种方法的优点是,开发者可以使用标准方法和核心数字基础创建全栈解决方案。
最初,Fz Sports实施了MongoDB社区版,并有一个专门的团队管理12个数据库。虽然这从关系型到非关系型工作方式转变过程中的一个关键步骤,但并不是最终目的。正如Krynveniuk解释的那样:“MongoDB社区版是一个很好的起点工具,但我们觉得手动管理的限制。我们有一位全职员工专注于数据库管理,而我们更愿意让员工专注于改善订阅用户体验和界面。”
团队决定迁移到MongoDB Atlas,这是一种全面管理的数据库服务,包括支持和最佳实践指导,以及更好的仪表板、指标和工具,以优化性能。“我们对优化持有战略眼光,关注将对项目产生最大影响的项目。例如,我们与MongoDB合作进行了一个为期一个月的项目,重新组织我们的授权数据库,性能提高了100%,”Krynveniuk回忆道。“这得益于拥有非结构化数据库和MongoDB工程师的出色支持。”
Damian Krynveniuk,Fz Sports 工程和运营副总裁
对于日常业务运营,MongoDB Atlas提供了Fz Sports处理需求高峰和帮助订阅者快速找到内容的所有功能。其垂直和水平扩展数据库集群的能力,无需停机,甚至支持自动扩展和缩减,证明特别强大且具有成本效益。
团队使用Atlas中的快照和仪表板来跟踪付费点播客户并向公司其他部门报告销售情况。这些实时能力帮助Fz Sports比以前快25%地规划活动,如市场营销活动和其他渠道的激活。
MongoDB Atlas设备SDKs用于管理Fanatiz触发器,并将业务逻辑事件移动到数据库中进行查询。它将配置文件信息同步到毫秒级,并保持MongoDB并行工作的八个节点之间的数据一致性。这对于生成仪表板也很有用。
为了满足提高用户体验的优先级,Fz Sports依赖Atlas惊人的搜索和归档能力。
“我们平台上每年有超过10,000场比赛可供观看,这需要可供订阅者按需访问,”Krynveniuk说。“MongoDB Atlas搜索帮助人们快速找到他们想看的比赛,而在线归档则使数据库快速、响应迅速、成本效益高,内容在两年后归档。”在线归档降低了40%的存储成本。
团队目前正在运行一个概念验证,该验证基于Atlas搜索构建的推荐引擎。它将使用人工智能和MoreLikeThis功能,根据用户的偏好和观看历史,主动推荐用户可能喜欢的相关内容。
图4 — Fz Sports移动应用 — 实时和即将到来的比赛日历
作为新技术早期采用者,Fz Sports每年都会参加MongoDB的年度研讨会和培训课程,以确保员工技能提升并了解最新发展。团队根据对客户体验影响最大来选择测试哪些新Atlas功能。
Krynveniuk说:“使用MongoDB Atlas,我们的生产力比以往任何时候都要高。它学习曲线快,易于培训新员工,因为它非常用户友好。我们不再需要专门的数据库专家,因为我们有了MongoDB的支持。我们可以专注于改进我们的服务,因为我们知道我们有足够的灵活性来做出这些改变。”
Fz Sports也有衡量其生产力增长的指标。当它重新构建一个服务,使用MongoDB索引、在线存档和支持团队学到的最佳实践时,性能提高了50%。曾经管理大量并发观众是一个挑战,现在公司可以处理这项工作而无需额外扩展。
Krynveniuk总结道:“MongoDB Atlas是我们跨移动、网页和云所做的一切的卓越工具。拥有一个快速的事务性数据库至关重要,作为该领域的领导者,我强烈推荐MongoDB。”
Damian Krynveniuk,Fz Sports 工程和运营副总裁