多年来,科技的飞速发展导致了数据处理和传输的需求暴涨,因此云计算成为了许多应用领域的核心基础设施。但是物联网(IoT)设备的普及和近年来5G网络的异军突起,数据量更是呈显出爆炸性的增长,对数据处理的速度和效率提出了更高的要求。因此,边缘计算作为云计算的扩展,逐渐受到业界的关注和重视。边缘计算将数据处理和应用的负载从中心向设备边缘迁移,能够提高数据处理的速度和效率,降低延迟,为许多应用领域带来了巨大的便利。
边缘计算的构造可分为三个层次:设备层、边缘服务器层和云计算层,下边逐一分析。
设备层这一层的关键包括各种物联网设备和传感器,承担数据的收集和传送。设备层是数据的关键运营商,特点是设备品种繁多,数据类型不同。
边缘服务器层该层的关键是处理来自设备层的数据,进行初步解决、剖析和过滤,并把处理后的数据发送到云计算层。边缘服务器一般部署在网络边缘,与设备层紧密联系,能够快速反映设备层的需要,降低传送数据的延迟。
云计算层该层专门从事全球数据处理、剖析和存储,并承担运用的思路解决方法。云计算层可视为边缘计算的“大脑”,负责协调及管理系统的运行。
低延迟:由于系统边缘的数据处理和应用逻辑,能够降低传送数据位置和时长,从而减少了延迟。这对需要实时反馈的应用场景(如自动驾驶、远程医疗等)至关重要。
高效:边缘计算能彻底解决海量信息,减轻云计算核心压力,提高总体数据处理效率。
灵活性:因为设备层和边缘服务器层分布式特点,边缘计算可以灵活地满足不同主要用途与需求。
可靠性:由于数据在设备边缘的处理与应用,减少了内容遗失的风险,提高了系统的可靠性。
智慧交通:在交通系统中,车辆会产生大量实时动态(如部位、速率、路况等)。依据边缘计算予以处理与分析,可实时改进车流量,提高路面利用率。同时,依据紧急状况(如交通事故、道路维护等),边缘计算可快速反应,及时通知相关人员处理。
智能制造:在生产中,很多传感器和设备会产生大量数据。依据边缘计算,可实时监控生产线的运作,预测隐性故障与维护规定,提高工作效能和产品质量。同时,边缘计算可用于进行灵便制造,快速调整加工过程,以满足市场需求。
上述只是常见的一些应用场景,边缘计算的强大之处让它被用于各个行业。
下面给出一个博主做过的实例,使用边缘计算对大量的医疗数据进行实时处理和分析。
- 数据采集
我们可以使用医疗设备和传感器采集患者的生理数据,心电图、血压、血糖等。这些数据可以通过设备层发送到边缘服务器层,发送前也要做好数据处理的预处理工作。
- 数据处理
在边缘服务器层,使用数据处理算法对采集的数据进行预处理和清洗,去除噪声和异常值。
import pandas as pd
# 读取数据
data = pd.read_csv('patient_data.csv')
# 去除异常值
data = data.replace([np.inf, -np.inf], np.nan)
data = data.dropna()
# 预处理数据
processed_data = data.apply(preprocessing_function)
python复制代码
- 数据分析
在边缘服务器层,使用数据分析算法对处理后的数据进行深入分析,提取有用的特征和信息。
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
# 分割数据集为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(processed_data.drop('diagnosis', axis=1), processed_data['diagnosis'], test_size=0.2, random_state=42)
# 训练分类器
clf = RandomForestClassifier()
clf.fit(X_train, y_train)
# 在测试集上进行预测
predictions = clf.predict(X_test)
- 结果传输
将分析结果发送到云计算层进行进一步的处理、存储和分析。可以将结果存储在数据库中,也可以通过Web API等方式提供给医生进行查看和分析。我使用Flask框架编写一个简单的Web API:
from flask import Flask, request, jsonify
app = Flask(__name__)
@app.route('/predict', methods=['POST'])
def predict():
data = request.json['data']
prediction = clf.predict(data)
return jsonify({'prediction': prediction})
- 诊断依据
最后,医生可以通过查看和分析结果并结合自己的专业知识和经验,做出准确的诊断。将结果与其他医疗数据进行比较,或者使用其他高级分析技术来提高诊断的准确性和可靠性。
infoq原文链接:边缘智变:深度学习引领下的新一代计算范式 (infoq.cn)