Abstract

The new standard oneM2M (one machine-to-machine) aims to standardize the architecture and protocols of Internet of Things (IoT) middleware for better interoperability. Although the standard seems promising, it lacks several features for efficiently searching and retrieving IoT data which satisfy users’ intentions. In this paper, we design and develop a oneM2M-based query engine, called OMQ, that provides a real-time processing over IoT data streams. For this purpose, we define a query language which enables users to retrieve IoT data from data sources using JavaScript Object Notation (JSON). We also propose efficient query processing algorithms which utilizes the oneM2M architecture consisting of two nodes: (1) the IoT node and (2) the infrastructure node. IoT nodes of OMQ are mainly sensor devices execute user queries the aggregate, transform and filter operators, whereas the infrastructure node handles the join operator of user queries. Since the query processing algorithms are implemented as the hybrid infrastructure-edge processing, user queries can be executed efficiently in each IoT node rather than only in the infrastructure node. Thus, our OMQ system reduces the query processing time and the network bandwidth. We conducted a comprehensive evaluation of OMQ using a real and a synthetic data set. Experimental results demonstrate the feasibility and efficiency of OMQ system for executing queries and transferring data from each IoT node.

Highlights

  • In recent years, there has been a rapid deployment of a massive number of Internet of Things (IoT)devices [1]

  • Unlike traditional database management systems (DBMS) where data are structured in schema and their query languages are standardized, each IoT device has a different data retrieval method, data format, and application programming interface (API)

  • After resolving the target container URIs of each data source definition, the query will pass into the query splitter module. This module splits a query q into two sub-queries: (1) internal sub-query sqint which will be processed in the IoT node and (2) external sub-query sqext which will be processed in the infrastructure node

Read more

Summary

Introduction

There has been a rapid deployment of a massive number of Internet of Things (IoT). Sensors 2018, 18, 3253 lack of collaboration among IoT industries, most existing IoT middleware does not have a common specification for the protocol and services for supporting a broader interoperability [10] To overcome this fragmentation issue, several leading standards development organizations worked together to suggest a new standard called oneM2M is proposed for M2M (machine-to-machine) and IoT. Since existing oneM2M-based middleware focuses on the fragmentation issue or the security issue, they do not provide essential features for searching and retrieving IoT data streams. They lack content-based data processing such as filtering and other basic operations for retrieval.

Related Works
IoT Data Processing
Introduction to oneM2M Standard
Proposed System Architecture
Query Language Definition
Query Engine Architecture
Query Pre-Processor
Stream Query Processor
Software Implementation
Experiments
Stream Query Processor Benchmark
IoT Nodes System Monitoring
Conclusions
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call