视图计算背后的技术架构思考

简介: 5G时代海量视图计算场景,阿里云边缘计算节点聚焦视频上云和处理方向,阿里云高级技术专家为您解读海量视图计算背后的技术与架构能力。

作者:胡帆

数据载体、算力分布正在根本性变化

视频和图片因其强大的信息承载力,已经成为数据内容的主要载体和信息传播的主要方式。5G的大带宽、低时延、广连接的特性激活了云视频监控、云游戏、物联网等场景应用,从消费互联网到产业互联网的延伸,更加促进了终端应用和视图数据的爆发。

这些终端和数据具有分散、海量和价值密度相对低的特点,以摄像头为例,IHS的研究指出,目前全球有10亿个监控摄像头在看世界,也就是持续产生视频图片数据,这个数据量是ZB级,但其中绝大部分数据价值较低,我们更需要留存产生关注事件的片段以及其结构化信息,这样的场景和需求对计算和存储的方式带来了严峻挑战和根本性变化。

新的基于边缘的数据接入、计算和缓存的分布式系统架构有效地解决了这样的问题,它能确保流量和计算收敛到本地,显著降低网络传输成本、提升计算效率,满足5G低延时处理的场景化需求。

基于边缘构建业务系统的技术挑战

海量、分布式、异构的边缘节点资源特性,会给业务带来巨大的挑战,在服务适配、弹性和高可用等方面都要进行相应处理,对业务系统而言有感,处理不好甚至会有损。

image.png

基于边缘构建业务系统,技术挑战主要来自以下几个方面:

1.边缘的节点分散且多级,节点多而体量小,需要进行复杂的管理,交互访问时关注具体位置并会有多个入口,如计算和存储的位置

2.资源的异构导致业务需要对资源进行选型,每个节点的资源类型分布也可能不均衡,如CPU、GPU、ARM阵列等不同的计算资源。

3.单一节点的弹性弱,全局的弹性强,伸缩又必须考虑部署位置和业务适配

4.单节点的割接,以及边与边、云与边之间复杂的网络环境,都可能导致服务抖动,甚至单点不可用,都需要业务系统考虑好服务漂移等问题,当任务有状态时,考虑的情况会更加复杂。

如何应对这些挑战,在使用海量分布式节点和中心云时体验简单和一致?最好只有一个交互面

视图计算-位置无感的计算、缓存和连接平台

视图计算很好地解决了这个问题,它基于广覆盖的ENS基础设施,提供位置无感的计算、缓存平台,同时为了让视图数据能更好地上云,提供了视图(终端)上云的连接平台。

image.png

如上图所示,在基础设施层,通过资源纳管、虚拟化和资源切片,形成统一的池化资源,并提供安全和隔离的能力;视图计算PaaS平台通过统一的网络、计算、存储调度,屏蔽了资源异构,以及资源的物理位置,根据业务特性、终端位置和资源状态,进行边缘资源与终端的匹配和协同调度,在保障业务低延时、高可用响应的同时,实现业务对计算、存储和连接的位置无感;

比如在安防、教培、交通物流等摄像头上云场景,设备接入、流媒体接入和处理会综合考虑可用算力、网络带宽和存储容量等节点状态,就近选取最匹配的节点,节点位置更靠近内容的生产端(摄像头)。而云游戏等场景,需要特定的渲染计算资源(如ARM板卡),同时要更靠近内容的消费端(手机端)侧,当需要多人观战直播时,又可以推流到CDN网络进行分发和异地观看。

视图计算云-边-端协同架构

构建视图计算平台核心是云边端的协同架构:
1.终端设备负责进行视图等数据的采集和汇聚,以及视图的解码和展示(即瘦终端),同时能进行指令的输入操控,或者是根据云上下发的配置和规则进行简单计算。

2.视图计算基于分散的边缘节点构建了低延时的设备接入网关,实现了多种终端上云连接协议(如GB28181/RTMP等),同时能接收实时流和视频图片文件的快速上传。在节点内或临近节点进行计算处理和周期性存储,计算结果(如结构化的AI分析数据)以及需要持久化长期存储的数据,通过边与云之间的安全加速通道实现快速回云。

