CN103377252B - 在物联网中进行数据过滤的方法和装置 - Google Patents
在物联网中进行数据过滤的方法和装置 Download PDFInfo
- Publication number
- CN103377252B CN103377252B CN201210130414.7A CN201210130414A CN103377252B CN 103377252 B CN103377252 B CN 103377252B CN 201210130414 A CN201210130414 A CN 201210130414A CN 103377252 B CN103377252 B CN 103377252B
- Authority
- CN
- China
- Prior art keywords
- predicate
- dynamic
- static
- data
- sub
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/70—Services for machine-to-machine communication [M2M] or machine type communication [MTC]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Arrangements For Transmission Of Measured Signals (AREA)
Abstract
本发明涉及物联网,其公开了一种在物联网中进行数据过滤的方法和装置,其中所述物联网包括多个传感器设备,该方法包括:输入应用部署的规则;将所述规则转化为由静态谓词和动态谓词构成的至少一个子谓词表达式;输入传感器设备采集的数据;利用所述子谓词表达式的静态谓词和动态谓词对所述采集的数据进行顺序匹配;以及将匹配的数据分发给所述应用。本发明的数据过滤方法和装置将规则划分为静态谓词匹配和动态谓词,并且按照先匹配静态谓词,再匹配动态谓词的顺序进行匹配,能够加快谓词匹配的速度,快速高效的实现物联网的数据过滤。
Description
技术领域
本发明涉及物联网,特别涉及在物联网进行数据过滤的方法和装置。
背景技术
物联网是新一代信息技术的重要组成部分,特指物物相连的网络。具体地,物联网是指通过各种信息传感设备,如传感器、射频识别(RFID)技术、全球定位***、红外感应器、激光扫描器、气体感应器等各种装置与技术,实时采集任何需要监控、连接、互动的物体或过程,采集其声、光、热、电、力学、化学、生物、位置等各种需要的信息,与互联网结合形成的一个巨大网络。物联网目的是实现物与物、物与人、所有的物品与网络的连接,以方便识别、管理和控制。
在物联网中,应用网关(application gateway)位于应用服务器和底层传感网络之间,用于汇聚数据、分发数据。由于物联网中数据量很大,而且并不是每个应用都会关心所有的数据。所以,每个应用需要在应用网关中定义一些规则进行数据过滤,只有那些符合应用所定义规则的物联网数据才会被应用网关转发至应用。由于物联网中的数据量非常大,而且每一条数据都要进行规则集合的匹配,这对应用网关中的数据过滤(规则匹配)引擎提出了很高的要求。
在现有技术中,复杂事件处理***(Complex Event processing system)可以实现数据过滤,在复杂事件处理***中,应用可以预先定义事件模式(即事件之间的先后关系),复杂事件处理***在接收处理大量事件的同时,进行预定义的事件模式匹配,一旦事件模式匹配成功,立刻会通知应用。传统的复杂事件处理***使用状态机的原理来进行事件模式的匹配。如果直接将复杂事件处理***应用于物联网场景,由于物联网中事件(数据)的数目非常大,应用定义的规则也比较多,复杂事件处理***需要保存很多状态信息,事件匹配很难获得快速高效的效果。
RETE算法是实现数据过滤的另一种方法,应用定义基于事实的规则集合,当客户端不断的将一些事实放入RETE的规则引擎中,RETE规则引擎可以基于所有的收到的事实集合和预定义的规则集合,推理出合理的结论。物联网仅需针对每个单独的数据进行过滤,使用RETE算法反而会造成过多历史信息的保存开销,不利于实现高效的匹配过程。
因此需要一种快速高效的用于物联网的数据过滤的方法。
发明内容
基于上述问题,本发明提供一种在物联网中进行数据过滤的方法和装置。
根据本发明的第一方面,提供一种在物联网中进行数据过滤的方法,其中所述物联网包括多个传感器设备,该方法包括:输入应用部署的规则;将所述规则转化为由静态谓词和动态谓词构成的至少一个子谓词表达式;输入所述传感器设备采集的数据;利用所述子谓词表达式的静态谓词和动态谓词对所述采集的数据进行顺序匹配;以及将匹配的数据分发给所述应用。
根据本发明的第二方面,提供一种在物联网中进行数据过滤的装置,其中所述物联网包括多个传感器设备,该装置包括:规则输入模块,被配置为输入应用部署的规则;规则转化模块,被配置为将所述规则转化为由静态谓词和动态谓词构成的至少一个子谓词表达式;数据输入模块,被配置为输入传感器设备采集的数据;数据匹配模块,被配置为利用所述子谓词表达式的静态谓词和动态谓词对所述采集的数据进行顺序匹配;以及数据分发模块,被配置为将匹配的数据分发给所述应用。
根据本发明实施例的在物联网中进行数据过滤的方法和装置将规则划分为静态谓词和动态谓词,并且按照先匹配静态谓词,再匹配动态谓词的顺序进行匹配,加快谓词匹配的速度,快速高效的实现物联网的数据过滤。
附图说明
结合附图,通过参考下列详细的示例性实施例的描述,将会更好地理解本发明本身、优选的实施方式以及本发明的目的和优点,其中:
图1示出适于用来实现本发明实施方式的示例性计算***100的框图;
图2示出物联网的架构示意图;
图3示出根据本发明实施例在物联网中进行数据过滤的方法;
图4示出根据本发明实施例建立子谓词表达式的动态谓词匹配表和静态分发表的流程;以及
图5示出根据本发明的实施例在物联网中进行数据过滤的装置500。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了适于用来实现本发明实施方式的示例性计算***200的框图。如图1所示,计算机***100可以包括:CPU(中央处理单元)101、RAM(随机存取存储器)102、ROM(只读存储器)103、***总线104、硬盘控制器105、键盘控制器106、串行接口控制器107、并行接口控制器108、显示控制器109、硬盘110、键盘111、串行外部设备112、并行外部设备113和显示器114。在这些设备中,与***总线104耦合的有CPU 101、RAM 102、ROM 103、硬盘控制器105、键盘控制器106、串行控制器107、并行控制器108和显示控制器109。硬盘110与硬盘控制器105耦合,键盘111与键盘控制器106耦合,串行外部设备112与串行接口控制器107耦合,并行外部设备113与并行接口控制器108耦合,以及显示器114与显示控制器109耦合。应当理解,图1所述的结构框图仅仅是为了示例的目的,而不是对本发明范围的限制。在某些情况下,可以根据具体情况增加或减少某些设备。
所属技术领域的技术人员知道,本发明可以实现为***、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:可以是完全的硬件、也可以是完全的软件(包括固件、驻留软件、微代码等),还可以是硬件和软件结合的形式,本文一般称为“电路”、“模块”或“***”。此外,在一些实施例中,本发明还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
下面将参照本发明实施例的方法、装置(***)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,这些计算机程序指令通过计算机或其它可编程数据处理装置执行,产生了实现流程图和/或框图中的方框中规定的功能/操作的装置。
也可以把这些计算机程序指令存储在能使得计算机或其它可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令就产生出一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置(instructionmeans)的制造品(manufacture)。
也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令能够提供实现流程图和/或框图中的方框中规定的功能/操作的过程。
图2示出物联网的架构示意图,其中物联网包括应用、应用基础架构(ApplicationInfrastructure)、广域网(Wide Area Network)、接入网络(Access Network)和传感网络(Sensor Network),传感网络由多个传感器设备(Sensor device)构成,传感器设备从外界收集数据信息,通过广域网传输到应用基础架构,应用基础架构包括信息数据库和应用网关(Application gateway),在应用网关实现数据过滤和分发,在数据过滤过程中,需要查询信息数据库进行过滤规则的判断。
图3示出根据本发明实施例在物联网中进行数据过滤的方法,其中所述物联网包括多个传感器设备,包括:在步骤S301,输入应用部署的规则;在步骤S302,将所述规则转化为由静态谓词和动态谓词构成至少一个子谓词表达式;在步骤S303,输入所述传感器设备采集的数据;以及在步骤S304,利用所述子谓词表达式的静态谓词和动态谓词对所述采集的数据进行顺序匹配;在步骤S305,将匹配的数据分发给所述应用。
在步骤S301,输入应用部署的规则,其中所述规则由谓词构成,其中应用程序可以根据其业务逻辑部署规则,假设物联网***中应用部署的规则集合为其中每条规则Ri韵最小可分组成单元为谓词。例如,用于温度控制的应用可以定义一个如下的规则R1:
IF(deVicetype=temperature)
&(Value<15)
&(10cation=2F)
THEN transform:
JMSSink2T0pic
其中规则R1是由三条谓词构成的谓词集合,其中三条谓词分别是:
谓词1:devicetype=temperature(表示传感器设备类型是温度传感器);
谓词2:value<15(表示采集的温度值小于15度);
谓词3:10cation=2F(表示传感器设备的位置在2楼)。
在步骤S302,将所述规则转化为由静态谓词和动态谓词构成至少一个子谓词表达式,进一步包括根据传感器设备的信息将所述规则中的谓词拆分为静态谓词和动态谓词,其中所述传感器设备的信息包括所述传感器设备的静态属性的数据记录;其中传感器设备的信息保存在物联网的信息数据库中,传感器设备的信息包括所述传感器设备的静态属性的数据记录,例如设备标识、地理位置、设备类型以及厂商,静态属性意味着不会随时间而变化。静态谓词被定义为与传感器设备的静态属性相关的谓词,例如,上述规则中的谓词1和3是静态谓词。通常情况下,传感器设备采集的数据中除了包含静态属性的数据之外,还包含随时间变化的数值,定义这些数值的属性为动态属性,例如,温度传感器测量的温度值,动态谓词被定义为与传感器设备采集的数据的动态属性相关的谓词,例如上述规则中的谓词2。
根据本发明的实施例,将所述规则转化为析取范式的表示形式,所述析取范式包括由静态谓词和动态谓词构成的至少一个子谓词表达式。析取范式(DNF)是逻辑公式的标准化(或规范化),它是合取子句的析取。一个逻辑公式被认为是析取范式的,当且仅当它是一个或多个文字的一个或多个合取的析取,DNF中的命题算子是与、或和非,例如下列公式都是析取范式:(A∧B)∨C,A∨B。将规则Ri转化为析取范式的表示形式,析取范式包括至少一个以逻辑与操作连接起来的子谓词表达式,静态谓词位于每个子谓词表达式的前面,便于最先计算,如果该静态谓词表达式的值为假,表明该子谓词表达式的值为假,通过此方法能加速谓词的匹配速度。例如,对于某一规则,其谓词表达式由多个谓词构成,根据信息数据库中记录的静态属性将谓词划分为静态谓词和动态谓词,例如,规则Ri的谓词表达式为A∧(B∨(D∧E)),由A,B,D,E四个谓词构成,其中,B和D为静态谓词,A和E为动态谓词,将该规则转化后变为析取范式的表示形式(B∧A)∨(D∧A∧E),该析取范式包含两个子谓词表达式,分别为(B∧A)和(D∧A∧E),且静态谓词B和D分别处于子谓词表达式的前面。本领域技术人员可以理解,除了析取范式的转化方式,利用谓词可交换的性质,将静态谓词放置于动态谓词之前,并将规则转化为由静态谓词和动态谓词构成的至少一个子谓词表达式的任何现有的和将来的实现方式都在本发明的保护范围内。
根据本发明的实施例,还包括建立每个子谓词表达式的动态谓词匹配表,其中动态谓词匹配表记录了子谓词表达式包含的动态谓词和所述动态谓词在所述动态谓词匹配表中的地址。
根据本发明的实施例,还包括建立每个子谓词表达式的静态分发表,具体地,将传感器设备的静态属性的数据记录与所述子谓词表达式包含的静态谓词进行匹配;响应于匹配结果为真,将所述传感器设备的ID和所述子谓词表达式包含的动态谓词在所述动态谓词匹配表中的地址对应地记录在所述静态分发表中。可以用指针来描述每个传感器设备ID和子谓词表达式包含的动态谓词在所述动态谓词匹配表中的地址之间的对应关系。
图4示出根据本发明实施例建立子谓词表达式的动态谓词匹配表和静态分发表的流程,在步骤S401,向规则集合中输入应用部署的规则;在步骤S402,从规则集合中取出一条规则;在步骤S403,根据传感器设备的信息将所述规则中的谓词拆分为静态谓词和动态谓词;在步骤S404,将所述规则转化为析取范式的表示形式,其中该析取范式包括由静态谓词和动态谓词构成至少一个子谓词表达式;在步骤S405,针对析取范式中的每个子谓词表达式,建立动态谓词匹配表;在步骤S406,针对析取范式中的每个子谓词表达式,建立静态分发表;在步骤S407,判断规则集合是否为空,如果判断结果为是,则过程结束;如果判断结果为否,则过程返回步骤S402。
在步骤S303,输入所述传感器设备采集的数据,其中采集的数据包含传感器设备的ID、动态属性的数据以及静态属性的数据。
在步骤S304,利用子谓词表达式的静态谓词和动态谓词对数据进行顺序匹配,在静态分发表中查找数据中包含的设备ID,如果查询结果为空,则丢弃该数据,如果查找结果为真,则根据静态分发表中记录的描述每个传感器设备的ID和动态谓词地址之间对应关系的指针在动态谓词匹配表中对应的地址找到对应的动态谓词,将设备采集的动态属性的数据依次与查找到的动态谓词进行匹配,然后,指针指向下一步需要匹配的动态谓词。如果需要匹配多个动态谓词,则以指针链表的形式指向动态谓词匹配表中的多个动态谓词。如果匹配结果为真,则在步骤S305,将该匹配的数据分发至所述应用,如果匹配结果为假,则丢弃该数据。本发明将规则匹配划分为静态谓词匹配和动态谓词匹配,通过静态谓词匹配表能加快谓词匹配的速度,过滤掉不符合规则的数据,节省了下一步进行动态谓词匹配的计算开销,同时也节省了数据的存储开销;此外,还可以采用并行的方式对数据进行静态谓词和动态谓词的匹配,从而提高动态谓词的匹配速度,实现快速高效的数据过滤。
实施例:
温度控制的应用定义一个如下的规则:
IF(devicetype=temperature)
&(value<15)
&(location=2F)
THEN transform;
JMSSink2Topic
在信息数据库中保存的传感器设备的信息包括传感器设备1-4的静态属性的数据记录,本发明的实施例,静态属性包括传感器标识信息、地理位置以及设备类型,如表所示。
表1
设备标识 | 地理位置 | 设备类型 |
ID1 | 1楼 | 温度 |
ID2 | 2楼 | 温度 |
ID3 | 2楼 | 湿度 |
ID4 | 2楼 | 温度 |
根据信息数据库中记录的静态属性的数据记录将谓词划分为静态谓词和动态谓词:
静态谓词:A:location=2F
B:devicetype=temperature
动态谓词:C:value<15
该规则的析取范式的形式是(A∧C∧B),将静态谓词放置于动态谓词的前面,转化后的析取范式的形式是(A∧B∧C)。
建立应用的静态分发表和动态谓词匹配表,针对设备信息数据库中传感器设备1-4的静态属性的数据记录分别对析取范式包含的谓词表达式(A∧B∧C)进行判断,由于谓词表达式中的静态谓词与传感器设备2和4的静态属性(地理位置和设备类型)的数据记录匹配结果为真,则将传感器设备2和4的ID以及传感器设备2和4的ID与动态谓词C的地址之间的对应关系记录在静态分发表当中,该静态分发表如表2所示。动态谓词匹配表记录了谓词表达式所包含的动态谓词地址和动态谓词内容,该动态谓词匹配表如表3所示。
表2
设备标识 | 动态谓词地址 |
ID2 | 0x01 |
ID4 | 0x01 |
表3
动态谓词地址 | 动态谓词内容 |
0x01 | value<15 |
.... | .... |
输入传感器设备1-4采集的数据:
<deviceID=ID1,Value=20,Location=1F>;
<deviceID=ID2,Value=10,Location=2F,devicetype=temperature>;
<deviceID=ID3,Value=30,Location=2F,devicetype=humanity>;
<deviceID=ID4,Value=40,Location=2F,devicetype=temperature>....
在静态分发表中分别查找数据中包含的传感器设备ID1-4,结果传感器设备ID1和3的查询结果为空,则丢弃传感器设备ID1和3的数据,传感器设备ID2和4的查找结果为真,则根据静态分发表中记录的传感器设备ID2和4对应的动态谓词在动态谓词匹配表中对应的地址0x01找到对应的动态谓词C,将传感器设备2和4采集的数值Value依次与查找到的动态谓词C进行匹配,传感器设备2的匹配结果为真,则将传感器设备2采集的数据分发至应用,传感器设备4的匹配结果为假,则丢弃该数据。
基于同一发明构思,本发明提出一种在物联网中进行数据过滤的装置,该装置在应用网关中,可以作为应用网关的组件实现数据过滤,图5示出根据本发明的实施例在物联网中进行数据过滤的装置500,其中所述物联网包括多个传感器设备,该装置500包括:规则输入模块501,被配置为输入应用部署的规则;规则转化模块502,被配置为将所述规则转化为由静态谓词和动态谓词构成的至少一个子谓词表达式;数据输入模块503,被配置为输入所述传感器设备采集的数据;数据匹配模块504,被配置为利用所述子谓词表达式的静态谓词和动态谓词对所述采集的数据进行顺序匹配;以及数据分发模块505,被配置为将匹配的数据分发给所述应用。
其中所述静态谓词被定义为与传感器设备的静态属性相关的谓词,所述动态谓词被定义为与传感器设备采集的数据的动态属性相关的谓词。
根据本发明的实施例,所述规则转化模块502包括:谓词拆分模块,被配置为根据传感器设备的信息将所述规则中的谓词拆分为静态谓词和动态谓词,其中所述传感器设备的信息包括所述传感器设备的静态属性的数据记录;析取范式转化模块,被配置为将所述规则转化为析取范式的表示形式,所述析取范式包括由静态谓词和动态谓词构成的至少一个子谓词表达式。
根据本发明的实施例,其中所述规则转化模块还包括:动态谓词匹配表建立模块,被配置为建立所述子谓词表达式的动态谓词匹配表,其中所述动态谓词匹配表记录了所述子谓词表达式包含的动态谓词和所述动态谓词在所述动态谓词匹配表中的地址。
根据本发明的实施例,其中所述规则转化模块还包括:静态分发表建立模块,被配置为建立所述子谓词表达式的静态分发表,其中所述静态分发表记录了所述传感器设备的ID和所述子谓词表达式包含的动态谓词在所述动态谓词匹配表中的地址。
根据本发明的实施例,其中所述静态分发表建立模块还被配置为:将所述传感器设备的静态属性的数据记录与所述子谓词表达式包含的静态谓词进行匹配;响应于匹配结果为真,将所述传感器设备的ID和所述子谓词表达式包含的动态谓词在所述动态谓词匹配表中的地址对应地记录在所述静态分发表中。
根据本发明的实施例,其中所述数据匹配模块还被配置为:在所述静态分发表中查找所述采集的数据中包含的传感器设备的ID;响应于查找结果为假,则丢弃所述采集的数据;响应于查找结果为真,则根据所述静态分发表中记录的与所述传感器设备ID对应的动态谓词在所述动态谓词匹配表中的地址在所述动态谓词匹配表中查找到对应的动态谓词。
根据本发明的实施例,其中所述数据匹配模块还被配置为:将所述采集的数据中具有动态属性的数据依次与查找到的对应的动态谓词进行匹配;响应于匹配结果为假,则丢弃所述采集的数据。
附图中的流程图和框图显示了根据本发明的多个实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (12)
1.一种在物联网中进行数据过滤的方法,其中所述物联网包括多个传感器设备,该方法包括:
输入应用部署的规则;
通过拆分所述应用部署的规则的谓词将所述应用部署的规则转化为由静态谓词和动态谓词构成的至少一个子谓词表达式;
输入所述传感器设备采集的数据;
利用所述子谓词表达式的静态谓词和动态谓词对所述采集的数据进行顺序匹配;以及
将匹配的数据分发给所述应用,
其中通过拆分所述应用部署的规则的谓词将所述应用部署的规则转化为由静态谓词和动态谓词构成的至少一个子谓词表达式还包括:
建立所述子谓词表达式的动态谓词匹配表,其中所述动态谓词匹配表记录了所述子谓词表达式包含的动态谓词和所述动态谓词在所述动态谓词匹配表中的地址,
建立所述子谓词表达式的静态分发表,其中所述静态分发表记录了所述传感器设备的ID和所述子谓词表达式包含的动态谓词在所述动态谓词匹配表中的地址。
2.根据权利要求1所述的方法,其中通过拆分所述应用部署的规则的谓词将所述应用部署的规则转化为由静态谓词和动态谓词构成的至少一个子谓词表达式包括:
根据所述传感器设备的信息将所述应用部署的规则中的谓词拆分为静态谓词和动态谓词,其中所述传感器设备的信息包括所述传感器设备的静态属性的数据记录;
将所述应用部署的规则转化为析取范式的表示形式,所述析取范式包括由静态谓词和动态谓词构成的至少一个子谓词表达式。
3.根据权利要求1所述的方法,其中建立所述子谓词表达式的静态分发表包括:
将所述传感器设备的静态属性的数据记录与所述子谓词表达式包含的静态谓词进行匹配;
响应于匹配结果为真,将所述传感器设备的ID和所述子谓词表达式包含的动态谓词在所述动态谓词匹配表中的地址对应地记录在所述静态分发表中。
4.根据权利要求1所述的方法,其中利用所述静态谓词和动态谓词对所述采集的数据进行顺序匹配包括:
在所述静态分发表中查找所述采集的数据中包含的传感器设备的ID;响应于查找结果为假,则丢弃所述采集的数据;
响应于查找结果为真,则根据所述静态分发表中记录的与所述传感器设备ID对应的动态谓词在所述动态谓词匹配表中的地址在所述动态谓词匹配表中查找到对应的动态谓词。
5.根据权利要求4所述的方法,其中根据所述静态分发表中记录的与所述传感器设备ID对应的动态谓词在所述动态谓词匹配表中的地址在所述动态谓词匹配表中查找到对应的动态谓词还包括:
将所述采集的数据中具有动态属性的数据依次与查找到的动态谓词进行匹配;
响应于匹配结果为假,则丢弃所述采集的数据。
6.根据权利要求1所述的方法,其中所述静态谓词被定义为与所述传感器设备的静态属性相关的谓词,所述动态谓词被定义为与所述传感器设备采集的数据的动态属性相关的谓词。
7.一种在物联网中进行数据过滤的装置,其中所述物联网包括多个传感器设备,包括:
规则输入模块,被配置为输入应用部署的规则;
规则转化模块,被配置为通过拆分所述应用部署的规则的谓词将所述应用部署的规则转化为由静态谓词和动态谓词构成的至少一个子谓词表达式;
数据输入模块,被配置为输入所述传感器设备采集的数据;
数据匹配模块,被配置为利用所述子谓词表达式的静态谓词和动态谓词对所述采集的数据进行顺序匹配;以及
数据分发模块,被配置为将匹配的数据分发给所述应用,
其中所述规则转化模块还包括:
动态谓词匹配表建立模块,被配置为建立所述子谓词表达式的动态谓词匹配表,其中所述动态谓词匹配表记录了所述子谓词表达式包含的动态谓词和所述动态谓词在所述动态谓词匹配表中的地址,
静态分发表建立模块,被配置为建立所述子谓词表达式的静态分发表,其中所述静态分发表记录了所述传感器设备的ID和所述子谓词表达式包含的动态谓词在所述动态谓词匹配表中的地址。
8.根据权利要求7所述的装置,其中所述规则转化模块还包括:
谓词拆分模块,被配置为根据传感器设备的信息将所述应用部署的规则中的谓词拆分为静态谓词和动态谓词,其中所述传感器设备的信息包括所述传感器设备的静态属性的数据记录;
析取范式转化模块,被配置为将所述应用部署的规则转化为析取范式的表示形式,所述析取范式包括由静态谓词和动态谓词构成的至少一个子谓词表达式。
9.根据权利要求7所述的装置,其中所述静态分发表建立模块还被配置为:
将所述传感器设备的静态属性的数据记录与所述子谓词表达式包含的静态谓词进行匹配;
响应于匹配结果为真,将所述传感器设备的ID和所述子谓词表达式包含的动态谓词在所述动态谓词匹配表中的地址对应地记录在所述静态分发表中。
10.根据权利要求7所述的装置,其中所述数据匹配模块还被配置为:在所述静态分发表中查找所述采集的数据中包含的传感器设备的ID;响应于查找结果为假,则丢弃所述采集的数据;
响应于查找结果为真,则根据所述静态分发表中记录的与所述传感器设备ID对应的动态谓词在所述动态谓词匹配表中的地址在所述动态谓词匹配表中查找到对应的动态谓词。
11.根据权利要求10所述的装置,其中所述数据匹配模块还被配置为:将所述采集的数据中具有动态属性的数据依次与查找到的对应的动态谓词进行匹配;
响应于匹配结果为假,则丢弃所述采集的数据。
12.根据权利要求7所述的装置,其中所述静态谓词被定义为与所述传感器设备的静态属性相关的谓词,所述动态谓词被定义为与所述传感器设备采集的数据的动态属性相关的谓词。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210130414.7A CN103377252B (zh) | 2012-04-28 | 2012-04-28 | 在物联网中进行数据过滤的方法和装置 |
US13/869,236 US9372886B2 (en) | 2012-04-28 | 2013-04-24 | Data filtering in the internet of things |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210130414.7A CN103377252B (zh) | 2012-04-28 | 2012-04-28 | 在物联网中进行数据过滤的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103377252A CN103377252A (zh) | 2013-10-30 |
CN103377252B true CN103377252B (zh) | 2018-03-27 |
Family
ID=49462378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210130414.7A Active CN103377252B (zh) | 2012-04-28 | 2012-04-28 | 在物联网中进行数据过滤的方法和装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9372886B2 (zh) |
CN (1) | CN103377252B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108415818A (zh) * | 2018-03-01 | 2018-08-17 | 山东大学 | 一种考虑繁忙程度的大数据平台多服务接口执行时间预测方法 |
Families Citing this family (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9286311B2 (en) * | 2012-06-14 | 2016-03-15 | Santhosh Adayikkoth | Real-time filtering of relevant events from a plurality of events |
US9609062B2 (en) * | 2013-06-26 | 2017-03-28 | Qualcomm Incorporated | Semantic mappings from human readable messages to programmatic interfaces |
US10075500B2 (en) * | 2013-08-22 | 2018-09-11 | Korea Advanced Institute Of Science And Technology | Service method and system using instance interface of virtualization object in internet of things environment |
EP2892251B1 (en) * | 2014-01-06 | 2017-09-13 | 2236008 Ontario Inc. | System and method for machine-to-machine communication |
US9838454B2 (en) | 2014-04-23 | 2017-12-05 | Cisco Technology, Inc. | Policy-based payload delivery for transport protocols |
US9806974B2 (en) | 2014-04-23 | 2017-10-31 | Cisco Technology, Inc. | Efficient acquisition of sensor data in an automated manner |
US20150381737A1 (en) * | 2014-06-30 | 2015-12-31 | Davra Networks Limited | Gateway device and a gateway system for an internet-of-things environment |
US10356649B2 (en) * | 2014-09-26 | 2019-07-16 | Intel Corporation | Multisensory change detection for internet of things domain |
JP6444125B2 (ja) * | 2014-10-07 | 2018-12-26 | キヤノン株式会社 | 情報処理装置、情報処理装置の制御方法、及びプログラム |
KR101570619B1 (ko) * | 2014-10-08 | 2015-11-30 | 한국과학기술원 | 인스턴스 호스팅 환경에서의 성능 개선 방법 및 서비스 시스템 |
US20160132816A1 (en) * | 2014-11-11 | 2016-05-12 | QMerit, Inc. | Unified Workforce Platform |
US9927784B2 (en) | 2014-12-04 | 2018-03-27 | At&T Intellectual Property I, L.P. | Ubiquitous computing methods and apparatus |
CN104580424B (zh) * | 2014-12-26 | 2019-04-30 | 珠海格力电器股份有限公司 | 智能家居***的数据上报方法和装置 |
CN105704198B (zh) * | 2014-12-29 | 2019-03-12 | 新疆金牛能源科技有限责任公司 | 一种物联网管理控制***及方法 |
EP3289752B1 (en) | 2015-05-01 | 2019-08-21 | PCMS Holdings, Inc. | Systems, methods, and devices to defend against attacks |
KR102539939B1 (ko) | 2015-05-21 | 2023-06-05 | 클라우드트랙 엘엘씨 | 식별, 위치결정 및 인증 시스템들 및 방법들 |
KR20160140185A (ko) * | 2015-05-29 | 2016-12-07 | 삼성전자주식회사 | 통신 서비스를 수행하는 방법 및 이를 위한 장치 |
US10542118B2 (en) * | 2015-09-24 | 2020-01-21 | Intel Corporation | Facilitating dynamic filtering and local and/or remote processing of data based on privacy policies and/or user preferences |
CN105491023B (zh) * | 2015-11-24 | 2020-10-27 | 国网智能电网研究院 | 一种面向电力物联网的数据隔离交换和安全过滤方法 |
CN105487096A (zh) * | 2015-12-02 | 2016-04-13 | 国网辽宁省电力有限公司 | 电力通信作业现场多模定位的方法 |
US10230681B2 (en) * | 2015-12-14 | 2019-03-12 | International Business Machines Corporation | Method and apparatus for unified message adaptation |
US10129227B2 (en) | 2015-12-23 | 2018-11-13 | Mcafee, Llc | Sensor data collection, protection, and value extraction |
CN105930881A (zh) * | 2016-04-14 | 2016-09-07 | 山东万里红信息技术有限公司 | 一种可自动识别货物的智能物流管理移动终端 |
CN106020090B (zh) * | 2016-07-28 | 2019-02-05 | 普奥云信息科技(北京)有限公司 | 数据包生成装置以及物联网*** |
US11115793B2 (en) | 2016-08-04 | 2021-09-07 | At&T Mobility Ii Llc | LTE gateways for home and commercial sensor data |
US10275519B2 (en) | 2016-08-22 | 2019-04-30 | International Business Machines Corporation | Sensor based context augmentation of search queries |
US10372767B2 (en) | 2016-08-22 | 2019-08-06 | International Business Machines Corporation | Sensor based context augmentation of search queries |
JP2019537808A (ja) | 2016-09-19 | 2019-12-26 | ノースラップ,チャールズ | シングマシン |
KR20180035375A (ko) * | 2016-09-29 | 2018-04-06 | (주)섬엔지니어링 | 사물인터넷의 이종 도메인간 측정데이터 획득을 위한 자원관리시스템 |
EP3376731B1 (en) * | 2017-03-15 | 2019-12-25 | ABB Schweiz AG | Rule-based information exchange in internet of things |
CN107332776B (zh) * | 2017-06-19 | 2020-04-07 | 深圳市盛路物联通讯技术有限公司 | 一种边缘转发节点的路由信息表更新方法及边缘转发节点 |
CN107197502B (zh) * | 2017-06-19 | 2020-03-24 | 深圳市盛路物联通讯技术有限公司 | 一种控制边缘路由节点更新路由信息表的方法及设备 |
CN107197501B (zh) * | 2017-06-19 | 2020-03-24 | 深圳市盛路物联通讯技术有限公司 | 一种基于被监测设备更新路由信息表的方法及设备 |
CN107395677B (zh) * | 2017-06-21 | 2020-04-07 | 深圳市盛路物联通讯技术有限公司 | 一种基于终端设备优先级的数据上报控制方法及*** |
CN107317726A (zh) * | 2017-06-21 | 2017-11-03 | 深圳市盛路物联通讯技术有限公司 | 一种物联网数据的上报控制方法及设备 |
CN107197442B (zh) * | 2017-06-21 | 2020-09-25 | 深圳市盛路物联通讯技术有限公司 | 一种物联网数据的上报控制方法及*** |
CN107332887B (zh) * | 2017-06-21 | 2019-11-19 | 深圳市盛路物联通讯技术有限公司 | 一种基于场景信息的物联网数据智能过滤方法及*** |
CN107317854B (zh) * | 2017-06-21 | 2020-03-24 | 深圳市盛路物联通讯技术有限公司 | 基于控制表的终端设备上报频率调节方法及路由节点 |
CN107465719B (zh) * | 2017-06-21 | 2020-06-16 | 深圳市盛路物联通讯技术有限公司 | 一种应用于物联网的数据处理方法及*** |
CN107277138B (zh) * | 2017-06-21 | 2018-10-09 | 深圳市盛路物联通讯技术有限公司 | 基于转发节点和过滤网关的双重数据过滤方法及*** |
CN111049749B (zh) * | 2017-06-21 | 2023-06-06 | 深圳市盛路物联通讯技术有限公司 | 一种终端设备的物联网数据上报频率的控制及*** |
CN107197034B (zh) * | 2017-06-21 | 2020-12-01 | 深圳市盛路物联通讯技术有限公司 | 一种边缘路由节点及其上报频率调整方法 |
CN107465566B (zh) * | 2017-06-21 | 2020-06-19 | 深圳市盛路物联通讯技术有限公司 | 一种物联网数据的过滤控制方法及路由节点 |
US11350360B2 (en) | 2017-06-27 | 2022-05-31 | Amazon Technologies, Inc. | Generating adaptive models for IoT networks |
EP3646538A1 (en) * | 2017-06-27 | 2020-05-06 | Amazon Technologies Inc. | Model and filter deployment across iot networks |
US10554382B2 (en) | 2017-06-27 | 2020-02-04 | Amazon Technologies, Inc. | Secure models for IoT devices |
US11157442B2 (en) * | 2017-07-14 | 2021-10-26 | Ricoh Company, Ltd. | Information processing apparatus, information processing system, and information processing method |
CN108776696B (zh) * | 2018-06-05 | 2023-04-18 | 平安科技(深圳)有限公司 | 节点配置方法及装置、存储介质和电子设备 |
CN109450786B (zh) * | 2018-12-25 | 2021-03-23 | 上海上实龙创智慧能源科技股份有限公司 | 一种基于规则引擎的边缘网关 |
CN110460526B (zh) * | 2019-06-29 | 2021-08-10 | 天津大学 | 一种用于面向内容的物联网组网数据采集分发的通信方法 |
CN110572427A (zh) * | 2019-07-24 | 2019-12-13 | 南京智能制造研究院有限公司 | 应用于数据网关的离线数据过滤存储的方法及*** |
CN110543282A (zh) * | 2019-07-24 | 2019-12-06 | 南京智能制造研究院有限公司 | 一种应用于边缘计算网关的触发快照存储方法及*** |
CN112685611B (zh) * | 2020-12-31 | 2024-07-19 | 恒安嘉新(北京)科技股份公司 | 一种数据过滤方法、装置、存储介质及电子设备 |
US11228642B1 (en) * | 2021-04-14 | 2022-01-18 | Veeva Systems Inc. | Computing networks and systems for submitting data |
CN113254502B (zh) * | 2021-06-07 | 2023-06-30 | 湖北央中巨石信息技术有限公司 | 多方同类数据过滤取值的方法及***及装置及介质 |
CN115879160B (zh) * | 2023-02-08 | 2023-05-26 | 杭州海康威视数字技术股份有限公司 | 基于语义感知的可定制隐私保护方法、***、装置及设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8068986B1 (en) * | 2007-04-27 | 2011-11-29 | Majid Shahbazi | Methods and apparatus related to sensor signal sniffing and/or analysis |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040103139A1 (en) * | 2000-03-30 | 2004-05-27 | United Devices, Inc. | Distributed processing system having sensor based data collection and associated method |
US7127467B2 (en) * | 2002-05-10 | 2006-10-24 | Oracle International Corporation | Managing expressions in a database system |
US6963289B2 (en) * | 2002-10-18 | 2005-11-08 | Aeroscout, Ltd. | Wireless local area network (WLAN) channel radio-frequency identification (RFID) tag system and method therefor |
US20080074496A1 (en) * | 2006-09-22 | 2008-03-27 | Object Video, Inc. | Video analytics for banking business process monitoring |
US20080201078A1 (en) * | 2006-09-28 | 2008-08-21 | Dudley Fitzpatrick | Apparatuses, Methods and Systems for Determining and Announcing Proximity Between Trajectories |
US8280617B2 (en) * | 2008-01-03 | 2012-10-02 | University Of Maryland | Monitoring a mobile device |
US8270960B2 (en) * | 2008-04-17 | 2012-09-18 | Sony Mobile Communications Ab | Connecting mobile terminals based on sensor data |
CA2690506C (en) * | 2009-01-20 | 2016-05-10 | Parata Systems, Llc | Methods, systems, and apparatus for determining and automatically programming network addresses for devices operating in a network |
CN101515334A (zh) * | 2009-04-07 | 2009-08-26 | 华中科技大学 | 一种用于射频识别中间件的电子标签数据过滤方法 |
US8219581B2 (en) * | 2009-05-13 | 2012-07-10 | Teradata Us, Inc. | Method and system for analyzing ordered data using pattern matching in a relational database |
TWI414163B (zh) * | 2009-12-04 | 2013-11-01 | Ind Tech Res Inst | 異質無線感測網路橋接裝置以及異質無線感測網路橋接裝置之控制方法以及流量平衡方法 |
KR101417194B1 (ko) * | 2010-10-06 | 2014-07-09 | 한국전자통신연구원 | 식별자 관리 서버, 응용 서비스 플랫폼, 센서노드의 식별자를 이용한 장치 인식 방법 및 시스템 |
US8867996B2 (en) * | 2011-01-14 | 2014-10-21 | Alcatel Lucent | Area tracking systems and methods of tracking electronic devices |
CN102201958B (zh) * | 2011-06-13 | 2013-12-11 | 山东中创软件工程股份有限公司 | 一种物联网数据传输方法及设备 |
US9936382B2 (en) * | 2011-11-21 | 2018-04-03 | Vital Connect, Inc. | Method and system for pairing a sensor device to a user |
-
2012
- 2012-04-28 CN CN201210130414.7A patent/CN103377252B/zh active Active
-
2013
- 2013-04-24 US US13/869,236 patent/US9372886B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8068986B1 (en) * | 2007-04-27 | 2011-11-29 | Majid Shahbazi | Methods and apparatus related to sensor signal sniffing and/or analysis |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108415818A (zh) * | 2018-03-01 | 2018-08-17 | 山东大学 | 一种考虑繁忙程度的大数据平台多服务接口执行时间预测方法 |
CN108415818B (zh) * | 2018-03-01 | 2020-03-27 | 山东大学 | 一种考虑繁忙程度的大数据平台多服务接口执行时间预测方法 |
Also Published As
Publication number | Publication date |
---|---|
US20130290305A1 (en) | 2013-10-31 |
CN103377252A (zh) | 2013-10-30 |
US9372886B2 (en) | 2016-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103377252B (zh) | 在物联网中进行数据过滤的方法和装置 | |
CN110147722A (zh) | 一种视频处理方法、视频处理装置及终端设备 | |
CN106130899B (zh) | 一种生成业务路径的方法和装置 | |
CN108605010A (zh) | 利用分布式计算图快速预测分析超大型数据集 | |
CN107682466A (zh) | Ip地址的地域信息搜索方法及其装置 | |
CN104731945B (zh) | 一种基于HBase的全文检索方法及装置 | |
JP5923510B2 (ja) | オンライン取引プラットフォームのための検索方法、装置およびサーバ | |
CN112311571B (zh) | 网络拓扑生成方法及装置、电子设备和非暂态存储介质 | |
CN104077311B (zh) | 车辆位置索引方法及装置 | |
US9720982B2 (en) | Method and apparatus for natural language search for variables | |
CN107273540A (zh) | 分布式搜索及索引更新方法、***、服务器及计算机设备 | |
CN103177066B (zh) | 分析和表示人际关系 | |
CN108090179A (zh) | 一种Spark并发子图查询的方法 | |
CN109947791A (zh) | 一种数据库语句优化方法、装置、设备及存储介质 | |
JP2023535108A (ja) | ビデオタグ推薦モデルのトレーニング方法及びビデオタグの決定方法、それらの装置、電子機器、記憶媒体及びコンピュータプログラム | |
CN108040111A (zh) | 一种支持自然语言交互的装置和方法 | |
CN109063114B (zh) | 能源云平台的异构数据集成方法、装置、终端及存储介质 | |
CN109729095A (zh) | 数据处理方法、装置和计算设备及介质 | |
CN105335466A (zh) | 一种音频数据的检索方法与装置 | |
CN106991097A (zh) | 一种识别数据的处理方法及装置 | |
CN111160629A (zh) | 结合k-means和随机森林的变压器油温预测方法 | |
CN103377236B (zh) | 一种用于分布式数据库的连接查询方法及*** | |
CN110874366A (zh) | 数据处理、查询方法和装置 | |
CN116091045B (zh) | 一种基于知识图谱的通信网络运维方法和运维装置 | |
KR20120079630A (ko) | 멀티 모달리티 데이터 색인 및 검색 방법, 그 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |