工程的博客

如何构建一个服务质量(QoS)流媒体视频分析解决方案服务

分享这篇文章

点击以下链接查看和下载QoS笔记本在本文下面讨论。

内容

流媒体视频服务质量的重要性

随着传统付费电视继续停滞不前内容所有者接受直接面向消费者(D2C)订阅和广告支持流媒体库的内容货币化。公司的整个业务模式围绕生产的内容,然后授权分销商,转向现在拥有整个glass-to-glass经验要求供应链构建媒体等新功能内容交付给消费者,为各种各样的设备支持应用程序和操作系统,并执行客户关系计费和客户服务等功能。

与大多数vMVPD(虚拟多通道视频编程经销商)和SVOD(视频点播)服务每月更新,订阅服务运营商需要证明他们的价值用户每个月/周/日(观众留下AVOD障碍(广告视频点播)甚至更低——只是打开一个不同的应用程序或通道)。一般的视频质量问题(包括缓冲、延迟、像素、抖动、包损失,和空白屏幕)有显著的业务影响,无论是增加用户流失减少视频订婚

当你开始流你意识到有很多地方休息可以和观众体验会发生,无论是一个问题在云中的服务器on-prem或来源;在运输过程中在CDN水平或ISP层面或观众的家庭网络;或在播出级别球员/客户问题。在n x 10什么优惠4并发飘带在n x 10不同的优惠5或n x 106。没有预发布测试,可以完全复制真实的用户和他们的能力推动即使最冗余系统断裂点浏览电视频道,点击的应用,同时从不同的设备上的标志,等等。因为电视的本质,在最重要的事情会出错,高调的事件画最大的观众。如果你开始收到投诉在社交媒体上,你怎么能告诉如果他们是唯一的一个用户或者区域或国家的问题?如果国家,它是所有设备或只有某些类型(例如,可能OEM更新旧设备上的操作系统类型与客户最终导致兼容性问题)?

>识别、医治和预防观众体验质量问题成为一个大数据问题当你考虑用户的数量,他们正在采取行动,和传递的数量的经验(服务器CDN ISP家庭网络客户端)。服务质量(QoS)帮助理解这些数据流,所以你可以理解是错误的,在哪里,为什么。最终你可以进入预测分析在哪些方面可能出现问题,如何调整它在任何减免。

砖QoS解决方案概况

这个解决方案的目的是提供流媒体视频的核心平台,想改善他们的QoS系统。bob体育客户端下载它是基于AWS流媒体分析的解决方案AWS提供的实验室,我们然后之上添加砖作为一个统一的数据分析平台,实时的见解和先进的分析功能。bob体育客户端下载

bob体育 熊掌号 ,流媒体平台可以bob体育客户端下载得到更快的见解利用总是最完整和最近的数据集的健壮和可靠的数据管道,减少投放市场的时间加速数据科学使用新特性的一个协作环境支持端到端机器学习管理生命周期,减少运营成本在所有的软件开发周期有一个统一的数据平台工程和科学数据。bob体育客户端下载

视频QoS解决方案架构

与低延迟等复杂性监视警报和高度可伸缩的基础设施所需的视频交通的高峰时间,简单的建筑选择是三角洲体系结构——标准大数据架构λ和Kappa架构有缺点在操作力气就能保持多种类型的管道(流和批处理)和缺乏支持统一的数据工程&数据科学方法。

三角洲体系结构是下一代范式,使所有类型的数据角色在你的组织更有效率:

  • 数据工程师可以开发数据管道以成本有效的方式不断无需选择批处理和流
  • 数据分析师可以得到接近实时的见解和更快的回答他们的BI查询
  • 数据科学家可以开发更好的机器学习模型使用更可靠的数据集和支持时间旅行,促进了可再生的实验和报告

三角洲视频流QOS架构使用数据管道的“种”的方法

图1三角洲体系结构使用数据管道的“种”的方法

写数据管道使用三角洲体系结构遵循最佳实践的多层“种”的方法,我们逐步添加数据结构:“青铜”表或摄入表通常是原始数据集的原生格式(JSON、CSV或txt),“银”表代表清洁/转换数据集准备报告或数据科学与“黄金”表最后的表示层。

纯流使用情况下,出现在中间三角洲Dataframes表的选择基本上是只是一个延迟/ sla和成本之间的权衡(一个例子是实时监测预警与更新的推荐系统基于新内容)。

流媒体视频QOS架构仍然可以实现在显现dataframes三角洲表

图2流体系结构仍然可以实现在显现dataframes三角洲表

这种方法中“跳”的数量是直接影响下游的消费者数量,聚合的复杂性(如结构化流执行某些限制在链接多个聚合)和运营效率的最大化。

