追踪数据现已成为体育运动中最丰富的信号,但真正的差距在于如何将数据转化为教练真正能用的东西。

一场现代比赛以每秒 25 帧(fps)的速度从 19 个独立馈送中捕捉:每名球员、球以及每一次事件,每秒多次。对于一场锦标赛而言,这意味着 339 场比赛和 5100 万行追踪数据。然而,几乎没有数据能被最需要它的人使用。长椅上的教练无法阅读一张包含 5100 万行的表格。Coach's Corner 完全在一个平台上弥合了这一差距。

挑战不仅在于规模,还在于时机和认知。教练在几秒钟内做出决策,而非几分钟,传统分析工作流却假设相反的情况:批处理、离线仪表板和赛后回顾。即使存在洞察,它们也被埋藏在需要分析师解读和转达的工具背后。这在数据丰富、模型复杂的情况下,却让决策者在关键时刻实际上处于盲点。

认识 Coach’s Corner,“La Pizarra”

La Pizarra(“黑板”)是一款国家队技术长椅,以 Databricks App 的形式运行。教练选择一场比赛,以 2D 或 3D 形式回放,可将摄像头从转播角度切换到俯视战术视角,并以高达 8 倍速度进行擦除。回放上叠加了重要分析:射门和 xG 地图、传球网络、热力图、定位球、球队形状、控场、球迹和球员路径。与回放功能集成的还有几款高级工具:全面的排名视图、事件驱动分析、用于评估任何球队的独特 Scout 风格签名,以及能够按需生成即将对战对手档案的战术代理。

长椅视图将整场比赛置于教练手中,支持在转播和战术俯视视角之间无缝切换。通过 8 倍擦除和用于传球路线与热力图的自动叠加,控场和球队形状等战术元素成为场上的具体模式,而非遥远的指标。

image4.gif

Coach's Corner 的技术基础遵循单一指导原则:界面必须作为教练自然本能的延伸,而非复杂的分析工具。这需要一种设计,减少交互开销,优先考虑空间上下文而非传统图表,并将每个指标呈现为比赛的动态元素。通过将洞察直接锚定到比赛场地,应用消除了手动数据解读的需求,并在最相关的时候提供关键分析。

单一平台,每一跳

核心数据工程在后台进行。原始追踪馈送以 NDJSON 形式进入 Unity Catalog Volume,Auto Loader 使用 Lakeflow Connect 模式增量摄取数据。此后,Spark Declarative Pipelines 通过青铜、白银和黄金层处理数据,完全在 Photon 上以无服务器方式运行,并强制执行 46 项命名数据质量期望。最终的黄金表(包括 5100 万行的帧表)利用液体聚类,通过在小型仓库上运行的 DBSQL 实现 1-3 秒的查询响应时间。通过将所有卷、表、模型和索引整合到单一 Unity Catalog 中,该架构消除了供应商粘合代码和次要治理系统。

该架构通过抵制向专业化微服务转变,故意避免了碎片化。该系统没有将摄取、转换、服务和 AI 编排拆分为孤立的、本地优化的堆栈,而是保持在单一平台上统一。保持所有内容都在 Databricks 内,以运营一致性换取了一些理论上的灵活性:单一治理层、一致的血缘,以及系统之间无阻抗不匹配。当引入 AI 时,这一点变得尤为重要,因为无治理或不一致数据的成本会迅速累积。

Spark Declarative Pipelines 通过从命令式模型转向显式模型,重新定义了可靠性。该系统没有依赖嵌入假设的刚性作业,而是将数据质量视为头等大事,执行正式期望。这套 46 项期望具有双重目的:实时保护管道,并为下游消费者(包括回放、分析和 AI 代理)确立数据“正确性”。

下图是支持长椅视图的架构。顶部是教练接触的体验:回放、分析、球探、排名和代理。中间,每种体验都由受治理的层支持:用于数据和模型的 Unity Catalog、用于分析和服务的事务处理的 Lakehouse 和 Lakebase,以及用于相似性的 Vector Search。底部是所有一切开始的原始现实:25 fps 追踪馈送、比赛事件、球员资料和阵容,全部进入开放湖。

image2.gif

针对速度和规模的优化服务路径

为确保峰值性能,应用使用两条不同的数据检索架构路径。高速追踪回放由 Lakebase 提供支持,该系统将黄金表同步到 Postgres,以实现毫秒级的窗口化帧读取。通过允许浏览器时钟仅拉取必要帧而非扫描整场比赛,系统保持流畅的交互体验。相反,重型事件分析通过 Statement Execution API 路由到 SQL 仓库,使密集计算查询与响应的 3D 回放分离。

