边缘状态下应用程序需要考虑的六个设计要点

云计算 边缘计算
据Gartner预测,到2025年,企业的数据中75%将在传统的中央数据中心或云之外创建和处理。这意味着数据将来自任何地方,应用程序、设备和用户在地理上分散分布。

你的企业为这种新的数据环境做好准备了吗?

边缘计算把计算能力和数据存储分布在更靠近数据产生和使用的地方。新的边缘应用程序利用设备和网络网关执行任务,并取代云在本地提供服务。

这类边缘应用程序需要一种新的数据体系结构,该体系结构需要考虑应用程序的规模、延迟、可用性和安全需求。今天我们将研究企业在为边缘应用程序构建数据体系结构时需要考虑的关键设计因素。

确定数据体系结构的第一步是理解数据的生命周期——数据在哪里产生,需要对数据做什么(例如,分析、存储和转发,以及长期存储),以及在哪里使用数据。跨区域移动数据会导致高延迟,而将数据放置在接近数据产生和处理的地方可以降低延迟和提高吞吐量。另一方面,当从云走向边缘时,处理数据(相比于云端)的资源减少了,必须考虑更大的网络分区和停机风险。

应用程序如何处理数据将是确定数据体系结构需要支持的一个重要因素。例如,分析来自商店销售点设备的数据的零售应用程序需要将数据从边缘复制到云。因为只有在综合查看来自所有零售点存储的数据时,这种分析才可能有用。此外,云拥有运行高级机器学习算法所需的资源,而边缘位置可能缺乏这些资源。但是,如果零售组织希望将一致的软件配置部署到所有的边缘位置,那么应该在核心创建一个主配置,然后将其复制到所有的边缘位置。

在为边缘环境设计数据架构时,需要考虑以下几个关键因素:

1.弹性

数据增长会有多快?有多少用户和设备会生成数据?处理数据需要多少计算能力?系统弹性一直是应用的关键点,边缘计算也不例外。

边缘位置通常不具备对大量数据进行深度分析的计算和存储资源。此外,边缘的OLTP数据库可能需要扩大吞吐量,以处理来自设备的大量数据输入。

2.延迟和吞吐量

要写入或读取多少数据?数据会以突发的形式出现,还是一个相对稳定的数据流?用户和应用程序需要以多快的速度使用它?

例如,对于诸如联网车辆和信用卡欺诈检测等实时应用程序,将遥测或交易数据发送回云应用程序以确定操作过程是不可行的。在这些情况下,实时分析应用于边缘位置的原始数据,以迅速生成警报提醒。

3.网络连接

糟糕的网络连接是现实中的许多边缘位置面临的问题。应用程序应该考虑如何处理网络分区。根据边缘和云之间的网络质量,可能会出现不同的运行模式:

大部分连接:应用程序可以在大部分时间连接到远程位置执行API调用(例如,查找数据)。这些API调用中的一小部分可能会因为网络分区而失败(例如,在几个小时的时间跨度中出现几秒钟的分区)。

半连接在这种场景中,可能存在一个持续数小时的扩展网络分区。应用程序需要能够识别在分区窗口期间发生的更改,并在分区恢复后将其状态与远程应用程序同步。

断开连接在这种情况下,主要的操作模式是应用程序独立于任何外部站点运行。可能偶尔会有连通性,但这更多地被认为是一种特例,而不是常态。

在远端运行的应用程序和数据库应该设计为不连接或半连接操作。近边缘应用应采用半连接或大部分连接操作。云以大部分连接模式运行。也就是说,当公共云服务遭遇停机时,其影响是严重的,可能会持续好几个小时。

4.物理设备故障

在不同的位置,基础设施中断也很常见。在遥远的边缘,从节点和吊舱故障到整个区域故障都可能是常见的。在近边缘和云中,虽然节点或吊舱停机很常见,但应用程序可以使用区域机架来实现更高的弹性。但是,即使有了这种故障隔离,区域级的中断也可能发生。

5.软件栈

在为软件堆栈选择组件时,考虑敏捷性和易用性是很重要的。业务服务涉及一套应用程序,因此工程团队需要为应用程序的快速迭代进行设计。实现这一目标的一种方法是使用能够立即提高开发人员工作效率的成熟框架,以及开发人员已经很熟悉的、功能丰富的开源数据库。

6.安全

对于在边缘运行的应用程序,安全性是最重要的,特别是考虑到体系结构固有的分布式特性,存在范围很大的攻击点。考虑所有服务和组件的最小权限、零信任和零接触应用是很重要的。

下面列出了其他一些具体的安全方面:

  • 传输过程中加密
  • 数据休眠中加密
  • 数据库层的多用户支持和各用户隔离加密
  • 数据的区域局部性,以确保遵从性,并考虑与之相关的任何地理访问控制

边缘计算的兴起是应用程序构建和部署方式的范式转变,以迎合日益分散的数字世界的需求。在这种环境中,没有适用于所有应用程序的通用数据库参考体系结构。但是,根据应用程序的需求和所涉及的权衡,企业将做出不同的设计选择来满足它们的需求,并在需求发生变化时调整这些选择。通过关注与整个IT组织有关的设计决策,企业可以进一步将边缘应用程序数据用作未来几年的战略资源。


责任编辑:华轩 来源: 今日头条
相关推荐

2021-07-12 07:59:06

.NET程序内存

2019-06-21 13:50:33

数据中心

2017-02-10 21:15:22

Windows 10Windows操作技巧

2024-08-30 16:18:44

2022-04-29 14:54:10

物联网应用程序设备

2015-08-24 15:25:13

云应用程序云服务SaaS

2023-03-28 10:43:03

IT部门IT 领导者

2015-10-21 13:57:09

WatchKit 要点开发

2021-11-11 15:13:15

人工智能容器技术

2024-08-02 17:29:42

2022-07-18 08:00:00

边缘计算经验开发

2011-11-17 15:01:37

AdobeAIR移动应用

2017-03-06 15:15:57

Linuxfile实例

2023-07-05 10:30:03

2023-11-15 13:12:16

2021-11-15 09:24:37

MSSP勒索软件安全服务

2023-08-04 12:07:11

2023-03-29 15:26:45

2023-03-05 16:57:04

2024-07-03 10:54:09

点赞
收藏

51CTO技术栈公众号