Microsoft tunes R Server 9.0 for machine learning

Microsoft is tooling R Server to be a resource for working with data where it already lives

Microsoft tunes R Server 9.0 for machine learning
Xil (CC BY-SA 3.0)

Ever since Microsoft announced it was acquiring Revolution Analytics, which created the flagship distribution of the R language for math and statistical analysis, speculation circulated as to what Microsoft might do with such a prize. Maybe it would rewrite R from the ground up or shut off R behind closed-source doors. Instead, Microsoft elected to keep the core R product free and open and has built Microsoft R Server atop that foundation.

Today, Microsoft rolled out R Server 9.0, outfitted with features that reflect R's usefulness in machine learning and as a server. Even more important, it also hints at how Microsoft wants to make R into a resource that can work with data where it lives.

Smarter than your average bear

Machine learning has long been one of R's staple applications, so it comes as little surprise that it's the focus of the two biggest new features.

First is the new MicrosoftML package of Microsoft-authored machine learning algorithms that can be used alongside the conventional open source CRAN R packages. Some are exotic, high-end projects, such as GPU-accelerated deep neural networks. Others are more conventional, like a fast random forest.

Algorithms aren't much good without a data source, so R Server adds support for Spark 2.0, the long-awaited upgrade to the in-memory data framework. R Server already supported Spark 1.6, but 2.0 added new methodologies for handling streaming data and a revamped memory management subsystem for better performance.

New R Server data sources also come with this upgrade: Apache Hive for real-time queries, and Apache Parquet for high-speed data serialization, both of which can be used by Microsoft's proprietary ScaleR functions that can run in parallel. Tapping into Spark is important, but Microsoft's real intention is to make R's connectivity as broad and, thus, as future-proof as possible.

Serve the data where it lives

R Server 9.0 is also future-proofed thanks to improvements to the "server" part of its name. The new version provides data-oriented services from R Server to applications or endpoints -- and in Microsoft's parlance, to provides the analytics and the connectivity where the data lives.

For starters, R Server 9.0 allows R models to be converted to web services without being translated to the language of the application deployed. This can be done by using the Swagger standard to generate APIs for the R service. Then, the target app simply needs to talk to R Server through the API.

In the bigger picture, R Server is only one piece Microsoft's long-term plan for R. As a component, it can be added anywhere data services already exist, and R programmers can plug directly into it. Microsofthas detailed such plans for SQL Server 2016; the most recent Community Technology Preview of that app allows T-SQL stored procedures to have R code stored inline and executed against SQL Server R Services.

For one possible analogy for Microsoft's R plans, look to Linux. The Linux kernel remains a collaborative open source project, but multiple commercial outfits place it at the center of professional-level products for which they sell support. Likewise, the core open source R project is available on its own, with R Server as a professional-grade distribution bearing Microsoft's proprietary add-ons. The point isn't to get the average R developer to switch, but to awaken enterprise interest for R and give reasons to delve in.

Copyright © 2016 IDG Communications, Inc.