ABT: Control of Remote Sites through Azure Event Hubs

As mentioned in the overview of this series ABT Power Management (ABT)’s Remote Automatic Asset Management System (RAAMS), using Azure Event Hubs in place of FTP and linked servers means the only requirement to monitor a remote site is an Internet connection.  Little to nothing is required of the customer or ABT personnel.  This is accomplished through the Neuron, an application using Azure’s Event Hubs in conjunction with the Azure Web App Service and Azure Storage Blobs.

Setting up the Azure Web App Service

To set up a site, the Azure Web App service presents a simple web front end to a SQL Azure Database that allows them to enter information about a site.  Authentication is through ABT’s Active Directory, so there’s no need to create a separate directory for Azure.  The website is available via the internet so is accessible on premise, at a remote site, or at home.  Here’s the template used.


Azure Web Service
Template used to enter information about am Azure site

Application Deployment and Setup from Azure Blob Storage

After site setup, this also holds true for the installation of the application as well.  Using Microsoft’s Click Once technology the application and any updates are placed in an Azure Storage Blob for installation and upgrades via URL.  The application automatically checks for any updates, so every site always has the same version of the Neuron Application.

Below is an example of the web page.

Making sure every site has the same version of the Neuron application
Making sure every site has the same version of the Neuron application

The Neuron Application Azure Event Hub Architecture

The Neuron Application is controlled from Azure services allowing for centralized management of, not just updates, but the process of collecting data.  Once installed, commands are sent to the Neuron Application through Azure Event Hubs.

Consumption from Azure Event Hubs

Sending commands to the Neuron Application through Azure Event Hubs.
Sending commands to the Neuron Application through Azure Event Hubs

There is one event hub per collection point through which primarily Transact SQL commands are sent to the Neuron Application.  A select command may be sent to get the latest events from the chargers on that collection point or to update charge curves for those same chargers in the form of an update statement.  An example would be Select * from Chargers.  Configuration updates are also sent as commands.  If there was a need to change the name of the Microsoft SQL Server instance on the collection point, it would be sent via the event hub and the Neuron Application would update the configuration file.  There’s no need to go to the individual machine.

Publishing to Azure Event Hubs

The results of these commands are published to a single event hub specific to that command.  Continuing with selecting the latest events from a charger example, all of the events are published to a central event hub that collects charger events for downstream processing.  There may be no data to publish back, as in the case of updating a charge curve.  All commands publish results to a single commandresponse  event hub indicating the success or failure of the command.  If there is a failure it will also include the error message.

Command Response Event Hub
Publishing all commands to a single commandresponse event hub

This centralization of management means there is very little that can go wrong with the application and troubleshooting is largely confined to Azure services.

Next Step: Azure Stream Analytics

Part 3 of this series will discuss Azure Stream Analytics and how it decreases the complexity of version control and gives access to data for analysis in near real time.


Angelia Thompkins
Angelia is a Data Analytics Consultant with more than 10 years of experience in business intelligence, advanced analytics and IoT.
Angelia Thompkins

Please share your thoughts on this post:

Your email address will not be published. Required fields are marked *

About Mariner

Call Us Email Us

How Can We Help You?

Mariner © 2020. All Rights Reserved.