integrate matlab analytics into enterprise applications€¦ · building automation iot analytics...

27
1 © 2015 The MathWorks, Inc. Integrate MATLAB Analytics into Enterprise Applications Dr. Roland Michaely

Upload: others

Post on 07-Aug-2020

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

1© 2015 The MathWorks, Inc.

Integrate MATLAB Analytics into

Enterprise Applications

Dr. Roland Michaely

Page 2: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

2

Data Analytics Workflow

Business Data

Sensor Data

Access and Explore

DataPreprocess Data

Data Reduction/

Transformation

Feature Extraction

Develop Predictive

Models

Model Creation

Model Validation

Integrate Analytics

with Systems

Enterprise Systems

Embedded Devices

MATLAB: Single Platform

Page 3: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

3

Challenges

▪ Bridging the gap between multiple disciplines

▪ Integrate solutions to enterprise scale frameworks

▪ Deliver fast results with large volumes of data

Page 4: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

4

Enterprise solution

Bridging the Gap between…

Domain

Expert

Solution

Architect

Application Manual translation

C/Cshared library

++

Java .NET Python

with automated deployment

Page 5: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

5

Sharing and Deploying MATLAB ApplicationsWrite Your Programs Once, Then Share to Different Targets

MATLAB

Compilers

With

MATLAB

Users

With People Who

Do Not Have

MATLAB

Coders

MATLAB

Runtime

Page 6: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

6

Share with People Who Do Not Have MATLAB

C/Cshared library

++ExcelAdd-in Java

Hadoop

Spark.NET

MATLAB

Compiler

MATLABProduction

Server

StandaloneApplication

MATLAB

Compiler SDK

Python

Share Applications with No

Additional Programming

Integrate MATLAB-based Components

With Your Own Software

• Royalty-free Sharing

• IP Protection via Encryption

MATLAB

Runtime

Page 7: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

7

1

2

MATLAB

Toolboxes

MATLAB

Runtime

Application Author

Software Developer

43C/C++

Java

.NETMATLAB

ProductionServer

Python

MATLAB Compiler SDK

Integrate MATLAB-based Components With Your Own Software

Page 8: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

8

Using MATLAB Compiler SDK to create Java Classes

Page 9: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

9

Using MATLAB Compiler SDK to create Java Classes

Page 10: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

10

MATLAB and MATLAB Production Serveris the easiest and most productive environment to take your enterprise

analytics or IoT solution from idea to production

Idea Production

Page 11: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

11

Energy Load Forecast

Page 12: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

12

Energy Load Forecast

MATLAB

Desktop

Predictive

Models

Train in

MATLAB

MATLAB

Runtime

LIBRARY

Weather

Data

Energy

Data

Web

Application

Server

Apache Tomcat

Web Server/

Webservice

Page 13: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

13

Energy Load Forecast

MATLAB

Desktop

Predictive

Models

Train in

MATLAB

MATLAB

Runtime

LIBRARY

Weather

Data

Energy

Data

Web

Application

Server

Apache Tomcat

Web Server/

Webservice

Multiple users

Page 14: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

14

Energy Load Forecast

MATLAB

Desktop

Predictive

Models

Train in

MATLAB

MATLAB

Production

Server

MATLAB

Production Server

Requ

est B

roke

r

LIBRARY

Weather

Data

Energy

Data

Web

Application

Server

Apache Tomcat

Web Server/

Webservice

Multiple users

Page 15: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

15

MATLAB Production ServerEnterprise Class Framework For Running Packaged MATLAB Programs

▪ Server software

– Manages packaged MATLAB

programs and worker pool

▪ MATLAB Runtime libraries

– Single server can use runtimes

from different releases

▪ RESTful JSON interface and

lightweight client library (C/C++, .NET,

Python, and Java)

MATLAB Production Server

MATLAB

Runtime

Request Broker

&

Program

ManagerEnterprise

ApplicationRESTful

JSON

Enterprise

Application

MPS Client

Library

Page 16: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

16

Manage Your Server Instances Using a Dashboard Interface

Page 17: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

17

MATLAB Production Server

Request

Broker

Building/HVAC

