Is that possible to run MatLab runtime on Azure Function?

16 次查看(过去 30 天)
Since I want to build IoT with Azure, and I need to Matlab to compute and analyse data from IoT, I want the computation on Azure, and output to Cosmos DB. What is best way to implement it? Any ideas guys?
  3 个评论
Yinhe Zhu
Yinhe Zhu 2019-5-24
Yes, you're right about running matlab on the same the operating system in cloud and at local. I have successfully deployed MatLab and Matlab RunTime on Azure VM in windows 10.
My real concern is that since my aplication needs to talk to IoT, I have many sensors collecting data from IoT and send to Blob consistently. Once the data is in Blob, I need to trigger matlab runtime or matlab to process the data. I'm not sure which one is suitable for this taks, matlab, matlab parallel or matlab production server?
Walter Roberson
Walter Roberson 2019-5-24
If you are starting one process and it is continually running and processing one stream at a time, then you amoratize startup costs, and any of those would be fine.
However, if you are starting up a number of different processes, perhaps one per stream, then startup time can start to become important, and in that case MATLAB Production Server would tend to become what you would want.
If the data is being sent via UDP, then even though in theory you could have one server for all clients (provided you could process the data quickly enough), in practice MATLAB udp() does the equivalent of a bind() operation: you cannot easily listen for all UDP packets addressed to the socket, you need to create a connection that listens to a particular endpoint. That makes MATLAB less than ideal for high-volume low-dwell updates.

请先登录,再进行评论。

采纳的回答

Saumya Goel
Saumya Goel 2019-5-24
Please have a look at these GitHub links:
  1. MATLAB Azure Cosmos DB - https://github.com/mathworks-ref-arch/matlab-azure-cosmos-db
  2. MATLAB Reference Architectures for Cloud - https://github.com/mathworks-ref-arch
  2 个评论
Yinhe Zhu
Yinhe Zhu 2019-5-24
Hey Saumya,
I have checked the repository you suggested. I read and tested the communiocation between matlab and Azure Blob/Cosmos DB. And I also depolyed Matlab on Azure VM in windows operating system since my local environment is windows 10.
My concern is what is the best way communicate with IoT. Since sensor's data comes to Blob consistently, and there will be more than one data that Matlab need to process concurrerntly. So I'm confused about what is the suitable solution for this case?
Pallavi Kar
Pallavi Kar 2019-5-31
编辑:Pallavi Kar 2019-5-31
You can use the MATLAB Production Server reference architecture to deploy MATLAB Production Server on Azure. This tool allows you to process web requests in Parallel. Link: https://github.com/mathworks-ref-arch/matlab-production-server-on-azure
For info on MATLAB Production Server: Watch this video
You can also use Azure IoT Hub to connect your devices to it. Azure IoT hub can receive event triggers and pass data through routes and endpoints. One of this endpoint needs to be MATLAB Production Server.
2 kinds of example routes:
  • Route data as it comes to MATLAB Production Server(endpoint), which can run a compiled MATLAB Analytics in parallel. Learn an example of how to take MATLAB Analytics to MATLAB Production Server.
  • Alternately, if a certain kind of analytics needs to run over a longer period of time, IoT hub can pass/route the data to blobs(endpoint) instead and invoke a scheduled MATLAB Production Server hosted analytics.

请先登录,再进行评论。

更多回答(1 个)

Tim Choo
Tim Choo 2020-5-1
In addition to the cloud reference architecture, MATLAB Production Server is also available from the Microsoft Azure Marketplace: https://azuremarketplace.microsoft.com/en-us/marketplace/apps/mathworks-inc.matlabprodserver-byol?tab=Overview

类别

Help CenterFile Exchange 中查找有关 Licensing on Cloud Platforms 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by