致;有损压缩则允许压缩之前的数值与解压缩之后的数值有误差;
允许误差为解压缩并插值还原数据之后与实际值的误差范围,若允许误差为 Δ ,则解
压缩并还原之后的数值与实际值相差在[‑ Δ ,+ Δ ]范围内,即:
其中,T为当前时间;t是T之前的任一个历史时间点;HisData
t
为采集点在t时间点使用
插值还原算法恢复的历史数据;ActualData
t
为传感器/采集点在t时间点实际发生的历史
数据;
插值/还原算法用于指定对历史数据进行查询时采用的插值/还原算法,插值/还原算
法包括台阶插值和线性插值;台阶插值是指在到达下一个采集数据之前都保持当前的数
值,开关量均采用该插值算法;线性插值是指插值函数为一次多项式的插值方式,插值函数
在采集时间点上的插值误差为零,模拟量通常均采用线性插值算法;
生命周期用于指定采集点的历史数据持久化的最短时间,未超过生命周期的历史数据
必须保留,超过生命周期的数据被删除。
3.根据权利要求1或2所述的基于物联网的数据存储管理及查询分析方法,其特征在
于,基于关系数据模型的二维表引入第三维度后,每张表包括多个离散的列以及实时列,含
有实时列的表称为实时表,实时表为一类设备,其中的一条记录是一个具体的设备,其中的
实时列是任一个具体采集点;
其中,每个实时列除了当前记录的实时数据外,维护历史数据队列/数据,具体操作如
下:
将当前记录上的实时列数据追加到历史数据队列/数组中;
在当前记录上覆盖实时列的数据为新数据;
若该实时列的属性“是否存储历史”设置为否,则对该实时列的更新操作与关系列的更
新操作一样,直接在当前记录上覆盖实时列的数据即可;
创建一张实时表的语法具体如下:
CREATE TABLE table_name(
column1[realtime]datatype ,
column2[realtime]datatype ,
column3[realtime]datatype ,
.....
columnN[realtime]datatype ,
PRIMARY KEY(one or more columns)
);
在列数据类型前面加上关键字realtime表明该字段/列是实时列,否则就是关系列;
一张实时表用于定义物联网应用中的一类设备,含有相同的关系列和相同的实时列;
实时表中插入表一条记录的语法如下:
INSERT INTO table_name(column1 ,column2,column3 ,...)
VALUES(
value1|{initial:value1 ,historian:his1 ,compressed:comp1 ,deviation:dev1 ,
interpolation:inter1 ,lifetime:life1} ,
权 利 要 求 书
2/8 页
3
相关文档
评论