The IoTsens platform architecture has been designed to provide high flexibility and scalability since it works in demanding environments where reliability and performance are mandatory.
The main technologies used are:
Elasticsearch is a search server based on Lucene. It provides a distributed, multitenant-capable full-text search engine with a RESTful web interface and schema-free JSON documents. Elasticsearch is distributed, which means that indices can be divided into shards and each shard can have zero or more replicas. Each node hosts one or more shards, and acts as a coordinator to delegate operations to the correct shard(s). Rebalancing and routing are done automatically. Additionally it is integrated with the Hadoop Ecosystem. Developers can write MapReduce jobs that index existing data in HDFS, enabling search through the Elasticsearch REST API and related ecosystem.
The MQ Telemetry Transport (MQTT) protocol is a lightweight publish/subscribe protocol flowing over TCP/IP for remote sensors and control devices through low bandwidth, unreliable or intermittent communications. These characteristics make it ideal for use in constrained environments. MQTT v3.1.1 is an OASIS Standard. MQTT is designed to be open, simple and easy to implement, allowing thousands of lightweight clients to be supported by a single server.