Archive | 2019
A Lightweight Time Series Main-Memory Database for IoT Real-Time Services
Abstract
With the rapid development of Internet of things (IoT), a large number of IoT sensing devices produces amounts of sensing data in every second. These data should be processed in real-time to support IoT real-time services. The growth of IoT real-time services has been hampered due to the barriers of data storage efficiency and data processing performance with the traditional database system architecture. This paper proposes a lightweight time series main-memory database (TSMMDB) system for IoT real-time services. Firstly, we propose a tree structure of IoT sensing data model based on the IoT real-time monitoring business. The leaves of the tree are three-dimension tables. The data can be retrieved according to time, resource and measure. Based on the data model, we propose a customized virtual heap and virtual heap memory allocator. The applications can access the whole data in the database in their own processes based on shared memory without transferring data, and can achieve data persistence automatically based on memory mapping. The flexible data locality memory allocation makes the adjacent time series data storing in the continuous memory space which improves the data clustered analysis performance. The data access algorithm of TSMMDB has ideal time complexity, and experimental results show that TSMMDB has better performance significantly than the traditional main-memory database and disk-based relational database.