A proposed performance evaluation of NoSQL databases in the field of IoT
Aya Al‐Sakran, Hazem Qattous, Mohammad Hijjawi · 2018
As one of the largest-technology penetrations, Internet of Things (IoT) has gained a considerable attention across both, research communities and industrial domains. IoT is a network of billions of connected devices that are capable of communicating over the Internet. In IoT, data is generated exponentially by different real-time applications (e.g., social network sites and sensor-based devices). The traditional relational database management technologies are inappropriate to deal with such new generation of data due to its limited processing speed, scalability issues, and limited storage capacity. The advent of Big Data requires new advanced technologies that are capable of handling (storing, retrieving and processing) large amount of unstructured data that IoT applications produce. Not Only SQL (NoSQL) databases emerged as a solution to overcome some limitations of the traditional relational database. Recently, many NoSQL databases have been announced (e.g., Cassandra, MongoDB, HBase, Apache Hadoop, Voldemort) to deal with tremendous amounts of unstructured data. These databases depend mainly on distributed algorithms for their work in the field of IoT. One of the most used distributed algorithms is Chord protocol. However, Chord algorithm is inefficient in some cases because of its way of handling messages transferred between connected devices. All the messages in Chord are passed clockwise along the Chord ring, which leads to send a huge number of redundant messages. Chord works by creating a lookup table for each node connected to the network, which generates huge number of tables that should be updated regularly with the routing information. This paper presents a proposal for implementing an enhanced version of the distributed Chord protocol using the most two popular NoSQL databases, namely: MongoDB and Cassandra. The new version of the Chord algorithm will be evaluated and compared to the current algorithm against their performance using the two databases. Moreover, the two databases will be compared regarding their performance in terms of database operations (reading, writing, updating and deleting) and the number of messages that are sent by the nodes. The home environment controlling IoT application will be simulated using SensibleThings distributed platform for simulating the implementation of the modified protocol and to compare between the performance of the two databases.