Introducing Microsoft R Server 9.0

This post is authored by Nagesh Pabbisetty, Partner Director of Program Management at Microsoft.

To thrive in today’s data-driven world, businesses increasingly need more powerful analytics solutions to predict customer behavior and discover new opportunities. However, existing solutions often fail to deliver enough insights, fast enough. At Microsoft, we continue to invest deeply in advanced analytics solutions that can address these challenges, and we have some important updates to announce.

Today, we are making Microsoft R Server 9.0 immediately available for download from MSDN and Visual Studio Dev Essentials. Packed with tons of value, and built on top of the latest open source R engine, Microsoft R Server (MRS) version 9.0 includes several exciting new capabilities:

State-of-the-Art Machine Learning Algorithms

MRS 9.0 takes best-of-breed ML algorithms that have been battle-tested by Microsoft on a variety of our products, and now makes them available for your use in the new MicrosoftML package. You can combine the algorithms delivered in this package with pre-existing parallel external memory algorithms such as the RevoScaleR package as well as open source innovations such as CRAN R packages to deliver the best predictive analytics. MicrosoftML includes these algorithms:

Fast linear learner, with support for L1 and L2 regularization.

Fast boosted decision tree.

Fast random forest.

Logistic regression, with support for L1 and L2 regularization.

GPU-accelerated Deep Neural Networks (DNNs) with convolutions.

Binary classification using a One-Class Support Vector Machine.

We are releasing MicrosoftML on Windows and SQL Server today, with support for Linux and Hadoop to follow in the new year.

Simplified Operationalization of R Models

MRS 9.0 further improves on operationalization capabilities, allowing you to get your R models deployed ever more efficiently, regardless of whether your data resides on premises or in the cloud:

Expose R models as web services: Convert R models and scripts into web services with just a single line of code, using the MRSDeploy package. You can do so directly from your favorite IDE such as R Tools for Visual Studio (RTVS), RStudio, or Jupyter Notebooks. R models do not have to be translated from R to the language of the Line of Business (LoB) application.

Integrate more easily: With the simplified application integration experience offered by Swagger, R models can be consumed by any application written in any programming language. Bring intelligence into your applications by easily embedding powerful predictive models in them.

Write once and deploy in multiple platforms: Models can be trained in one environment and deployed to a different environment, on premises or in the cloud, resulting in big savings of time and money.

Ensure high availability: Use the active-active high availability and grid computing capabilities of MRS to scale predictive applications with your business needs.

Embracing Spark

MRS 9.0 now supports Spark 2.0, in addition to Spark 1.6, and also adds support for Ubuntu, complementing our support for SUSE and RedHat Linux. With these additions, we now support three distributions of Hadoop (Cloudera, Hortonworks and MapR) on three different flavors of Linux.

This release also includes new R Server data sources for Apache Hive and Parquet that load the data into Spark DataFrames for direct analysis by ScaleR functions. This enables combining the best of Spark with the scale, speed and deployment flexibility of MRS.

This version is also available on HDInsight, as part of Azure cloud services.

Additional Updates

SQL Server vNext CTP1

As part of SQL Server vNext CTP1, we have updated SQL Server R Services to support the state-of-the-art ML algorithms referenced above. We made it easier, using just one single line of code, to generate T-SQL stored procedures to deploy R scripts in SQL Server, using a new SQLrutils package. We made it easier for data scientists to install and uninstall packages in SQL Server. We now also offer the OlapR package to support OLAP cubes as a data source.

Microsoft R Open

We are also offering an updated package of Microsoft R Open (MRO), version 3.3.2, which is built on CRAN-R 3.3.2.

R Client 3.3.2

New MRS packages, including MicrosoftML, OlapR, MRSDeploy and SQLrutils.

Stay-current: We automatically check for updates and inform the user if a new release is available.

Support for offline installation.

New Solution Template for Campaign Optimization

We are offering our first in a new breed of adoption accelerators, namely the Campaign Optimization solution, with support for easy deployment to Azure VMs. Campaign optimization uses ML to increase conversion rates, helping marketers select the optimal time of day, day of the week, and channel (e.g. SMS, email or cold call), for a given marketing campaign and target segment. This solution focuses on two personas, Marketing Analysts and Data Scientists:

For Marketing Analysts who need to find the optimal channels for reaching out to their target customers, the solution includes a dashboard they can use to arrive at a decision.

For Data Scientists, we include the ability to deploy this solution into their Azure subscription, where they can then dive into the modelling behind the scenes and customize it for their purposes.

In Summary

I am proud of the many MRS enhancements that our team has delivered during this calendar year, including support for Hadoop, Spark, Linux, Teradata and HDInsight, and the addition of R analytics to SQL Server 2016, to name a few.

MRS 9.0 is a culmination of all our hard work this year. With this latest release, you have access to a powerful tool, one that supports popular operating systems and a variety of data sources, helps you create sophisticated analytics models and deploy them in the real world, efficiently and at scale. We invite you to get started with Microsoft R Server 9.0.

Web Service integration has typically been a bit slow, with response times in the (approx.) 1 second range. Can this product maintain an open session, allowing the calling application to repeatedly run predictions within minimal turnaround time?

This type of application might been seen in high traffic websites.

2 years ago

Carl Nan

Hi Ron,

Thanks for your comments. Microsoft R Team has conducted some performance testing on the service request-response time. With the typical configuration (4 cores) in 1 single node, 20 concurrent requests, the request-response time is around 100~200ms. We keep investigating in this area to make it more “real time”.

For high traffic usage, we support for scaling up from 1 node to multiple nodes, forming a grid.

Will I be able to use 9.0.1 with SQL Server 2016 SP1 (or another SQL 2016 version) R Server in-database? I’m excited to try out this new release of MRS and I’m hoping I’ll be able to use it in combination with in-database support.

I have installed Sql Server2016 Developer version. How can I install these new updates (MicrosoftML package)? Do I need install SQL Server vNext?

2 years ago

Adithya Kumaranchath

Hi all.. I am running with multiple research tasks on hand. 1. File format conversion using MRS, VM size: Edge node: D4_v2:8 cores Worker: D4_v2:32 cores ​​​-> Convert 1 HDF5 file to Parquet file format, current execution time is ~19 minutes for a file. I want this to be less in a few seconds, as there are 58000 files. I am running this under Spark context. I am looking at intense parallelization, which can be achieved by tweaking RxSpark parameters.
The challenge appears to be a combination of:
Using rxExec to initiate multiple instances in parallel across the worker nodes and using a spark session within the function call to write the parquet file
We’re up against a deadline on Monday next week, so any help would be gratefully received.​​​