Lakebase 和 DBSQL 之间的这种刻意分叉解决了不同的访问模式,而非仅关注原始速度。回放功能需要对特定数据段进行顺序、延迟敏感的读取,而分析工作负载通常是探索性的,需要广泛的数据集扫描。通过隔离这些路径,每种工作负载在其理想环境中运行,防止分析峰值降低回放体验或导致不必要的过度配置。

Lakebase 和 DBSQL 之间的分离不仅关乎性能,还关乎访问模式。回放工作负载高度顺序且对延迟敏感,需要在狭窄的数据切片上进行可预测的毫秒级读取。另一方面,分析查询是突发性和探索性的,通常扫描数据集的较大部分。试图将这些统一到单一服务层中,要么会减慢回放,要么会过度配置分析。拆分路径允许每种工作负载在其理想环境中运行,而无需妥协。

基于受治理数据的 AI 球探层

智能建立在相同的受治理数据之上,而非在其旁。Scout 聊天由真实的 Genie 空间支持,可将教练的自然语言问题转换为受治理的 SQL。Vector Search 在球员资料索引上支持“相似球员”。对手档案是一个代理:Agent Bricks 主管协调 Genie、Vector Search 和 Unity Catalog 注册的 xG 模型,并通过 Unity AI Gateway 调用 Claude Model Serving,以进行受治理、可观测的 LLM 调用。每一步都在 MLflow 中追踪,代理始终有确定性的脚本化回退,因此绝不会在观众面前陷入死胡同。因为它读取与教练在板上看到的相同的目录,答案与数据保持一致。

在下方的球探视图中,教练无需编写查询;他们以在更衣室中提问的方式提问。Genie 将“询问 xG vs xBA”转化为受治理的 SQL,使用与支持长椅相同的追踪和事件数据。答案不是通用的 LLM 响应;而是基于 Unity Catalog 中注册的确切表和模型,因此球探的叙述与分析师看到的数字匹配。

image1.gif

应用 AI 中最难的问题之一不是生成答案,而是确保答案可追踪和可辩护。在教练场景中,错误或不可验证的洞察比没有洞察更糟。通过将每一次 AI 交互基于 Unity Catalog 并将所有模型调用路由通过 Unity AI Gateway,每一次响应都与受治理的数据和可观测的执行路径绑定。这使教练和分析师不仅信任输出,还信任背后的流程。

代理架构也反映了对确定性的偏好。虽然 LLM 提供综合和叙述,但数据检索、指标计算和相似性搜索等关键步骤由 Genie 和 Vector Search 等结构化系统处理。这种混合方法避免了完全生成式系统的脆弱性,同时仍支持灵活、自然的交互。

为什么重要

虽然 Coach’s Corner 植根于体育,但其架构解决了一个普遍挑战:高频数据中的“可用性差距”。大多数组织拥有大量数据量,但由于缺乏将原始输入转化为即时决策的系统,这些数据在运营上保持沉默。该项目证明,通过在单一治理框架内统一摄取、转换和 AI,数据与行动之间的摩擦被消除。

含义不仅是更快的仪表板,而是决策方式的转变。当洞察可以在同一系统中在几秒钟内生成、验证和交付时,数据的角色从回顾性分析演变为决策中的积极参与。这就是观察比赛与影响比赛之间的区别。

下方的代理视图完全体现了这种模式:从追踪数据和比赛事件开始,主管代理拉取球队的风格签名、搜索相似比赛、调用 xG 模型,然后要求 LLM 将所有这些综合成一份档案。教练看不到任何编排;他们看到一个标有“为巴西生成档案”的按钮、一个可检查的推理轨迹(如果需要),以及一份将成为比赛计划一部分的保存报告。

image3.gif

Coach’s Corner 最初构思为专注于体育的应用,现已演变为现场娱乐领域现代数据和 AI 系统的决定性蓝图。通过一次性落地原始数据并通过可靠的管道进行精炼,系统确保信息通过针对每种特定工作负载的最佳路径提供。该过程将原始输入转化为在决策精确时刻可用的受治理、可操作智能。该举措的主要收获很明确:当数据管理、服务和 AI 在单一平台上统一时,洞察即可转化为即时行动。

想构建类似的东西?探索 Databricks Apps 文档以交付您自己的全栈数据应用,了解 Lakebase 如何将毫秒级 Postgres 服务引入湖屋,并学习 Genie 和 Agent Bricks 如何在您的数据之上添加受治理的自然语言智能,所有这些都在单一 Unity Catalog 下。