首页 理论教育分布式数据库技术:高效存储IOT数据

分布式数据库技术:高效存储IOT数据

【摘要】:如图20.12所示,数据采集器及传感网中的传感器节点,用于采集感知信息。图20.12IOT分布网络节点这里出现了可反应设施的概念。图20.13IOT数据的边缘存储和核心存储物联网的数据可以分为边缘存储和中心存储两个层次存储,即边缘数据库和中心数据库。一般受容量的限制,边缘能存储的数据量有限。图20.14有汇聚层的体系架构需要注意的是,这里讨论的仅是初步的物联网数据库架构。

IOT数据如何存储呢?简单地存放感知数据做起来简单,一旦涉及数据修改、恢复和添加新特征,就不一定适应。例如,如果把数据按文本格式(像日志一样)存放在一个文件里,编程简单,一旦文件很大(例如,如果应用获得每30秒采样的气象数据,即温度、湿度、风力、风向、气压等,又有多个采样点),数据集就会很大。要存放这样的文件,数据又要转换成字符串。这样的数据查询起来很困难。

传感设施放在哪里?这也是一个问题。一种解决方案是使用感知成分把所有硬件放在一个盒子里。这是早期IOT的解决方案。其实,多点方式是更广泛使用的方式。这类似于传感网的思想,即使用多个分布的成分。

在分布式解决方案里,感知成分间使用网络通信协议相互通信。如图20.12所示,数据采集器及传感网中的传感器节点,用于采集感知信息。采集到的数据会被数据聚集器(aggregator)接收,在那里会进行基本处理,也会存储到本节点里的数据库(数据库服务器)。数据采集器也可能带有本地存储,目前常用SD卡存储。

图20.12 IOT分布网络节点

这里出现了可反应设施(actionable device)的概念。可反应设施也具有数据采集的功能,不同的是,还具有直接依据情景态势做出反应或接到命令后做出反应的功能。

IOT数据的边缘存储和核心存储如图20.13所示的形态。

图20.13 IOT数据的边缘存储和核心存储

物联网的数据可以分为边缘存储和中心存储两个层次存储,即边缘数据库和中心数据库。(www.chuimin.cn)

这种数据库的特点是边缘存储和中心存储相结合。简单来说,边缘数据库里存储的是本区域感知的数据和驱动本区域可反应设施针对情景态势的反应数据。根据采样频率和传感器/反应器数量,节点数据库存储的数据量会差异较大。一般受容量的限制,边缘能存储的数据量有限。问题是,中心数据库和边缘数据库的关系是什么?

从应用角度来看,光靠本地的信息并不能够判定情景态势,光靠一种、几种传感信息也无法对情景进行描述,因此,节点数据必须集成起来。节点数据库存储的是本地感知数据,节点数据库间需要相互配合。同时,边缘的存储和处理能力有限,能源供应能力也有限,所以,数据分析、复杂数据处理和全局情景态势分析需要靠中心节点来实现。节点数据库和中心数据库也需要有机集成起来。这些数据库需要一个统一的概念模式。

可以采用前面所述的松耦合形式在这些数据库上构建一个多数据库系统。但是,由于多数据库具有的松耦合特征,节点间协调能力不足,这种数据库的效率受限。因此,更为合理的做法是构建一个经典的分布式数据库。这样,分布式数据库是一个不均衡的分布式数据库。换言之,核心节点承担主要的存储和计算功能,边缘起着辅助作用,2PC的协调者角色也是由核心节点担任。

但是,由于系统中的节点太多,直接汇聚到中心系统难以实现。因此,会有一个汇聚层的体系架构加入进来,如图20.14所示。

图20.14 有汇聚层的体系架构

需要注意的是,这里讨论的仅是初步的物联网数据库架构。如前所示,为了适应应用,需要将感知数据升华为情景,保证系统能及时、准确地做出反应。情景数据库的建设是物联网应用的核心之一。

情景是不同信息的多维组合,实时动态情况中可以抽象为各种情景实例信息及其之间的关系、作用。静态结构中,这些实例能够归纳为一些情景概念,情景概念之间存在上下位、属性、各种概念间关系、方法等。