'R' is for Revolution Analytics
Blog Recently I met the analytics firebrands Revolution Analytics at their Bay Area offices.
Outwardly, the facilities were conventional, and no one called me ‘comrade’. But what they showed me over the next couple of hours sparked my imagination and even a bit of revolutionary fervor.
I’m convinced that predictive analytics is the next ‘Big Thing’ in commercial computing. The trend is a response to fundamental changes in the global economic infrastructure. Briefly, globalization – coupled with advances in manufacturing and distribution – has put almost all of the power into the hands of buyers, not suppliers. ( I’ve written about this in The Reg and other places; here’s a taste. )
The guys at upstart Revolution Analytics could be key players in this trend. They’ve taken the open source "R" statistical programming language, enhanced it, and packaged it in a user-friendly wrapper. The enhancements are significant. The Revolution Analytics distribution of R scales across multiple cores and processors, while the open source version doesn’t. Standard open source R also has built-in limitations on data size (limited to the size of RAM on the system). Revolution Analytics has fixed this problem with its version, Revolution R.
The demonstration of the speed and power of Revolution R was impressive. To me, as a layman, the easiest way to understand the difference between R (and Revolution R) and industry stalwarts such as SAS or SPSS is to realize that R is a statistical language, while the others are applications. This difference has a profound effect on what can be done and how quickly and easily it can be accomplished. SAS and SPSS are big and powerful, but as applications, they are black boxes.
You set up what you want to do, run it, and get the output when it’s done. If you want to make changes or try additional routines, you must either use their built-in routines or write your own scripts. With R, you simply specify what you want to do and do it. R commands are entered in a style that is geared toward statisticians, not computer programmers. Since it’s a language, not a program, researchers can use many statistical techniques on their data in whatever combinations they want.
The choices are much more constrained with applications like SAS or SPSS. Of course, there are downsides to this approach. The incumbents would say that R isn’t user-friendly, and that its very flexibility makes it more difficult to use.
For researchers and statisticians, this argument doesn’t wash – they know their way around stat routines and can hold their own with R. With somewhere around two million R users in academia and industry, and almost 3,000 task- or industry-specific plug-ins, it’s safe to say that users are seeing solid benefits from R. There are two arguments that the SASes of the world won’t use against Revolution R: price and performance. The cost of Revolution R is half or less than that of SAS, and performance improvements range from twice as fast to “much, much faster” – depending on what you’re doing.
We’re not just talking about execution speed here; we’re also talking about analyst productivity. With R, it’s quicker to set up analytical routines and much quicker to run multiple routines, or shift to different analytical techniques on the fly. The value of this is hard to quantify, of course, but it is significant. In the right circumstances, it could be profound.
But for analysts on the business side of the house who are more accustomed to using packaged apps for analysis, R might be a bit intimidating. Revolution R is working to remedy this with a browser-based GUI that will make the program much more intuitive and less scary for us business types. To me, the GUI might be the piece that moves Revolution R into the big time.
Of course, it could be argued that they’ve already edged into the big time with their recently inked agreement with IBM’s Netezza unit, which will integrate the Revolution R Enterprise product into Netezza’s TwinFin Data Warehouse appliance.
This gets Revolution R into a major vendor’s catalog and opens them up to a much larger and more diverse customer set. More importantly, this is a significant sign of credibility and stability that will serve to convince other customers to give it a shot. ®
R is great
It's like MatLab but for statisticians. SPSS, Systat (I am that old) and SAS are a straitjacket compared to the freedom of R. I used to do statistics in C (just wrote my own code for any methods needed), since R is around, I do not do this anymore.
Where do you get your information from? R can take advantage of multicore and grid environments through a wide range of options. The multicore SMP package is one example, Rmpi and snow another, while gputools makes use of Nvidia cuda processing.
The data limitations is architecture specific (32 bit), and R x64 has no such limitations. In fact, packages exist in the R community to efficiently and quickly handle large datasets (see for instance ff and bigmemory).
The HighPerformanceComputing task view lists the many packages available to parallel processing and large data handling.
Revolution Analytics has taken the work of the open source community, repackaged it and resold it with support as value added. This is fine under GPL, but PLEASE do not claim that they have made some enhancements which did not exist in R. This is blatantly false and I would be very sorry if such lies are propagated by Revolution. The least you can do is check you story before publishing.
Performance Remains to Be Seen
The performance statistics you quote are from Revolution Analytics, not from an independent analysis. I'm sure the folks at SAS can give you many examples where their computations perform many times faster than Revolution Analytics. When you report what a company tells you, it is not journalism, it is advertising.