BookmarkSubscribeRSS Feed

IoT Analytics Journey from the Edge to the Cloud

Started ‎03-01-2021 by
Modified ‎03-03-2021 by
Views 8,854

We are living in times where we are seeing Petabytes scale of data being generated from the edge devices in various industries ranging from manufacturing to automotive, banking to retail, smart cities to healthcare, and many others. Businesses are continuously looking for ways to innovate, minimize total costs and stay competitive by deriving value from the data using Internet of Things (IoT) real-time analytics. IoT is bringing fundamental rethinking to the way we do business, influencing to use the right digital infrastructure and operational strategies, and employing the best set of applications to deliver fast and analytical insights. Enterprises are witnessing the immense value in harnessing data for increasing business efficiency and optimization, enhancing customer satisfaction, and investing in new services and other value propositions that differentiates them in the market. It is, of course, a challenging effort for enterprises to move from traditional business models to a data-driven outlook, but it is worth doing it. Undoubtedly, it opens doors to powerful capabilities, makes the best decisions, and surfaces the opportunities that would otherwise have gone unnoticed.

 

SAS is a pioneer in advanced and predictive analytics software solutions with continuous innovation in IoT, Artificial Intelligence (AI), and Machine Learning (ML) aims to help enterprises achieve transformational results covering the entire lifecycle of analytics from data to discovery to deployment. Integrating SAS Analytics with Microsoft Azure brings unmatched cloud-native capabilities, on-demand access to advanced large-scale infrastructures, high-performance guarantees, many fully managed services for edge-to-cloud & cloud-to-edge communication, and greater visibility on managing security and compliances.

 

Together we are better

 

SAS and Microsoft Azure together provide an ideal edge-to-cloud IoT real-time streaming analytics platform to harness the IoT data and perform analytics right at the edge or gateways or in the cloud. They provide a complete end-to-end scalable and robust platform to connect to the edge devices; prepare, cleanse, and govern the IoT data; develop and deploy the analytical models with on-demand computing to gain valuable insights and make intelligent decisions. They bring the enormous potential for businesses to monetize data as business assets and capitalize their centrally managed analytics running in the Microsoft Azure cloud.

 

Edge-to-Cloud IoT Real-time Streaming Analytics

 

Figure 1 demonstrates the edge-to-cloud IoT real-time streaming analytics pipeline powered by SAS and Microsoft Azure – from Azure Edge streaming data to SAS streaming analytics deployed in Azure. The pipeline demonstrates the three main building blocks and their responsibilities.

 

Pipeline.jpg

Figure 1: Edge-to-Cloud IoT real-time streaming analytics pipeline powered by SAS and Microsoft Azure

 

  1. Edge Analytics: Collect data from the various edge devices, run analytics at the edge, and connect to the cloud through a cloud gateway to transfer the streaming data
  2. Cloud Analytics: Ingestion of streaming data coming from the edge, perform real-time streaming analytics using streaming and at-rest data, and leverage cloud-native services
  3. Actions: Secure business applications to make the data-driven insights available to the consumers and perform the required operations

We will now discuss all these three main building blocks and the various components from SAS and Microsoft Azure in each of them.

 

Edge Analytics

 

Hundreds and thousands of sensors in edge devices are generating data/events at every single point in time. Edge Analytics is the ability to process the event as soon as it occurs and takes immediate action. Many edge devices such as wearable devices, smart vehicles, cameras, etc., are equipped with compute resources while other edge devices must send the data to the edge gateways they are connected with. Edge gateways can be considered as Hubs for all edge devices. They are responsible for managing communications and security on the edge. By communicating through an edge gateway, devices on the edge can reduce their security exposure. The edge gateway can also manage intermittent connectivity between edge and cloud resources. SAS Event Stream Processing (ESP) can be deployed both at the edge devices and the edge gateways to perform real-time processing. Azure provides a powerful IoT Edge platform to supports device connectivity using various gateway protocols.

 