3.视图在中心云进行节点和设备管理,以及统一调度、Meta汇聚等。终端设备在云上会映射到一个虚拟设备,类似于物理世界的投影(也就是影子设备),对影子设备的管理、配置和操作,都会通过信令通道快速下发、执行和反馈,当设物理设备断电或异常下线后,上下文能很好地保存,上线后会及时同步。

image.png

通过视图计算看到的是一朵云、一个交互面,而不再是N个分散入口的分布式小云,云边端的协同架构能在成本、延时和可靠性上找到最佳平衡点,比如成本上,网络带宽、计算和存储成本需要综合考量。

位置无感的多点协同计算

视图计算服务针对视图数据提供了三种位置无感的计算:

1.视图基础计算:包括转码、录制、截图等,通过编码优化,实现高压缩比,同等画质可节省20~40%的存储空间和传输带宽

2.视图AI计算:依托达摩院在计算机视觉上的算法积累,视图计算提供各种场景化的视图结构化分析、目标检测和跟踪等AI能力

3.自定义计算:自助上传和托管算子,降低算法接入成本,方便用户和算法供应商将算法集成到视图计算服务中使用。除了算子和参数能自定义,计算模式也能按照自身业务需求进行自助定制。

image.png

这些计算的最大特征是“算随网动”:计算随着数据在网络上的流动而展开,避免全量数据回传中心云处理,实现算力的下沉和终端计算的上浮。

这张网就是阿里云的边缘协同网络,它实现了终端-边缘、边缘-边缘、边缘-中心的一体化协同,为上层应用屏蔽复杂的网络环境,在提供优质的端到端接入和数据传输能力的同时,这张网注入了可计算和缓存的能力。

除了摄像头上云等常见的本地计算场景,互联网直播等场景也能基于视图计算进行边缘转码和实时AI分析,提升整体用户体验。比如直播流无需上行回传中心再分发到边缘,直接在就近节点进行转码压缩。对于80%的冷流(无人观看或极少人观看)可以直接收敛到本地,而对于热流转码后就近分发,也能降低延时和卡顿,让客户端播放更流畅。整个过程终端只需要通过统一域名进行接入,计算的具体位置不需要感知,位置无感的多点协同计算,可以像使用CDN加速一样去完成数据计算。

可自定义的场景计算

在大量场景下,你可能已经拥有了自行开发的算子或应用,或是第三方算法供应商的算子,视图计算提供开放可自定义的场景计算框架,可以将算子或应用托管在视图计算上,真正实现帮用户做自己的计算。

整个计算平台分三层架构,从下往上,对应计算环境、计算调度和计算服务。

image.png

1.计算环境,即计算资源的生产和管控层,负责容器、VM等资源的生产,文件存储,运行的系统软件和算子应用的发布,安装部署和配置,以及日志监控等,这一层也提供了基础的应用隔离能力。

2.计算调度,实现资源的弹性伸缩管理和多维度的全局负载均衡,这一层在容器等底层资源的安全隔离上进行全局规划和统筹,解决资源争抢问题,同时不同颗粒度的计算任务实现混跑,提升资源的复用率。

3.计算服务,实现算子的托管、评估和实际的分流计算,同时对计算任务进行画像分析,迭代和提升计算资源的消耗评估精准度,比如直播转码,除了编码格式、分辨率、帧率等输出参数,输入的内容源也会一定程度影响实际的资源消耗,每路转码在算力消耗上是动态上下浮动的,会导致调度资源分配的精准度,需要动态分析和校准,最终实现调度分配水位和实际资源水位的一致。

整个接入过程非常简单:
1.上传和管理算子,配置计算模板和参数;云端会进行兼容性适配和资源消耗评估。

2.在线申请算力等资源,如不同计算规格的最高并发量,云端会进行容量评估和确认,并将算子下发、部署到各计算节点。

3.内容接入或用户触发,云端对数据进行分流和计算,并将计算结果实时反馈给用户。

以云游戏为例,可加载游戏包并渲染视频流的串流镜像就是一种算子或应用,游戏厂商上传游戏包、配置好渲染规格后,云端进行相应适配、资源评估和动态分配。

位置无感分布式存储

在完成计算平台后,数据的上云存储是我们接下来要解决的问题,由于数据源的分散性,以及各种不同的价值密度和使用场景,比如体育赛事等直播内容的高价值,需要录制回放持久化存储,而视频监控场景的摄像头流相对价值偏低,只需要留存关键事件的视频片段,绝大部分数据只要缓存数天或数月即可。

