AI News HubLIVE
站内改写4 分钟阅读

NBCUniversal 无痛迁移:借助 Databricks 实现可扩展分析

NBCUniversal 通过迁移至 Databricks 数据智能平台,实现了 30% 的成本降低,并提升了可扩展性和分析能力。与 EXL 合作,采用分阶段迁移策略,利用自定义加速器实现自动化,并统一了机器学习和分析工作负载。

作为全球领先的媒体和娱乐公司,NBCUniversal 依赖数据为其全球广播、有线电视和流媒体网络提供无与伦比的娱乐体验。随着内容交付需要实时分析、复杂数据管道和先进机器学习,公司的数据基础设施成为支持整个业务决策的关键资产。

NBCUniversal 已有百年创新历史,它认识到需要现代化其数据基础设施,以支持不断增长的内容生态系统,同时控制运营成本。随着数据量的增长和分析需求的变化,公司寻求更可扩展和集成的解决方案。现有基础设施支持核心分析需求,但也暴露出在灵活性、高级工作负载性能以及优化计算支出以提升运营效率方面的改进机会。

“NBCUniversal 一直在致力于使数据可操作化并扩大对公司各部门的访问,这需要一个让我们能更快工作的新解决方案,”NBCUniversal 数据技术与产品高级副总裁 Kevin Hill 表示。“Databricks 让我们能够减少构建时间,更多时间用于分析数据。”

当 NBCUniversal 着手现代化其数据平台时,目标是解锁敏捷性,以便在重大内容发布、颁奖典礼和直播活动期间进行扩展,而无需过度配置。与 EXL 和 Databricks 合作,NBCUniversal 迁移到 Databricks 的作业特定计算,将分析和机器学习统一到一个平台上,并带动了 300 名分析师。

成果一览

  • 通过作业特定计算减少 30% 的数据基础设施成本
  • 300 多名分析师顺利迁移到 Databricks SQL
  • 高流量事件弹性扩展,无需预先保留槽位造成浪费
  • 通过 MLflow 和 Lakeflow Jobs 统一 ML 和分析

挑战:平衡成本与性能 随着 NBCUniversal 不断创新,数据对营销、产品和内容等团队的决策变得更加关键。现有架构无法充分管理快速增长的数据量或查询需求。基于槽的预留模型允许组织预留大量槽位以支持并行工作负载,但导致了高昂的计算成本和资源争用。

“随着当今内容生态系统的快速演变,我们公司的合作伙伴需要更快地做出明智决策,”NBCUniversal 数据工程副总裁 Louie Kuznia 说。“Databricks 提供了一个解决方案,可以在不牺牲敏捷性或速度的情况下支持我们现代化数据基础设施。”

不断变化的成本考虑,以及对机器学习等高级用例的更大灵活性和增强数据血缘治理的渴望,促使 NBCUniversal 探索替代平台。

解决方案:Databricks Lakehouse 架构 NBCUniversal 与 Databricks 和全球咨询公司 EXL 合作,执行战略迁移到 Databricks 数据智能平台。这一合作结合了 EXL 深厚的迁移专长和 Databricks 领先的数据解决方案,创建了支持数据工程、机器学习和高级分析的现代化数据基础设施。

选择 Databricks 提供了多项优势,包括增强的灵活性和数据工作负载的整体效率:

  • 统一分析平台:Databricks 为数据工程、数据科学、机器学习和商业智能工作负载提供单一平台,消除了维护多个专门工具的需求。
  • 灵活的 Lakehouse 架构:Databricks 利用 Delta Lake 和 Apache Iceberg™,结合开源 Apache Spark™ 和 Lakehouse(Databricks SQL),能够灵活处理跨多种格式的结构化和非结构化数据。
  • 高级分析能力:Databricks 在支持复杂分析(包括机器学习工作负载)方面表现出色,原生集成 MLflow 用于实验跟踪和模型版本管理。
  • 细粒度计算控制:Databricks 的架构能够更精细地控制计算资源,每个数据管道在专用计算上运行,而不是竞争共享槽位。

迁移策略:分阶段、合作伙伴主导的方法 迁移到 Databricks 需要对数据结构进行转换、修改代码、调整数据格式,并仔细协调上下游依赖关系。EXL 和 Databricks 共同制定了全面的分阶段方法,在加速过渡的同时最小化运营中断。

第一阶段:评估现有环境 团队从全面发现开始,创建现有工作负载、表和代码库的清单,并彻底分析其依赖关系。此评估阶段识别了需要迁移的工件,按优先级排序,并建立了成功标准。