Edge Analytics block in the high-level reference architecture of edge-to-cloud IoT real-time streaming analytics is illustrated in Figure 2.

 

SAS Event Stream Processing (ESP) at the Edge

SAS Event Stream Processing (ESP) performs real-time streaming analytics to uncover valuable insights at the edge and the cloud to make real-time, intelligent decisions. It is capable of high-volume processing of millions of events per second with low latency. SAS ESP is a powerful real-time streaming analytics solution with full integration with cloud and edge to process the high volume, velocity, and variety of streaming data and make powerful decisions in a matter of split seconds. It provides the ability to run analytical/ML models at the edge, therefore, reducing the bandwidth costs, preventing stream all the events to the cloud, and making faster decisions. The analytical/ML models are managed in the cloud and pushed down to the edge via Azure IoT Hub. SAS ESP Edge is deployed in the containers with all the required libraries, binary dependencies, plugins, connectors, and adapters to obtain events from various edge devices.

 

Azure IoT Edge

In simple words, Azure IoT Edge is a technology to build solutions to utilize the edge computing power of the IoT edge gateways to which the edge devices connect and stream data before it is sent to the cloud. It is designed for bi-directional communication with edge devices and the Azure IoT Hub in the cloud. It consists of IoT Edge Runtime which is installed on the edge gateways along with the Docker. It utilizes the docker to run the IoT Edge Modules which are containers running Azure Services and third-party services, and this is where SAS ESP Edge runs as well in a docker container. It ensures that the IoT Edge Modules are running, up-to-date, healthy and their communication with the cloud is fluid. IoT Edge Runtime connects with Azure IoT Hub for device management, auto-provisioning, auto-deployment, and communications operations. It is the connection point for IoT edge devices and the cloud.

 

HLArch7.jpg

Figure 2: High-level Reference Architecture of IoT real-time streaming analytics

 

Cloud Analytics

 

Cloud Analytics is where cloud-enabled IoT happens. Azure provides the platform to run SAS advanced analytics, process a high volume of events, store and data management, and perform monitoring and visualization. In Figure 2, cloud analytics block architecture includes:

 

  1. Azure IoT hub
  2. Streaming Ingestion
  3. Real-time Stream Processing with SAS Event Stream Processing (ESP)
  4. Storage, Visualization, and Monitoring

 

Azure IoT Hub

Azure IoT Hub is a fully managed scalable cloud service that provides reliable and secure bi-directional communication between the IoT edge devices, edge gateways, and the services/applications running in the cloud. It is the cloud gateway just the way we have an edge gateway on the edge side. IoT Hub is a broker for all the communication from the Edge to manage security and communication on the cloud side.

 

IoT Hub supports various messaging patterns to control the devices from the cloud, monitor the health of the devices. It supports connecting any device to the IoT Hub. Some of its features include:

 

  1. Scalability: IoT hub scales to support and handle IoT workload of millions of events per second
  2. High Availability: provides 99.9% Service Level Agreement (SLA) guarantees
  3. Secure Communication: Securely connect devices to the IoT Hub using per device token-based authentication or X.509 certificates
  4. Routing: Built-in, no-code rule-based message routing to multiple endpoints at zero additional cost
  5. Integration with other services: Smooth integration with Azure Services such as Event Hub, Machine Learning, Event Grid, etc.
  6. Device configuration and monitoring: Store and query the devices’ metadata and their state information. Configure devices and monitor their connectivity and messages routing
  7. Languages support: Includes libraries to support many languages and platforms
  8. Protocol support for connecting devices: HTTPS, AMQP, AMQP over WebSockets, MQTT, MQTT over WebSockets, and provide options for custom protocols using Azure IoT Edge and Azure IoT protocol gateway. It can also proxy other protocols via device streams

 

Streaming Ingestion