如何解决数据分散存储、分级存储的访问延时、可用性和成本问题?

视图计算基于边缘分布式文件缓存和中心持久化的OSS存储提供了位置无感的分布式存储解决方案,全球各地的数据源都可以通过视图计算就近存取访问边缘节点,缓存位置会参考数据接入和计算的位置,确保整体亲和度。周期性数据会缓存到边缘,长期存储的高价值数据以及结构化分析数据会回到中心存储。

同时,视图计算通过边缘加速网络解决了跨地域跨运营商上传大文件延迟大、速度慢、易中断等问题,实现中转加速回云。

用户看到和使用的仍然是一朵云,而不用关注具体的存储位置。

image.png

分布式缓存平台

位置无感的存储接入通过分布式缓存平台实现,它提供了就近访问、大容量、高性价比的周期性文件缓存,在缓存周期内通过多点协同的存储调度、多节点多副本冗余,实现了服务的高可用和数据的高可靠性。
视图计算提供了灵活的缓存接入和调度策略(全国、区域、运营商、自定义节点范围)。同时兼容中心OSS使用方式(SDK/API),下载OSS SDK后只需更改endpoint接入域名就可以几乎零开发成本切换到分布式缓存,相比之前不同的是去除了Region概念,直接采用了统一的中心化域名接入和管理方式,真正实现了只上一朵云、只存一朵云。



如何实现这种位置无感呢?关键点在于:

1.物理文件缓存在边缘节点,管控数据、文件元信息等统一汇聚到中心,集中管理和检索。


2.文件写入和读取采用302调度方式,写入统一域名,经过存储调度,跳转到真实的物理位置进行读写。


3.实时的节点状态和容量监测,单点不可写,自动迁移到其他节点,完成服务无感漂移和切换,单点恢复后快速复制同步。


4.提供多节点多副本冗余存储,实现单点不可用时的流量快速转移,也可以在访问量大时进行负载均衡。


视图连接平台和全周期PaaS服务

为了帮助视图数据更好地上云,视图计算提供了终端上云的连接平台和覆盖视图全生命周期的PaaS服务,包括采集、计算处理和内容消费。连接的能力主要在于:

1.设备的接入和管控

2.视图内容的接入和管理

3.视图处理和视图存储分别基于前面介绍的位置无感计算平台和缓存平台,提供了针对视图进行转码、AI分析、加密和串流渲染等基础能力和复杂的处理能力。视图存储上提供了视图存取和检索能力,以及生命周期的清理策略,和回云存储及归档策略。

image.png

安全易用的视图(终端)一键上云

目前主流的视图终端上云方案有三种:

1.安防领域的国标GB/T-28181上云,存在接入复杂,安全性低和功能缺失等问题,如信令明文传输,数据流基本无认证,只能基于SSRC简单鉴别,无法有效规避冲撞或伪造;国标存在2011、2016多个版本的适配和过渡问题,整体上云体验较差。

2.ONVIF自2008年提出以来,在世界范围内获得了大量设备厂商支持,但其组播发现机制在公共云无法实现,上云不友好,同时其交互基于HTTP标准,采用SOAP协议格式来定义信令内容,通信延迟较大。

3.大量设备厂商推出私有的协议标准上云,种类多,各自封闭、黑盒化,上云接入无法复用,较多重复建设。

image.png

视图计算推出的一键上云方案,提供了开放、易用、安全、灵活的终端一键上云能力,主要特性在于:

  1. 兼容国标/ONVIF等,适配各类终端,同时解决了国标接入复杂和安全性问题,以及ONVIF的公共云接入问题。
  2. 基于阿里云广覆盖的边缘节点构建的设备接入网关,能确保就近接入,复用CDN低延时的传输和加速网络,以及多协议接入的特性,确保低延时的设备通信、信令控制和数据流接入。
  3. 核心的信令通道实现了透明的双向通信,厂商和开发者也可以自定义控制信令。


阿里云开放设备上云协议ODCAP

视图计算连接平台的一键上云方案核心构建在ODCAP(Open Device Cloud Access Protocol)开放设备上云协议上,我们会完全开放协议内容,支持任何厂商的多样化设备自主接入。

