Sharing and Deploying MATLAB Programs

Size: px
Start display at page:

Download "Sharing and Deploying MATLAB Programs"

Transcription

1 Sharing and Deploying Programs Dr. Harald Brunnhofer 2015 The MathWorks, Inc. 1

2 Data Analytics Workflow Business Systems Smart Connected Systems Data Acquisition Data Analytics Analytics Integration : Single Platform 2

3 Challenges How to share algorithms with multiple internal and external consumers Both users and non- users Challenging and time consuming to re-code algorithms for integration into IT frameworks Development resources are scarce and time-to-market is short Difficult to migrate solutions to enterprise scale web or cloud frameworks Scale application to serve large numbers of simultaneous requests 3

4 Programs Can be Shared With Anyone Share With Other Users Share With People Who do Not Have 4

5 Share with Users Files Custom Toolbox Apps Directly share files Package Entire Toolboxes Package an App.mltbx 5

6 Programs Can be Shared With Anyone Share With Other Users Share With People Who do Not Have 6

7 Share with People Who Do Not Have Compiler Compiler SDK Standalone Application Excel Add-in Hadoop C/C ++ Java.NET Python Production Server Share Applications with No Additional Programming Integrate -based Components With Your Own Software Royalty-free Sharing IP Protection via Encryption 7

8 Share Applications Built Completely in Application Author Toolboxes 1 2 Compiler End User Standalone Application Excel Add-in Hadoop 3 Runtime 8

9 Integrate -based Components With Your Own Software Application Author Toolboxes 1 Software Developer Compiler SDK 2 C/C ++ Python.NET Java Production Server 3 4 Runtime 9

10 10

11 and Production Server is the easiest and most productive environment to take your enterprise analytics or IoT solution from idea to production Idea Production 11

12 Why Production Server Matters to You Domain Expert Solution Architect ü Production Server allow you to continue to work in the environment that you love ü No need to learn another programming language ü Production Server integrates with enterprise IT infrastructure ü Production Server integrates code into the enterprise IT fabric that you are comfortable with ü No need to re-code into another programming language ü Web and cloud friendly architecture 12

13 Scale Up with Production Server Directly deploy programs into production Centrally manage multiple programs and runtime versions Automatically deploy updates without server restarts Most efficient path for creating enterprise applications Production Server(s) Scalable and reliable Service large numbers of concurrent requests Add capacity or redundancy with additional servers Web Server(s) HTML XML Java Script Use with web, database and application servers Lightweight client library isolates processing Access programs using native data types 13

14 Example - Integrating with IT systems Compiler SDK Web Applications Web Server Production Server Portfolio Optimization Excel Add-in Desktop Applications Application Server Pricing Risk Analytics Database Server 14

15 Customer examples: 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 15

16 Industrial IoT Analytics on AWS Global industrial equipment manufacturer Industrial Equipment Networked communication Embedded sensors Data reduction Production Server Request Broker Business Systems Users Compiler SDK Algorithm Developers 16

17 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

18 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

19 Production Deployment Workflow Development Developer Initial Test Application Verify data handling and initial behavior Debug Algorithm Algorithm Compiler SDK Enterprise Application Developer Web Application Function Call Deployable Archive Production Server Production Production Server. Web Application Function Calls Deployable Archives 19

20 Develop and Test with Compiler SDK Application HTTP Test environment for Production Server Test and debug in desktop Details on request transactions debug and profiling with end to end testing 20

21 Key Takeaways 1. Distribute applications to non- users royalty-free. 2. Integrate functions into existing workflows and development platforms. 3. Deploy applications to service simultaneous user requests enterprise-wide via web or cloud frameworks. 21

22 Online Resources Documentation Create and Share Toolboxes and Package Apps Website Desktop and Web Deployment Free White Paper Building a Website with Analytics Website Using With Other Programming Languages Website Training Options for Experience hands-on training on latest product capabilities. 22