For Streaming ingestion, Azure IoT Hub is configured to transfer the multiple event streams either to:

 

  1. Azure Event Hub, a fully managed reliable, scalable high throughput and distributed real-time data ingestion service to build dynamic pipelines
  2. Apache Kafka, a fully managed or remote managed service
  3. Directly to the SAS ESP servers running in the Azure Kubernetes Services (AKS) cluster

 

In all the cases, SAS ESP ingests data via pub/sub connectors, i.e., connect to IoT Hub, Event Hub, or Kafka, to get the events to the SAS ESP server Kubernetes pods. ESP connectors allow native integration with the cloud resources. Azure IoT Hub, Azure Event Hub, and Kafka provide the capabilities to ingest, handle and distribute the high-volume of streaming events to the SAS ESP servers. They provide reliable delivery guarantees with no data loss, exactly-once processing, high availability with elastic clusters that scale up and down to serve terabytes of events per day. Furthermore, their key architecture components such as topics, partitions, and consumer groups further aid SAS ESP servers to scale automatically at runtime.

 

Real-time Stream Analytics with SAS Event Stream Processing (ESP)

We already know SAS Event Stream Processing (ESP) can be deployed both at the Edge and the cloud. It provides multiphase analytics with the portability of models across the edge and cloud with the full support of various AI/ML and streaming algorithms. It has a flexible, open modeling low code environment with a visual interface with many language support for development.

 

SAS ESP is integrated with Kubernetes in the cloud and leverages cloud-native services such as elasticity, flexibility, resiliency, high availability with failover, and other distributed services. SAS ESP with Kubernetes repository is readily available to use. In this reference architecture, SAS ESP and all the web clients are deployed in the fully managed Azure Kubernetes Services (AKS) cluster. Multi-tenancy is achieved using the Kubernetes namespaces and for multi-user accounts and accesses, CloudFoundry User Account and Authentication (UAA) or any other 3rd party tool can be configured. By default, the SAS ESP package includes UAA deployment.

 

kubernetesZoom1.jpg

 Figure 3: SAS ESP package components

 

SAS ESP package includes the components demonstrated in Figure 3 along with the others that are deployed in the AKS cluster:

 

  1. SAS ESP Operator is the orchestrator of the SAS ESP server pods. It is responsible for starting, stopping, updating, deleting the ESP server pods running in the Kubernetes cluster. It is built using the open-source Kubernetes Operator APIs
  2. Three graphical user interfaces -
    1. SAS Event Stream Processing Studio for designing, development, and testing the ESP projects
    2. SAS Event Stream Manager (ESM) for unified ESP project deployment and their management. SAS ESP Metering Server pod is created automatically that records all the events occurring on the ESP server pods in the AKS cluster. It is accessed from SAS ESM
    3. SAS Streamviewer for monitoring and visualizing the events streaming through the ESP projects via customizable dashboards

 

All the web-based clients are aware of the Kubernetes cluster and the ESP server pods running there. Deployment settings for the ESP server pods, such as CPU and memory requirements, and persistent volume for an ESP project are configurable from the SAS ESP Studio and SAS ESM. With SAS ESM, you can also define the auto-scaling parameters for each ESP project. There are provisions to modify these settings directly from the command-line as well. Each ESP server Kubernetes pod runs one and only ESP project.

 

Nginx Ingress Controller and Azure Load Balancer facilitate directing the incoming request traffic to the right application pod in the Kubernetes cluster.

 

SAS ESP smoothly interacts with SAS Analytics for IoT (AIoT) which is a scalable IoT solution with a full suite of AI/ML, advanced analytics, and business intelligence capabilities. It provides a flexible data model for sensor data; streamlined ETL tasks for faster time to value with business-focused data selection user interface;  streamlined model management and execution to register, modify, track, deploy, score, govern, monitor, and report the analytical models for both data at rest and streaming data; launchers for other SAS solutions, SAS Visual Analytics, SAS Visual Data Mining & Machine Learning, SAS Studio, and comma-delimited files; and public APIs to integrate with SAS or third party solutions. SAS AIoT also has container deployment support with full cloud integration.

 