周围的QoS解决方案体系结构主要是数据处理的最佳实践,而不是一个完整的视频点播(视频点播)解决方案-一些标准的组件(比如“前门”服务Amazon API网关从高级体系结构,以避免保持专注于数据和分析。


高级QoS平台的体系结构bob体育客户端下载

图3 QoS平台的高级体系结构bob体育客户端下载

让你的数据分析做好准备

来源的数据包括在QoS解决方案(应用程序事件日志和CDN)是使用JSON格式的数据交换——允许你代表复杂的嵌套结构,但不是可伸缩且难以维护作为数据的存储格式湖/分析系统。

为了使数据直接可查询整个组织,铜银管道(“让每个人都能看到你的数据”管道)应将任何原始格式转换为三角洲和包括所有所需的质量检查或数据屏蔽任何监管机构。

视频应用程序事件

基于体系结构中,视频应用程序事件直接推动运动流,然后只摄取到三角洲附加表没有任何更改模式。

原始格式的应用程序事件被砖QoS的解决方案。

图4原始格式的应用程序事件

使用这种模式允许大量的消费者下游过程中的数据流模式无需动作流的吞吐量。作为使用增量表的副作用水槽(支持优化),我们不需要担心的方式处理窗口的大小将影响文件的数量在你的目标表,称为“小文件”问题在大数据世界。

时间戳和类型的消息被从JSON中提取事件为了能够分区数据,允许消费者选择他们想要的类型的事件过程。再结合单个动作的事件流与三角洲“事件”表减少了操作的复杂性而使事情更容易扩展高峰时段。

所有的细节都从JSON银表

图5的所有细节从JSON中提取银表

CDN日志

CDN日志送到S3,所以最简单的方法处理它们是砖自动加载程序,逐步和有效的流程为到达的新数据文件在S3中没有任何额外的设置。

auto_loader_df = spark.readStream。格式(“cloudFiles”)\.option (“cloudFiles.format”,“json”)\.option (“cloudFiles.region”,地区)\.load (input_location)anonymized_df = auto_loader_df.select (‘*’ip_anonymizer (“requestip”).alias (“知识产权”))\.drop (“requestip”)\.withColumn (“起源”,map_ip_to_location(坳(“知识产权”)))
              
              anonymized_df。writeStream \.option (“checkpointLocation”checkpoint_location) \格式(“δ”)\.table (silver_database +“.cdn_logs”)

日志包含ip——考虑下个人资料GDPR规定——“让每个人都能看到你的数据管道必须包括一个匿名化的步骤。可以使用不同的技术,但我们决定只带过去的八隅体从IPv4和IPv6的最后80位。之上,周围的数据集也富含信息来源国家和ISP提供者将使用后的网络操作中心的本地化。

创建仪表板/虚拟网络操作中心

流媒体公司需要监控网络性能和用户体验尽可能接近实时追踪到个人层面细分级别的抽象的能力,很容易定义等新领域定义的真命天子,设备、网络、和/或当前和历史浏览行为。流公司采用的概念,这意味着网络操作中心(NOC)从电信网络监控的健康流体验他们的用户在宏观层面上,标记和回应任何问题。最基本的,国有石油公司应该仪表板,比较当前的用户体验和性能基线,以便产品团队可以快速、轻松地识别和处理任何服务异常。

在QoS解决方案我们已经注册一个砖仪表板。BI工具也可以毫不费力地连接为了构建更复杂的可视化效果,但是根据客户反馈,内置的仪表板是大部分时间最快的方式呈现业务用户的见解。

NoC的聚合表将主要是三角洲的黄金层架构- CDN的组合和应用程序事件日志。

例子网络运营中心指示板砖视频QoS解决方案。

图7的例子网络运营中心仪表板

仪表板是一种视觉化的包SQL查询的结果或Python / R变换——每个笔记本支持多个仪表盘的多个终端用户不同的需求我们不需要重复的代码——作为奖金刷新也可以预定一个砖的工作。

可视化数据砖内的SQL查询的结果视频QoS解决方案。

图7显示一个SQL查询的结果

第一帧视频加载时间(时间)可以更好地了解你个人的位置CDN性能——在这种情况下,AWS CloudFront边缘节点——在你的策略直接影响了改善这种KPI——通过传播的用户流量multi-CDNs或者只是实现一个动态来源选择的AWS CloudFront使用(电子邮件保护)

例子视频加载时间的可视化数据砖视频流Qos解决方案

未能理解的原因高水平的缓冲,它带来的糟糕的视频质量体验——有一个对用户流失率产生重大影响。最重要的是,广告商不愿意把钱花在广告负责减少观众参与——因为他们添加额外的缓冲,所以广告业务上的利润通常也有影响。在这种背景下,收集尽可能多的信息从应用程序是至关重要的,允许视频层次的分析不仅要做但也浏览器甚至类型/版本的应用程序。

例子黄油时间数据可视化的砖视频流的QoS解决方案。

在内容方面,事件的应用程序可以提供有用的信息对用户行为和整体质量的经验。有多少人,暂停视频已经看完了一集/视频吗?是停止的原因有内容或交付的质量问题?当然进一步的分析可以通过链接一起来源(cdn的用户行为、性能/ isp)不仅创建一个用户配置文件还预测生产。


样本数据可视化提供洞察用户行为可以通过砖视频流的QoS解决方案。

创建(附近)实时警报

在处理速度、体积和各种数据生成的视频从数以百万计的并发用户,仪表板复杂性可以使操作员在NOC更难专注于最重要的数据和零在根源问题。这个解决方案,您可以轻松地设置自动警报当性能跨越某些阈值,可以帮助人类的运营商网络以及引发自动补救协议通过Lambda函数。例如:

  • 如果一个CDN有延迟远高于基线(例如,如果它是超过10%的延迟和基线平均),启动自动CDN流量变化。
  • 如果超过某个阈值如5%)的客户报告播放错误,提醒产品团队,有可能客户问题为一个特定的设备。
  • 如果观众对某ISP有高于平均水平缓冲和像素问题,提醒一线客户代表反应和方法来减少问题(例如,设置流质量低)。

