Integrate Analytics into Enterprise Applications Dr. Roland Michaely 2015 The MathWorks, Inc. 1
Data Analytics Workflow Access and Explore Data Preprocess Data Develop Predictive Models Integrate Analytics with Systems Business Data Data Reduction/ Transformation Model Creation Enterprise Systems Sensor Data Feature Extraction Model Validation Embedded Devices : Single Platform 2
Challenges Bridging the gap between multiple disciplines Integrate solutions to enterprise scale frameworks Deliver fast results with large volumes of data 3
Bridging the Gap between C/C++ shared library Java.NET Python Application Manual translation Enterprise solution with automated deployment Domain Expert Solution Architect 4
Sharing and Deploying Applications Write Your Programs Once, Then Share to Different Targets Compilers Coders Runtime With Users With People Who Do Not Have 5
Share with People Who Do Not Have Compiler Compiler SDK Standalone Application Excel Add-in Hadoop Spark C/C++ shared library Java.NET Python Production Server Share Applications with No Additional Programming Integrate -based Components With Your Own Software Runtime Royalty-free Sharing IP Protection via Encryption 6
Integrate -based Components With Your Own Software Application Author Toolboxes 1 Software Developer Compiler SDK 2 C/C ++.NET Production Server 3 4 Runtime Python Java 7
Using Compiler SDK to create Java Classes 8
Using Compiler SDK to create Java Classes 9
and Production Server is the easiest and most productive environment to take your enterprise analytics or IoT solution from idea to production Idea Production 10
Energy Load Forecast 11
Energy Load Forecast Desktop Train in Runtime Web Application Server Apache Tomcat Web Server/ Webservice Predictive Models LIBRARY Energy Data Weather Data 12
Energy Load Forecast Desktop Train in Runtime Web Application Server Apache Tomcat Multiple users Web Server/ Webservice Predictive Models LIBRARY Energy Data Weather Data 13
Request Broker Energy Load Forecast Desktop Train in Production Server Production Server Web Application Server Apache Tomcat Multiple users Web Server/ Webservice Predictive Models LIBRARY Energy Data Weather Data 14
Production Server Enterprise Class Framework For Running Packaged Programs Server software Manages packaged programs and worker pool Runtime libraries Single server can use runtimes from different releases RESTful JSON interface and lightweight client library (C/C++,.NET, Python, and Java) Enterprise Application MPS Client Library Enterprise Application RESTful JSON Production Server Request Broker & Program Manager Runtime 15
Manage Your Server Instances Using a Dashboard Interface 16
Building Automation IoT Analytics on Azure Global heavy duty electrical equipment manufacturer Building/HVAC automation control system Variety of sensors and controls Networked communication Data reduction Azure EventHub Azure Blob Production Server Request Broker Azure SQL Compiler SDK Business Systems Users Algorithm Developers 17
Technology Stack Data Analytics Business System Databases Distributed Computing Server Visualization Cloud Storage Azure Blob Production Server Web Request Broker IoT Custom App Public Cloud Platform Private Cloud 18
and Distributed Computing Server allow you to speedup your computations on multiple CPUs and GPUs overcome memory limitations and offload computations to clusters and clouds. Desktop Clusters and Clouds 19
Front-end Scalability Back-end Scalability Production Server Application server for Manage large numbers of requests to run deployed programs Distributed Computing Server Cluster framework for /Simulink Speed up computationally intensive programs on computer clusters, clouds, and grids.net Deployed Application Deployed Application Deployed Application Deployed Application 20
Parallel Computing Paradigm Clusters Cluster Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker Worker 21
Speed-up using Multiple Cores on the Cloud High Resolution Image Processing 22
Big Data Workflow Local disk, Shared folders, Databases Run on Compute Clusters or Spark + Hadoop (HDFS), for large scale analysis Process out-of-memory data on your Desktop to explore, analyze, gain insights and to develop analytics Use Parallel Computing Toolbox for increased performance Distributed Computing Server, Spark+Hadoop 23
Scale your Applications Beyond the Desktop Option Parallel Computing Toolbox Parallel Cloud Distributed Computing Server for Amazon EC2 Distributed Computing Server for Custom Cloud Distributed Computing Server Description Explicit desktop scaling Single-user, basic scaling to cloud Scale to EC2 with some customization Scale to custom cloud Scale to clusters Maximum workers No limit 16 256 No limit No limit Hardware Desktop MathWorks Compute Cloud Amazon EC2 Amazon EC2, Microsoft Azure, Others Any Availability Worldwide United States and Canada United States, Canada and other select countries in Europe Worldwide Worldwide Learn More: Parallel Computing on the Cloud 24
Customer Example: Financial Customer Advisory Service Production Server Global financial institution with European HQ Request Broker o Saved 2 million annually for an external system Algorithm Developers Compiler SDK Request Broker o Quicker implementation of adjustments in source code by the quantitative analysts Request Broker o Knowledge + = Build your own systems 25
Online Resources Documentation Create and Share Toolboxes Website Desktop and Web Deployment Free White Paper Building a Website with Analytics Website Using With Other Programming Languages 26
2017 The MathWorks, Inc. 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. 2017 The MathWorks, Inc. 27