Storage & Real-time Dashboarding for Visualization and Monitoring

SAS ESP uses various storages from fully managed persistent volumes of Azure to 3rd party databases:

 

  1. SAS ESP server pods use shared Azure File System to read/write input/output files, ASTORE models, etc., required by the ESP projects
  2. Azure Disks that are used by PostgreSQL DB for ESP projects metadata management
  3. SAS ESP can also connect with databases, such as Aerospike, Teradata, DB2, ODBC, Oracle, etc. via connectors, adapters, and plugins to serve different requirements. For example, NoSQL Aerospike can be used for storing lookup data, computing aggregation over a large volume of data with high retention, and temporarily persisting the state of ESP server pods

 

Microsoft Azure provides a platform for many real-time dashboarding tools for advanced reporting, visualization, tracking, and monitoring of resources. Power BI, SAS Streamviewer, Grafana, and Prometheus are some examples. Power BI is a suite of business analytics tools for analyzing data and sharing insights. SAS ESP can be configured to exposes real-time metrics to Prometheus for monitoring the resources in the AKS cluster/(s). Metrics can be collected and stored in a time-series database for future use. We use the Prometheus Operator which has inbuilt data source plugins that allow Grafana to ingest data directly from the Prometheus. With Grafana you can create sharable customized dashboards.

 

Actions

 

Actions make the data-driven valuable insights securely available at their fingertips of the business users via mobile or web applications. All the SAS solutions include public REST APIs to allow seamless integration with other applications.  Business users can derive better and justifiable business outcomes by continuously monitoring the performance and business impact of the deployed models.

 

Capabilities

 

Cloud-enabled elasticity and scalability

SAS ESP is built to scale using the available resources for serving the incoming volume and speed of the incoming streaming data. SAS ESP leverages the horizontal and vertical runtime elasticity, i.e., on the fly autoscaling ability of Azure. Geo-distributed data centers of Azure add the benefit of deploying the analytics closer to the customers, therefore achieving reduced latency, improved quality of service, and guaranteed high performance. The scalable SAS models bring scaled analytics.

 

Resiliency with guaranteed failover

SAS ESP architecture is designed to provide high availability and reliability. The failover and recovery systems are quick to set and easy to manage.

 

 capabilitites.png

 

Full Container Support

SAS analytics solutions are fully containerized with cloud services integration to bring speed, agility, and support to run powerful analytics in the cloud infrastructure. They are fast and easy to deploy from any platform that supports the use of Docker. Build once and deploy many times. SAS provides support for custom configurations on top of the base image of the specific SAS products. 

 

Governance and Operations

SAS provides all the necessary edge-to-cloud and cloud-to-edge powerful real-time streaming analytics solutions while Azure provides the right infrastructure, services, and applications the connectivity, interoperability, and maintainability. Together we provide a cost-efficient analytics platform, and; give business users direct access to the combined streaming data with contextual data and perform the full analytical lifecycle. Make analytics-driven automated decisions by embedding analytical models with business rules for decision support.

 

Additional Resources

 

  1. SAS Event Stream Processing
  2. SAS Event Stream Processing Trial on Microsoft Azure Marketplace 
  3. SAS Analytics for IoT
  4. SAS & Microsoft Partnership
  5. SAS and Microsoft partner to further shape the future of analytics and AI
  6. SAS Event Stream Processing Documentation
  7. SAS Event Stream Processing Kubernetes Repository
  8. SAS Event Stream Processing with Kubernetes Video
  9. SAS Event Stream Processing Kubernetes Operator Framework Video
  10. SASSoftware YouTube Channel
  11. SAS Developers Community
Comments

Very useful content, Divya.  Well done!

Love it!

Version history
Last update:
‎03-03-2021 02:53 AM
Updated by:
Contributors

SAS Innovate 2025: Register Now

Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!

Free course: Data Literacy Essentials

Data Literacy is for all, even absolute beginners. Jump on board with this free e-learning  and boost your career prospects.

Get Started

Article Tags