终端上云主体通过网络互联互通,ODCAP协议支持多种多样的网络互连结构:

1.设备处在内部网络,通过防火墙NAT访问公网,也可以通过设备网关转接;
2.设备直接在公网环境下,如具备4G/5G联网能力的设备,可以采取直连;
3.ODCAP同时支持级联模式,子设备可以通过其他协议连接到上一级设备,直连设备屏蔽了下级子设备的不同接入访问,统一以ODCAP协议接入云平台。

ODCAP协议支持多种类型设备,实现多样化终端上云。不同设备具备的功能各异,为了统一描述,我们用设备模型来定义设备,包括4个层面:

  1. 资源,设备产生的各种数据,如实时视频流,视频图片文件,终端AI分析后的结构化数据等
  2. 配置,设备的各种配置信息
  3. 事件,设备触发的各种事件
  4. 服务,设备提供的功能服务

后续阿里云视图计算会在“阿里云Edge Plus”公众号中分享更多最新的产品能力、解决方案和技术实践,欢迎大家一起探讨。

原文链接

本文为阿里云原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/513672.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Graph + AI 2021全球峰会圆满落幕 TigerGraph企业版3.2发布

中国上海,2021年10月22日——由企业级可扩展图分析平台TigerGraph主办的“图创未来无界精彩”Graph AI 2021中国峰会于前日圆满落幕。本次峰会超3500人参与,较往届增长340%,与会者包括来自耐克、特斯拉、联合利华、西门子、通用电气等上百家…

重磅发布 | 阿里云视图计算,边缘计算的主“战”场

简介: 云计算情报局第10期,阿里云产品专家云觉对新产品——视图计算的产品设计背景、产品功能以及应用场景和价值进行了全面的在线揭秘,带领网友探索全新“视”界。 近日云计算情报局第10期,阿里云产品专家云觉对新产品——视图计…

两个对象数组交集_yiduobo的每日leetcode 349.两个数组的交集 amp;amp; 350.两个数组的交集II...

祖传的手艺不想丢了,所以按顺序写一个leetcode的题解。计划每日两题,争取不卡题吧349.两个数组的交集https://leetcode-cn.com/problems/intersection-of-two-arrays/350.两个数组的交集II https://leetcode-cn.com/problems/intersection-of-two-arrays…

flink sql设置并行度_Flink集成Hivestream模式用例

01背景基于前面的文章Flink集成hive bath模式用例knowfarhhy,公众号:大数据摘文Flink 集成Hive,我们继续介绍stream模式下的用例。02流模式读取HiveEnvironmentSettings bsSettings EnvironmentSettings.newInstance().useBlinkPlanner().in…

微软副总裁、Kubernetes 头号贡献者的他,给云原生带来奇迹!

我们做了一个街头采访,调查路人眼中的程序员到底是怎样的?提到程序员,大家似乎都有刻板印象:总是格子衬衫牛仔裤双肩包打扮,总是埋头敲代码,加班是常态……谁说程序员呆板木讷,只会埋头敲一行行…

云原生新边界——阿里云边缘计算云原生落地实践

简介: 日前,在由全球分布式云联盟主办的“Distributed Cloud | 2021 全球分布式云大会云原生论坛”上,阿里云高级技术专家黄玉奇发表了题为《云原生新边界:阿里云边缘计算云原生落地实践》的主题演讲。 作者 | 黄玉奇 来源 | 阿里…

HTTPS 协议到底比 HTTP 协议多些什么?

来源:杰哥的IT之旅作者:阿拉斯加最近卷了一篇 HTTP 协议的相关知识,大家可以一起来看一下~HTTP 简介HTTP 协议是 Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:Worl…

独家深度 | 一文看懂 ClickHouse vs Elasticsearch:谁更胜一筹?

简介: 本文的主旨在于通过彻底剖析ClickHouse和Elasticsearch的内核架构,从原理上讲明白两者的优劣之处,同时会附上一份覆盖多场景的测试报告给读者作为参考。 作者:阿里云数据库OLAP产品部 仁劼 Clickhouse是俄罗斯搜索巨头Yan…

golang 排序_堆 堆排序 优先队列 图文详解(Golang实现)