从技术角度来看生成实时警报需要流引擎能够实时处理数据和发布-订阅推送通知服务。

Databrick视频流QoS解决方案集成microservices使用亚马逊SNS和Amazon SQS

Fig.8集成microservices使用亚马逊SNS和Amazon SQS

QoS解决方案实现集成microservices AWS的最佳实践通过使用亚马逊SNS及其集成与亚马逊λ(参见下面的更新web应用程序)或Amazon SQS为其他消费者。的自定义foreach作家选择使管道发送电子邮件通知的写作基于基于规则引擎(e。g验证错误的百分比为每个类型的应用程序在一段时间内)很简单。

defsend_error_notification():sns_client = boto3.client (“社交”、地区)error_message =“应用程序错误的数量已经超过了阈值{}”格式(行“比例”])
              响应= sns_client.publish (TopicArn = < TopicArn >,消息= error_message,主题= <消息>,MessageStructure =“字符串”)#结构化流媒体工作getKinesisStream (“player_events”)\.selectExpr (“类型”,“app_type”)\.groupBy (“app_type”)\苹果(calculate_error_percentage) \其中(“比例> {}”格式(阈值))\.writeStream \.foreach send_error_notification \.start ()< /消息> < / topicarn >

使用AWS SNS Fig.9发送电子邮件通知

在基本的电子邮件使用情况下,演示的球员包括三个小部件使用AWS AppSync实时更新:活跃用户数量,最受欢迎的视频,并发用户数量看视频。

三角洲视频流QOS架构使用数据管道的“种”的方法

Fig.10更新应用程序实时聚合的结果

QoS的解决方案是使用类似的方法——结构化流和亚马逊SNS更新所有的值允许插入额外的消费者使用AWS SQS -一种常见模式,当大量的事件必须增强和分析——pre-aggregate数据一次,允许每个服务(消费者)下游做出自己的决定。

下一个步骤:机器学习

手工制作的历史数据很重要,但也非常慢,如果我们希望能够自动决定未来,我们必须将机器学习算法。

作为一个统一的数据分析平台,砖授权数据科学家建立更好的数bob体育客户端下载据科学产品的使用功能,如毫升运行时的内置支持Hyperopt/Horvod/AutoML机器学习或与MLFlow集成,端到端生命周期管理工具。

我们已经研究了几个重要的用例在我们的客户基础虽然关注可能对QoS的扩展的解决方案。

故障点预测和补救

作为D2C飘带达到更多的用户,即使瞬间失去服务的成本增加。毫升可以帮助运营商从报告通过预测问题可以预防上来医治之前出现任何问题(例如,一个cdn并发观众激增导致切换到一个更有能力的自动)。

客户流失

增长的关键是让用户订阅服务。通过理解服务质量在个体层面,您可以添加QoS作为一个变量在生产和客户生命周期价值模型。此外,您可以创建客户群体对于那些有视频质量问题为了测试积极的消息传递和保存提供了。

开始使用砖视频流的QoS解决方案

提供一致的质量流媒体视频经验表中的股份在这一点上继续变化无常的观众与充足的娱乐选择呆在你的平台上。bob体育客户端下载这个解决方案我们试图创建一个快速启动的大多数视频平台环境中嵌入这QoS实时流分析解决方案的方式:bob体育客户端下载

  • 扩展到任何观众的大小
  • 快速标记质量性能问题的关键部分分配工作流
  • 足够灵活和模块化等轻松地定制你的听众和你需要创建新的自动警报或使数据科学家测试和转出预测分析和机器学习。

首先,下载的笔记本砖视频流的QoS解决方案。更多的指导如何统一批处理和流数据到一个单独的系统,查看三角洲体系结构网络研讨会。

免费试着砖
看到所有工程的博客的帖子