Sunday, December 8, 2019

Basic IOT Platform Architecture




IOT Platform:


     Let's start with whats IOT ...?


IOT is simply the network of interconnected things/devices which are embedded with sensors, software, network connectivity and necessary electronics that enables them to collect and exchange data making them responsive.

Any device can be IOT device, just they need to enable to the Internet .



So Why do we need Platform for it ...?


 Generally purpose of making the IOT platform is to Connect all your different device to the single entry point and control them via your application.

Platform refer to your multiple different device ,say your speakers and watches which emits different data, that needs to be managed and toprovide analytics based on the data for which we don't need to know the data format.


Overall architecture of the platform:






Data Flow :


IOT device emits the data via MQTT ,these emitted data is listened from Micro service Layer
and later these device data is stored in the No SQL DB , required data is persisted from micro service layer and presented  informative data on the UI with graph.


  • Mqtt Layer :

    • Mqtt is very light messaging protocol used widely in the IOT device for communications.
    • Mqtt has the authentication feature were we can authenticate individual device.
    • Info :http://mqtt.org/

  • Micro Service Layer:

    • Here we have different service to listen and route message to service and store this device data in the Database.
    • In this layer, we can scale our application , increase the performance, routing of the service and fine tuning of the service can be done.
    • Popular is Spring boot which can be  used as the individual service for each task.

  • Database Layer :

    • In this layer  we can store all the required data in the horizontal scale , to  provide better aggregation over period of time and statics analysis of the data.
    • Best database to be used is Mongo or Elastic.

  • UI Representation :

    • In this layer we can provide better UI and  represent the aggregated data in the form of charts to the user .
    • We can go with  Angular or  React with native for cross platforms

No comments:

Post a Comment