引入在实际应用中,我们经常需要从一组对象中查找 最大值 或 最小值 。当然我们可以每次都先排序,然后再进行查找,但是这种做法效率很低。哪么有没有一种特殊的数据结构,可以高效率的实现我们的需求呢,答案就是 堆(heap…

看懂 IPv6+,这篇就够了

来源:鲜枣课堂作者:小枣君5G网络的不断建设和普及,加速了我们迈入万物互联时代的步伐。我们的整个互联网络,正在发生翻天覆地的变化。急剧增加的网络连接数和流量,对网络的承载和传送能力,提出了前所未有的…

高德打车通用可编排订单状态机引擎设计

简介: 订单状态流转是交易系统的最为核心的工作,订单系统往往都会存在状态多、链路长、逻辑复杂的特点,还存在多场景、多类型、多业务维度等业务特性。在保证订单状态流转稳定性的前提下、可扩展性和可维护性是我们需要重点关注和解决的问题。…

边开飞机边换引擎?我们造了个新功能保障业务流量无损迁移

简介: 容器化部署应用可以降低企业成本,提升研发效率,解放运维人员。据 Gartner 预计,到 2022 年,将有 75% 的企业将在生产中运行容器化应用程序。Kubernetes 是企业部署容器化应用的首选框架。由于 Kubern…

专访百度集团副总裁袁佛玉:科技创新对普惠金融正在充分发挥“乘数效应”

图为百度集团副总裁袁佛玉在发表演讲 “随着我国数字经济的腾飞,科技创新正在充分发挥对于普惠金融的“乘数效应”,加速普惠金融拓展的深度和广度。”百度集团副总裁袁佛玉在10月22日举办的2021金融街论坛“‘一带一路’金融减贫论坛”上表示。 袁佛玉…

Spring Cloud Stream 体系及原理介绍

简介: Spring Cloud Stream在 Spring Cloud 体系内用于构建高度可扩展的基于事件驱动的微服务,其目的是为了简化消息在 Spring Cloud 应用程序中的开发。 作者 | 洛夜 来源 | 阿里巴巴云原生公众号 Spring Cloud Stream在 Spring Cloud 体系内用于构建高…

工商银行分布式服务C10K场景的解决方案

简介: 未来,中国工商银行将持续致力于 Dubbo 的金融级规模化应用。 作者:颜高飞,微服务领域架构师,主要从事服务发现、高性能网络通信等研发工作,擅长 ZooKeeper、Dubbo、RPC 协议等技术方向。 Dubbo是一款…

使用html() undefined_SweetAlert2使用教程

SweetAlert2是一款功能强大的纯Js模态消息对话框插件。SweetAlert2用于替代浏览器默认的弹出对话框,它提供各种参数和方法,支持嵌入图片,背景,HTML标签等,并提供5种内置的情景类,功能非常强大。SweetAlert2…

埃森哲携手阿里云,采用K8s容器云服务为客户提供无限弹性

简介: 埃森哲作为全球领先的专业服务公司,在数字化、云计算等领域拥有全球领先的能力,我们在多年的实际客户项目中,找到并沉淀出了适合企业数字化转型的方法论,积累了丰富的落地经验。 作者:姚迪、周警伟 …

4阶范德蒙德行列式例题_线性代数入门——“爪型行列式”的计算及其应用

系列简介:这个系列文章讲解线性代数的基础内容,注重学习方法的培养。线性代数课程的一个重要特点(也是难点)是概念众多,而且各概念间有着千丝万缕的联系,对于初学者不易理解的问题我们会不惜笔墨加以解释。在内容上,以…

如何使用Arthas提高日常开发效率?

简介: 1. Arthas有什么功能,怎么用,请看:Arthas使用手册 2. Arthas命令比较复杂,一个帮助生成命令的IDEA插件:arthas idea plugin 使用文档 3. 基于Arthas实现的简单好用的热部署插件:ArthasHot…

stringutils 用哪个包 apache spring_spring整合mq、jsonp跨越、httpclient工具的使用

训练大纲(第087天)大家如果想快速有效的学习,思想核心是“以建立知识体系为核心”,具体方法是“守破离”。确保老师课堂上做的操作,反复练习直到熟练。第173次(ActiveMQ)学习主题:ActiveMQ学习目标:1 掌握什么是spring…