物联网
数据基础设施正在从云原生(Cloud-Native) 向面向物联网(IoT-Oriented)架构演进。基于此,我们总结了面向物联网 (IoT -Oriented)架构的设计原则和功能特点。
面向物联网架构设计原则
移动计算优先
随着计算芯片持续分化出面向各种计算负载特征的专用协处理器,如 GPU、DPU 等,到苹果公司最新设计的 M1 芯片的 Unified Memory,以及大数据产业链的 Schema on Write 到 Schema on Read、ETL 到 ELT。其中都蕴 含了相同的架构设计思想:减少数据搬移,减少数据拷贝,优先移动计算而非移动数据。
在物联网场景中,移动计算优先设计原则的优势体现在:
在数据量持续快速攀升、计算负载相应指数级增长的情况下,通过移动计算可以分散计算负载,提高整体计算能力;
物联网时代强调决策的实时性。通过移动计算提高决策的效率,可降低端到端系统时延;
端到端高可用的需求日益增长,通过分布式架构将计算移动到数据本地节点中,避免集中计算的单点故障,同时降低了数据传输与数据复制对整体系统的压力,实现整体系统的高可用;
数据流可重用
数据在信息层面的复制成本极低,但数据在搬移和存储层面的成本随着数据量越来越大,变得愈发显著。新一代数 据基础设施的重要原则已经是:尽可能减少数据搬移、拷贝和重复计算。因此,在全球范围内的新一代数据基础设 施的设计哲学中已经开始看到:数据可重用。
结合物联网产业发展现状及未来趋势,进一步发展出数据流可重用的原则:
数据流即服务
多用户多场景共享一个数据源
物化数据流作为应用交互接口
全场景可适配
随着协处理器与专用计算芯片的寒武纪大爆发,异构计算环境成为软件设计中不可缺少的考虑因素之一。此外,由 于历史原因,物联网产业中各个企业中的操作系统、服务器硬件设备、传输用网络协议、工业通信协议、存储目标和存储设备等均有很大差异。
基于全球上万家企业,提出全场景可适配原则:
云边端各式处理器各种操作系统均可部署、可协同,异构设备统一接入;
从 PLC、工业网关,到 MQTT、TCP、QUIC 等网络协议均可适配;
持久化数据可适配各类存储介质包括新一代的 NVMe 等。
分布式云原生
随着全行业对低时延的要求越来越高,企业从快速上云到开始重新思考云边协同,再到试图用统一的模型来同时管理云和边,已经经历了三次对如何发挥云计算模型价值的尝试。但业界大多只是知道分布式云的概念,对真正分布式云的开发理念的探索较少。
基于产业发展趋势,定义了分布式云原生的软件开发理念与设计哲学:
去中心化的分布式系统,Peer-to-Peer 的网络拓扑;
用户的感知应当是更快更稳定的云计算,分布式调度复杂度藏于基础软件中;
各类软件的计算负载、通信负载、存储负载均可在分布式云中自由调度。
面向物联网架构设计特点持续稳定的海量超高并发连接
传统 IT 系统与移动互联网主要由系统与系统,系统与移动终端产生数据连接,万级以上并发连接系统比较少。面向传统 IT 和互联网场景设计的基础架构软件在适应大并发连接系统的建设与维护成本非常高。
物联网场景下数据源主要以智能设备、感知设备为主,终端数量远远大于传统 IT 与互联网场景。如智能家居、车联 网等场景下的平台连接数量普遍超过十万,大型平台可以达到百万级甚至千万级水平。这就要求面向物联网场景的基础架构软件具备在相对成本较低的情况下适应海量设备同时接入并保持稳定连接的能力。
全链路端到端双向多 QoS 支持
传统 IT 和互联网系统主要通过企业内网、企业专网或宽带移动网络连接。而物联网时代为了适应不同设备密度与连 接成本,需要实现固网与移动网络并存、宽带与窄带混合,从单一网络到分布式跨地域混合网络接入的演进。对于 物联网系统则需要适配各类网络,实现端到端数据打通能力。
由于接入网络复杂度提高,网络稳定性下降,需要物联网系统在传输层与应用层协议中提供相关的保障。如物联网 长连接场景中常用的 MQTT 协议提供了消息质量(QoS)的定义,包括消息最多传递一次、至少传递一次和仅传递一次三种级别,可以在不同业务需求与成本需求中选择消息质量级别。
随着业务模式的不断丰富,物联网业务从单向的设备数据采集,逐渐演化成设备与系统、设备与设备、设备与人的 双向交互。从 ToC 的智能家居场景的用户与智能设备的互动,到产业互联网中工业生产设备的数据采集与远程控 制、车路协同中的车辆驾驶系统与路边感知设备的互联互动,都需要物联网基础软件有能力打通数据的双向通道。
超低延时的有状态流式处理与分析
从业务需求看:大量关键业务,如车路协同、工业生产监控等,对数据处理与系统响应的时效性要求非常高,且设
备数据往往是有状态的。
从数据类型看:不同于传统 IT 与互联网系统中大部分数据以时间离散型的业务查询与交易数据为主,物联网数据由 主要由设备产生,以时间连续数据流为主的数据类型占比逐渐增加。这就需要物联网系统与软件提供更强的流数据 的处理能力。
数据流虚拟化与 Schema 级多租户
企业级物联网平台系统中,大量原始流数据会被不同业务系统实时消费与分析,为不同业务目的提供数据价值。不同业务应用视角不同,对流数据的读取分析方式也不同。目前大量企业采用数据复制的方式为不同业务视角提供数 据模型与分析模型,造成组织内数据激增。而且数据复制过程需要损耗大量时间,对于实时性要求高的物联网场景 往往无法提供有时效性的分析结果。
在同时考虑原始数据重用性和时效性方面,基于数据流虚拟化以及 Schema 级的多租户方案就显得异常重要。Schema 级的多租户为不同业务视角定义流数据模型,保证了不同业务对数据需求的分离;同时采用虚拟流的方式 避免了原始数据的复制,保证了业务的时效性的同时也降低了原始数据的复制存储成本。
全部0条评论
快来发表一下你的评论吧 !