Cloud Architecture

PART 1. INTRODUCTION
Cloud Architecture

 

Eurotech’s Everyware™ Cloud provides a “Device as a Service” architecture for connecting data-gathering devices to your business infrastructure.

 

The Cloud architecture of Collect, Communicate, Store, and Act puts you in control of your devices in the field:

 

image001.png

 

Here are definitions of the Everyware Cloud terms you will see throughout this manual:

 

Sensors & Devices

M2M Gateways

MQTT Protocol

Broker

Rule Engine

Data Store

APIs

Console

Application Business Logic

 

Sensors & Devices

 

A wide variety of sensors and devices are in use across the industry.  Often, these devices contain important data that is needed by business applications for real-time business decisions, data aggregation, or statistical modeling; but such actions are hindered by the lack of an easy connection between devices and applications.  The Everyware Cloud provides the needed connection for data gathering and distribution.

 

 

 

sensors.png

 

 

M2M Gateways

 

Eurotech provides a number of robust hardware platforms, including DuraCor, DuraNav, and Helios.  These platforms provide a gateway between the device-level components and the Cloud, and form the “Device” portion of the Everyware Device Cloud (EDC).

 

 

 

 

Helios.png

 

 

 

MQTT Protocol

 

The Everyware Cloud is designed to use a publish-subscribe message brokering protocol known as MQTT.  MQTT is an open standard transport layer, which uses a hierarchical topic namespace and a flexible data payload.  MQTT is bandwidth efficient and simple to implement, providing both security and reliability of transport and a decoupling of data producers from application consumers, in a one-to-many message distribution.  Eurotech’s Everyware Software Framework (ESF) includes MQTT as a standard data communication feature.

 

 

 

 

mqtt.png

 

 

 

Broker

 

The core technology of Everyware Cloud is the message broker.  The broker runs in the Cloud and provides an MQTT server into which devices publish their data.  MQTT clients may also issue subscriptions for certain topic namespace definitions.  When a data payload is published into the Cloud on a certain topic, the payload is redistributed to connected clients subscribed to that topic.

 

 

 

 

 

 

 

Rule Engine

 

The Everyware Cloud uses a SQL-based rules engine to process incoming published data, allowing immediate message processing and/or notifications to occur based on user-defined criteria.  Statistical rules are applied over the data in real-time.  The actions generated by a rule can include e-mail, SMS, or Twitter notification, an MQTT publish event, or a REST API call.

 

 

 

 

 

 

 

Data Store

 

The Everyware Cloud utilizes a non-SQL database for device data storage.  The data is redundant and replicated across geographical regions for maximum reliability.  Device/user and data plan details are stored in a separate replicated, redundant SQL database.

 

 

 

 

 

 

 

APIs

 

REST APIs provide easy, programmatic access to request or store data from the storage databases and to all the other features of the Cloud platform.  The APIs allow you to incorporate the data into another system or to develop custom applications within your enterprise.

 

 

 

Console

 

The Everyware Cloud Console provides a graphical user interface that shows all aspects of your account’s operation.  Your account administrator can manage users, devices, data, data plans, and rules definitions through the console.  Users can be given permissions to view data, as needed.

 

 

 

 

Application Business Logic

 

The Everyware Cloud is designed to provide a “zero configuration” communication architecture, allowing you to focus on developing business application components, without having to worry about device-level programming or complicated data networks.  It is a powerful software framework, leveraging the power and redundancy of cloud computing, open-standard protocols (MQTT, TCP/IP, REST), and strong security.

 

applications.png