automation

control system

• Variety of

sensors and

controls

• Networked

communication

• Data reduction

Azure

EventHub

Azure

BlobAzure

SQL

MATLAB

MATLAB

Compiler SDK

Algorithm

Developers

Business

Systems

Users

Global heavy duty

electrical equipment

manufacturer

Building Automation IoT Analytics on Azure

Page 18: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

18

Databases

Cloud

Storage

IoT

Visualization

Web

Custom App

Public Cloud Private Cloud

Technology Stack

Platform

Data Business System

MATLAB

Production Server

Analytics

Request

Broker

Azure

Blob

MATLAB

Distributed

Computing

Server

Page 19: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

19

MATLAB and MATLAB Distributed Computing Server

allow you tospeedup your computations on multiple CPUs and GPUs

overcome memory limitations and

offload computations to clusters and clouds.

Desktop Clusters and Clouds

Page 20: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

20

Back-end Scalability

MATLAB Production Server

– Application server for MATLAB

▪ Manage large numbers of

requests to run deployed

MATLAB programs

MATLAB Distributed Computing Server

– Cluster framework for MATLAB/Simulink

▪ Speed up computationally intensive

programs on computer clusters, clouds,

and grids

.NET

Deployed

ApplicationDeployed

ApplicationDeployed

ApplicationDeployed

Application

Front-end Scalability

Page 21: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

21

Cluster

Parallel Computing ParadigmClusters

Worker Worker Worker Worker Worker Worker

Worker Worker Worker Worker Worker Worker

WorkerWorkerWorkerWorkerWorkerWorker

Worker Worker Worker Worker Worker Worker

Page 22: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

22

Speed-up using Multiple Cores on the CloudHigh Resolution Image Processing

Page 23: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

23

Big Data Workflow

Process out-of-memory data on your Desktop to explore,

analyze, gain insights and to

develop analytics

MATLAB Distributed Computing Server,

Spark+Hadoop

Local disk,

Shared folders,

Databasesor Spark + Hadoop (HDFS),

for large scale analysis

Use Parallel Computing

Toolbox for increased

performance

Run on Compute Clusters

Page 24: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

24

Scale your Applications Beyond the Desktop

Learn More: Parallel Computing on the Cloud

Option Parallel Computing Toolbox

Description Explicit desktop scaling

Maximum

workersNo limit

Hardware Desktop

Availability Worldwide

MATLAB Parallel Cloud

Single-user, basic scaling

to cloud

16

MathWorks Compute

Cloud

United States and Canada

MATLAB Distributed

Computing Server

for Amazon EC2

Scale to EC2 with some

customization

256

Amazon EC2

United States, Canada and other

select countries in Europe

MATLAB Distributed

Computing Server

for Custom Cloud

Scale to custom cloud

No limit

Amazon EC2, Microsoft

Azure, Others

Worldwide

MATLAB Distributed

Computing Server

Scale to clusters

No limit

Any

Worldwide

Page 25: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

25

MATLAB

MATLAB

Compiler SDK

MATLAB Production Server

Request

BrokerAlgorithm

Developers

Request

Broker

Request

Broker

o Saved € 2 million

annually for an

external system

o Quicker

implementation of

adjustments in source

code by the

quantitative analysts

o Knowledge + MATLAB

= Build your own

systems

Global

financial

institution with

European HQ

Customer Example: Financial Customer Advisory Service

Page 26: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

26

Online Resources

• Documentation – Create and

Share Toolboxes

• Website – Desktop and Web

Deployment

• Free White Paper – Building a

Website with MATLAB Analytics

• Website – Using MATLAB With

Other Programming Languages

Page 27: Integrate MATLAB Analytics into Enterprise Applications€¦ · Building Automation IoT Analytics on Azure. 18 Databases Cloud Storage IoT Visualization Web Custom App Public Cloud

27© 2017 The MathWorks, Inc.

© 2017 The MathWorks, Inc. MATLAB and Simulink are registered trademarks of The MathWorks, Inc. See www.mathworks.com/trademarks

for a list of additional trademarks. Other product or brand names may be trademarks or registered trademarks of their respective holders.