IoT

Why IoT ?

The miniaturization of electronics, sensing and actuators devices, coupled with constant high-throughput internet connectivity, allows the creation of solutions and applications where networks of physical objects – such as gadgets, vehicles, and buildings – are remotely controlled and monitored. From smart grids, to smart homes, to intelligent transportation and smart cities, the physical world can seemly merge with the software world – creating an Internet-Of-Things.

Due to its expected ubiquity, IoT presents great opportunities and great challenges to enterprises and IT companies, which need to rely on technologies for high-performance event-processing combined with BigData storage and historical data batch processing.

Technologies of Choice

Spring XD/DataFlow is a distributed event processing technology with a powerful DSL inspired in UNIX-pipelines to express data processing pipelines. A large library of modules is provided based on battle-harden Spring Integration components. Integration with Spring Batch and other Batch processing technologies, allows Spring XD to be use as an orchestration tool to quasi real-time and historical batch data processing – in the form of a Lambda Architecture. Spring DataFlow extends on Spring XD to support multiple deployment run-times – from local containers, to cluster managed containers, to cloud applications.

Apache Storm is a seminal high-performance data ingestion and procession pipeline for Java. A simple programming framework allow the creation of data-processing DAGs that can ingest data from many many sources and to send it to many sinks.

Architectures

IoT Pipelines

IoT event processing workflows allow data gathered from a diverse set of sources – from social media to sensors – to be processed in real-time for monitoring and control purposes. Storage of historical event data complements real-time processing by allowing a more deep and encompassing analysis of the data. Spring XD/DataFlow large set of out-of-box modules and DSL, provides a simple programming model where such pipelines can be easily realized. But the challenges of integrating real-time event processing and batch processing of historical data, implementing rich UI dashboards, visualization data, and training and evaluation of predictive models

Use Cases:

  • Real-time Analysis of User Behavior in Websites
  • Real-time Sentiment Analytics from social media data
  • Fleet Management
  • GPS Navigation
  • Automated Trading

Consulting Services

EInnovator can help identifying business workflows where real-time event processing is needed or beneficial, and define an encompassing architecture and implementation strategy combining – data acquisition and processing, and storage backends, dashboard feature design, definition of predictive model to use, how implementation strategy.