第二阶段:设计目标状态架构 设计阶段侧重于将现有构造映射到 Databricks 的等效项,同时优化成本和性能。 关键设计决策包括:

  • 工作区架构:根据 Databricks 良好架构框架构建工作区,将其最佳实践支柱映射到 NBCUniversal 的组织结构和安全要求,确保可扩展、安全和面向未来的环境。
  • 数据治理策略:实施 Unity Catalog 作为中央治理层。
  • 计算策略:根据每个工作负载的需求定义作业集群配置、实例类型和自动扩展策略。
  • 存储布局:设计 Delta Lake 表结构,采用适当的分区、聚簇和预测优化,以自动维护高效的文件布局、统计信息和存储,实现大规模持续性能。

第三阶段:用自定义迁移工具验证概念 在承诺全面迁移之前,EXL 使用 NBCUniversal 工作负载的代表性子集执行了有针对性的 MVP。该试点阶段有两个目的:验证迁移方法,并开发自定义自动化工具以加速大规模迁移。

在 MVP 期间,EXL 专门为 NBCUniversal 环境构建了四个专有加速器:

  • SQL 翻译引擎:一个智能代码转换器,分析 SQL 语法并自动将其转换为优化的 Spark SQL,处理方言差异、函数映射和性能调优。
  • 编排迁移器:一个工具,解析现有 DAG 并重新生成 Lakeflow Jobs,保留依赖关系和调度逻辑。
  • 数据传输协调器:自动化管道,将数据迁移到 Delta Lake,根据表大小和更新频率选择最佳传输方法。
  • 验证框架:全面的测试套件,比较源系统和目标系统之间的查询结果、行计数和聚合统计信息。

这些加速器将原本数月的 manual 工作转变为自动化、可重复的过程,并内置质量检查。

第四阶段:按战略波浪迁移 在加速器验证通过且目标架构确定后,团队按精心排序的波浪执行迁移。他们没有同时迁移所有工作负载,而是采用基于风险的方法,优先迁移高价值、低复杂度的管道。

每个迁移波浪遵循一致的模式:

  • 工作负载选择:确定一组相关的表和管道进行迁移。
  • 自动代码生成:使用 SQL 翻译引擎转换查询,使用编排迁移器重建工作流。
  • 数据同步:传输历史数据,同时保持现有基础设施的增量更新。
  • 质量保证:运行验证框架确保数据准确性和完整性。

这种迭代方法使团队能够保持业务连续性,并在每个波浪中优化流程,将经验教训应用于后续迁移。

第五阶段:通过双运行验证 在切换到 Databricks 之前,最终阶段涉及并行运行两个平台进行扩展验证期。在数周内,NBCUniversal 运行双管道,在现有平台和 Databricks 上执行相同的转换,并比较输出。

这种并行运行起到了多个关键作用:

  • 生产验证:确保 Databricks 生成的输出在实际条件下与生产数据量一致。
  • 性能基准测试:测量 Databricks 环境中的实际执行时间和成本,与历史性能进行比较。
  • 利益相关者信心:为业务用户和下游消费者提供经验证据,证明迁移保留了数据质量和可用性。
  • 切换规划:在完全停用旧平台之前,识别需要额外关注的边缘情况。

只有在所有验证指标上获得一致结果后,NBCUniversal 才进行最终切换,逐个管道地退役现有工作负载,对新平台充满信心。

业务影响:30% 成本降低和战略收益 NBCUniversal 迁移的结果是显著且可衡量的:

  • 计算成本降低:“通过过渡到 Databricks 的作业特定计算,NBCUniversal 实现了整体数据基础设施成本降低 30%。每个管道现在在其专用计算资源上运行,能够在高峰工作负载期间独立扩展,并在低需求期间自动缩减。”——NBCUniversal 数据工程副总裁 Ludwig Kuznia
  • 改进的运营灵活性:并行执行模型在响应业务需求方面提供了更大的敏捷性。在已知的高流量事件(例如重大内容发布或颁奖典礼)期间,NBCUniversal 可以动态扩展作业集群容量,而不影响其他工作负载,也不会浪费预先预留但利用不足的槽位。
  • 统一分析能力:除了成本,迁移还解锁了新能力。NBCUniversal 的数据工程团队通过 MLflow 获得了统一的 ML 操作,实现:

- 实验跟踪和模型版本管理 - 从训练到生产的简化 ML 生命周期 - 通过 Lakeflow Jobs 实现自动化工作流标准化

  • 增强的数据文化:迁移催化了更广泛的组织变革。通过简化基础设施管理和减少运营开销,NBCUniversal 为数据工程和分析团队之间创造了更敏捷、协作和数据驱动的文化。团队可以专注于业务问题,而不是基础设施限制。
  • 分析师轻松入职:超过 300 名分析师顺利迁移到 Databricks SQL,享受熟悉的 SQL 界面和现代 lakehouse 的强大功能,无需大量再培训。