边缘计算:概念、应用与决策指南
1. 边缘计算的定义与示例
边缘计算究竟是什么呢?边缘可以是农场里对天气和干旱状况的监测,以确保农作物的最佳产量;可以是自动无人机独自飞行,拍摄照片或收集环境、地理数据;也可以是半挂车向中央运输系统传输自身位置、负载和运行状况等信息;还可以是智能家居设备,能自动感知物品短缺并协助下单补货,或者智能家居在检测到火灾时关闭炉灶,在主人外出时触发警报。
这些都是边缘计算的实例。边缘计算就是将应用的一部分迁移到离数据产生源头更近的地方。这里的“数据产生源头”,指的是你想要处理的有价值数据的来源,可能是应用的终端用户、被控制的系统,或者是应用存在的根本原因所指向的事物。简单来说,边缘计算就是把计算资源放置在真正需要它的地方。
2. 当下的边缘计算应用
虽然前面提到的很多边缘计算例子还未完全融入我们的日常生活,如自动无人机在头顶飞行、微观气象报告对农业的影响等,但如今边缘计算已经有了很多重要且实用的应用:
- 在当地杂货店,扫描仪会收集数据,供销售点机器计算你需要支付的金额,然后再将结果发送到云端。
- 当地的联邦快递工作人员使用扫描仪跟踪包裹,让你随时了解包裹的位置和预计到达时间。
- 你在喜欢的咖啡店应用上点击下单按钮,期望到达时咖啡已经准备好,这也是边缘计算的体现。
- 用智能网页客户端在浏览器中阅读邮件同样属于边缘计算。邮件应用有服务器组件和边缘组件,边缘组件在浏览器中运行,靠近用户,以提供更好的用户体验。
这些都是边缘应用,它们都利用了运行在边缘设备上的边缘软件,尽管具体细节不同,但应用的基本结构是一致的。
3. 为何关注边缘计算
我们关注边缘计算和非边缘计算的区别,是因为构建、运营和扩展边缘应用的模式与基于云的服务器端应用有很大不同。边缘应用或服务的扩展需求与云应用或服务的扩展需求差异显著,维持它们运行的要求也各不相同。计算类型(边缘计算或云计算)会影响应用的扩展性和可用性。
4. 边缘计算与云计算的抉择
如果应用或服务的扩展性和高可用性受其是否处于边缘的影响,那么如何决定某项计算应放在边缘还是云端呢?边缘计算的目的是将对时间敏感的操作放在更接近需求的地方,例如:
- 控制无人机在各种条件下安全飞行。
- 确保浏览器邮件应用响应迅速,点击按钮能立即得到反馈。
- 保证家庭安全系统在网络连接不稳定时仍能正常工作。
- 让移动应用与用户及时、高效地交互。
而云计算通常是集中式计算,用于数据收集和分析、订单处理以及与其他人员和系统的通信。大型计算应用架构的关键在于将计算资源放置在能使其高效运行的位置,成功的边缘计算也是如此,要把计算资源放在能发挥作用的地方,而非仅仅考虑开发者和运维人员的便利性。
将计算资源放在边缘比集中在云端更具挑战性和风险,构建和维护边缘软件比服务器端云软件更困难,所以进行边缘计算要有充分的理由。
5. 以无人驾驶汽车为例的决策分析
以无人驾驶汽车为例,它需要大量的软件和计算资源,是人工智能和数据处理的前沿应用。无人驾驶汽车有很多传感器和控制装置,传感器用于检测障碍物和道路位置,摄像头用于识别前方物体是其他车辆、行人、路障还是滚动的球等。同时,它还有控制装置来实现转向、制动、动力输出等功能,以及监测车辆自身健康状况的传感器和控制装置。
无人驾驶汽车的部分计算必须在车内进行,属于边缘计算,例如:
- 图像识别:判断附近是行人还是其他车辆。
- 威胁检测:判断前方行人是否在奔跑、前车是否在刹车。
- 道路管理:确定道路边缘位置、识别前方是否有停车标志。
- 碰撞控制:为避免碰撞,是否需要紧急刹车并右转。
这些计算对时间敏感,不能因网络连接问题或云服务器繁忙而中断或延迟,必须每次都自动、及时地完成。
而有些计算可以在云端进行,例如:
| 计算类型 | 具体内容 |
| ---- | ---- |
| 行驶路线规划 | 从A点到B点的最佳路线 |
| 道路状况 | 前方是否有道路施工、是否需要绕行 |
| 交通情况 | 该路线是否拥堵,是否选择其他路线更优 |
| 车辆效率 | 调整车辆设置以提高运行效率,节省燃油或减少排放 |
| 车辆维护 | 判断是否缺油、最近的加油站位置、是否需要维护及最近的维修厂位置 |
| 车队、共享汽车和使用管理 | 了解车辆使用情况,优化车队资源利用,为客户提供更好的服务 |
这些计算对时间的敏感度相对较低,通常需要访问集中式数据,如地图和交通信息,在云端更容易获取。而且,云计算软件更易于开发、管理和运营,能更好地与其他云软件协作,利用集中式数据和系统。
6. 边缘计算与云计算的扩展差异
边缘软件和云计算软件在扩展性方面有很大区别:
-
边缘软件
:
- 通常运行成千上万甚至数百万个软件实例。
- 在大量地理上分散的区域运行,往往每个地点一个实例,分布在数百万个地点。
- 每个实例通常一次只做一件事,或管理一个设备或活动。
-
云计算软件
:
- 运行的实例数量通常比边缘软件少得多,尽管可能运行在数十、数百或数千台服务器和实例上,但数量仍远低于边缘实例。
- 通常在单个位置或少数几个位置运行,运行在服务器农场中。
- 每个实例通常负责管理数千个不同的任务,有时会同时处理多个不同用户的需求。
随着应用总负载的增加,两者对扩展需求的响应方式不同:
- 云计算软件:随着同时使用的用户数量增加,软件必须扩展。使用量越大,需要运行的实例就越多。要设计和构建软件,使其能快速增加实例以满足更高的扩展需求,同时在资源需求和分配时要考虑扩展性,以确保软件能跟上需求,不被负载压垮。云计算的负载随使用量增加而上升。
- 边缘软件:每个边缘设备通常处理单个用户和一组请求。随着对软件的需求增加,会提供更多独立的边缘软件实例,但每个实例是自主的,不知道其他实例的存在。因此,即使应用的用户数量增加,边缘软件的负载也保持平稳,软件本身不会意识到需要扩展。不过,为所有用户运行软件所需的实例绝对数量会根据用户数量线性增长。例如,增加一百万辆自动驾驶汽车,就需要增加一百万个软件实例。而云计算软件所需的实例数量也会随用户数量增长,但增长速度远不及边缘软件。
综上所述,云计算软件更关注资源管理,确保有足够的资源支持软件在所需规模下运行是扩展的主要关注点;边缘软件则更关注实例管理,管理、运营、升级和监控大量软件实例是扩展的主要挑战。
7. 选择边缘计算或云计算的标准
如果服务运行在边缘还是云端很重要,那么可以参考以下标准来决定:
| 标准 | 选择建议 |
| ---- | ---- |
| 计算对时间要求严格,或对延迟高度敏感 | 边缘计算 |
| 需要高度响应的软件 | 边缘计算 |
| 需要大量计算资源 | 云计算 |
| 计算使用具有突发性或不可预测性 | 云计算 |
| 对网络连接问题高度敏感 | 边缘计算 |
| 需要访问全局数据且个性化数据较少(如交通模式) | 云计算 |
| 其他情况 | 云计算 |
优先选择云计算而非边缘计算有以下几个原因:
- 边缘服务更难管理和升级。
- 边缘存在各种独特的配置问题,可能需要处理具有不同版本和功能的边缘硬件。
- 边缘存在软件版本管理问题,不同边缘设备很容易运行不同版本的服务软件。
- 由于边缘软件分布广泛,更难进行监控和管理。
下面是一个简单的决策流程图:
graph TD;
A[计算任务] --> B{对时间敏感?};
B -- 是 --> C[边缘计算];
B -- 否 --> D{需要大量计算资源?};
D -- 是 --> E[云计算];
D -- 否 --> F{对网络连接敏感?};
F -- 是 --> C;
F -- 否 --> G{需要全局数据?};
G -- 是 --> E;
G -- 否 --> E;
通过以上分析,我们可以更清晰地了解边缘计算和云计算的特点、应用场景以及如何根据实际需求做出选择。在实际应用中,需要综合考虑各种因素,权衡利弊,以实现最佳的计算资源分配和应用性能。
边缘计算:概念、应用与决策指南
8. 边缘计算与云计算在不同业务场景中的表现
不同的业务场景对边缘计算和云计算的需求和适应性各有不同。下面通过几个常见业务场景来进一步分析它们的表现。
8.1 工业制造场景
在工业制造中,生产线上的设备需要实时监测和控制。例如,传感器需要实时收集设备的运行数据,如温度、压力、振动等,以便及时发现设备故障并进行预警。这种对实时性要求极高的计算任务适合采用边缘计算。
边缘计算可以在设备端直接处理数据,快速做出响应,避免因网络延迟导致的控制不及时问题。同时,边缘设备可以对数据进行初步处理和筛选,只将重要的数据传输到云端进行进一步分析和存储,减少了网络带宽的压力。
而云计算则可以用于对大量历史数据的分析和挖掘,以优化生产流程、预测设备故障等。例如,通过对多年的设备运行数据进行分析,可以找出设备故障的规律,提前进行维护,降低生产成本。
8.2 智能交通场景
智能交通系统需要实时处理大量的交通数据,如车辆位置、速度、交通流量等。边缘计算可以在路口的智能设备上对这些数据进行实时处理,实现交通信号的实时调整,以缓解交通拥堵。
例如,当某个路口的交通流量突然增大时,边缘设备可以根据实时数据调整信号灯的时长,引导车辆有序通行。同时,边缘计算还可以实现车辆之间的通信,提高行车安全性。
云计算则可以用于对整个城市的交通数据进行宏观分析,制定交通规划和政策。例如,通过对城市交通流量的长期监测和分析,可以确定哪些路段需要拓宽、哪些区域需要增加公共交通设施等。
8.3 医疗保健场景
在医疗保健领域,远程医疗和健康监测设备越来越普及。边缘计算可以在患者端的设备上对生理数据进行实时处理和分析,如心率、血压、血糖等。当数据出现异常时,边缘设备可以立即发出警报,通知医生进行处理。
同时,边缘计算还可以保护患者的隐私,因为敏感的生理数据可以在本地进行处理,不需要全部传输到云端。云计算则可以用于对大量患者数据的存储和分析,以支持医学研究和临床决策。例如,通过对大量患者的病历数据进行分析,可以找出某种疾病的治疗方案和预后情况。
9. 边缘计算和云计算的协同工作
在实际应用中,边缘计算和云计算并不是相互排斥的,而是可以相互协同工作,发挥各自的优势。以下是它们协同工作的几种方式:
9.1 数据采集与预处理
边缘设备负责采集数据,并在本地进行初步的处理和筛选。例如,对传感器数据进行滤波、降噪等处理,只将有价值的数据传输到云端。这样可以减少网络带宽的占用,提高数据传输的效率。
9.2 实时响应与决策
对于对时间敏感的任务,边缘设备可以在本地进行实时处理和决策。例如,在无人驾驶汽车中,车辆的传感器数据可以在车内的边缘设备上进行实时分析,做出紧急制动、转向等决策。而对于一些复杂的决策,如路线规划、交通状况分析等,可以将数据传输到云端进行处理,然后将结果反馈给边缘设备。
9.3 数据存储与分析
边缘设备可以存储一些短期的、本地的数据,而云端则可以存储大量的历史数据。通过对云端数据的分析,可以发现数据中的规律和趋势,为边缘设备提供更准确的决策支持。例如,在工业制造中,云端可以对多年的设备运行数据进行分析,找出设备故障的规律,然后将这些信息反馈给边缘设备,以便提前进行维护。
以下是边缘计算和云计算协同工作的流程图:
graph LR;
A[边缘设备] --> B[数据采集与预处理];
B --> C{实时决策?};
C -- 是 --> D[边缘设备决策];
C -- 否 --> E[数据传输到云端];
E --> F[云端数据存储与分析];
F --> G[决策结果反馈到边缘设备];
D --> H[执行决策];
G --> H;
10. 边缘计算的未来发展趋势
随着物联网、人工智能等技术的不断发展,边缘计算的应用前景越来越广阔。以下是边缘计算未来可能的发展趋势:
10.1 与人工智能的深度融合
边缘计算可以为人工智能提供实时的数据支持,而人工智能可以为边缘计算提供更智能的决策能力。例如,在智能安防领域,边缘设备可以实时采集视频数据,并通过人工智能算法进行目标检测和识别。当检测到异常情况时,边缘设备可以立即发出警报,并将相关信息传输到云端进行进一步分析。
10.2 安全性能的提升
随着边缘计算的广泛应用,安全问题变得越来越重要。未来,边缘计算将更加注重安全性能的提升,包括数据加密、身份认证、访问控制等方面。例如,在工业互联网中,边缘设备需要与云端进行安全的数据传输,以保护企业的核心数据不被泄露。
10.3 标准化和互操作性的加强
目前,边缘计算的标准和规范还不够完善,不同厂商的边缘设备和软件之间的互操作性较差。未来,随着标准化工作的推进,边缘计算设备和软件将更加兼容和互操作,降低企业的应用成本。
11. 总结
边缘计算和云计算各有其优势和适用场景。边缘计算适合对时间敏感、需要实时响应的任务,而云计算适合对大量数据的存储和分析。在实际应用中,我们可以根据具体的需求,将边缘计算和云计算结合起来,实现数据的高效处理和利用。
选择边缘计算还是云计算可以参考以下标准:
| 标准 | 选择建议 |
| ---- | ---- |
| 计算对时间要求严格,或对延迟高度敏感 | 边缘计算 |
| 需要高度响应的软件 | 边缘计算 |
| 需要大量计算资源 | 云计算 |
| 计算使用具有突发性或不可预测性 | 云计算 |
| 对网络连接问题高度敏感 | 边缘计算 |
| 需要访问全局数据且个性化数据较少(如交通模式) | 云计算 |
| 其他情况 | 云计算 |
同时,我们还需要关注边缘计算的未来发展趋势,如与人工智能的深度融合、安全性能的提升、标准化和互操作性的加强等,以更好地应用边缘计算技术,为我们的生活和工作带来更多的便利和价值。
通过合理地运用边缘计算和云计算,我们可以构建更加智能、高效、安全的信息系统,推动各个行业的数字化转型和发展。
超级会员免费看
899

被折叠的 条评论
为什么被折叠?



