+ All Categories
Home > Technology > DeployR: Revolution R Enterprise with Business Intelligence Applications

DeployR: Revolution R Enterprise with Business Intelligence Applications

Date post: 26-Jan-2015
Category:
Upload: revolution-analytics
View: 107 times
Download: 1 times
Share this document with a friend
Description:
Presented by Andrie DeVries to Munich R User Group, June 7 2013
15
Revolution Confidential REvolution Confidential Revolution Confidential Andrie de Vries Business Services Director - Europe DeployR Revolution R Enterprise with Business Intelligence Applications Munich R user group 7/6/2013
Transcript
Page 1: DeployR: Revolution R Enterprise with Business Intelligence Applications

Revolution ConfidentialREvolution Confidential

Revolution Confidential

Andrie de VriesBusiness Services Director - Europe

DeployRRevolution R Enterprise with Business Intelligence Applications

Munich R user group7/6/2013

Page 2: DeployR: Revolution R Enterprise with Business Intelligence Applications

Revolution ConfidentialREvolution Confidential

2

Revolution Scales R to the Enterprise…

Scale

Performance

Scale Distributed high

performance analytics

Performance Build & deploy analytics

applications easily

Enterprise Readiness High speed connectors to

enterprise environments Full-service customer

support, consulting and training

Enterprise Readiness

Confidential to Revolution Analytics

Page 3: DeployR: Revolution R Enterprise with Business Intelligence Applications

Revolution ConfidentialREvolution Confidential

3

Integration Layer:DeployR makes R accessible

SeamlessBring the power of R to any web enabled application

SimpleLeverage common APIs including JS, Java, .NET

ScalableRobustly scale user and compute workloads

SecureManage enterprise security with LDAP & SSO

R / Statistical Modeling Expert

DeployR

Data Analysis

Business Intelligence

Mobile Web Apps

Cloud / SaaS

DeploymentExpert

Confidential to Revolution Analytics

Page 4: DeployR: Revolution R Enterprise with Business Intelligence Applications

Revolution ConfidentialREvolution Confidential

4

On-Demand Analytics with RevoDeployRMarket Basket Analysis using Java Script and R enabled by DeployR

•User selection drives Java Script…

•which drives R script… •which drives Java Script to return to user data and graphics needed…

•…enabled by DeployR API’s

Confidential to Revolution Analytics

Page 5: DeployR: Revolution R Enterprise with Business Intelligence Applications

Revolution ConfidentialREvolution Confidential

5

Revolution R Enterprise - Deployment

Hadoop Cluster

Individual Analysts

Database Appliance

Deployment Servers

Business Users

HDFS

S

S

S

HOST

High Workload Clusters

Page 6: DeployR: Revolution R Enterprise with Business Intelligence Applications

Revolution ConfidentialREvolution Confidential

6

RevoDeployR – Key Advantages

Unlocks the power of R to any 3rd party application

Easy to use API Rapid deployment

Scalability Add nodes as you need

them

Separation of expertise Statistician - writes R code Application programmer –

calls the API to execute an R script, and gets the output.

Designed to be Enterprise Ready Comprehensive collection

of Web Service APIs Enterprise Security Stateful and Stateless

execution of R Code/Scripts

Asynchronous Job Execution

Repository for managing R objects and files

Administration

Page 7: DeployR: Revolution R Enterprise with Business Intelligence Applications

Revolution ConfidentialREvolution Confidential

7

RevoDeployR - Architecture

RevoDeployR Web Services

Client libraries (JavaScript, Java, .NET)

Desktop Applications (i.e. Excel)

Business Intelligence

(i.e. QlikView)

Interactive Web or Mobile

Applications

HTTP/HTTPS – JSON/XML

Session Management

AuthenticationData/Script

ManagementAdministration

RR Programmer

ApplicationDeveloper

End User

RR

Admin

Page 8: DeployR: Revolution R Enterprise with Business Intelligence Applications

Revolution ConfidentialREvolution Confidential

8

RevoDeployR - Server

RevoDeployR Web Services API

Grid Management Framework

Spring3 Framework J2EE Framework

NoSQL Database

Management ConsoleGrid Node

RR

R

Grid Node

RR

R

Grid Node

RR

R

Applications Admin

R R Session

Page 9: DeployR: Revolution R Enterprise with Business Intelligence Applications

Revolution ConfidentialREvolution ConfidentialR Scripts and R Code

Stateless execution of pre-defined R Scripts Supports both Anonymous and Authenticated access Project is automatically created, inputs loaded, R script

executed, outputs returned, and session destroyed Stateful execution

Must be an authenticated user Project is explicitly created/destroyed R script or R code executed in the defined project

Jobs Code and Script can be executed as a background job Results are persisted and can be retrieved later

Page 10: DeployR: Revolution R Enterprise with Business Intelligence Applications

Revolution ConfidentialREvolution Confidential

10

Role of the application developer

Define RevoDeployR Server connection (URL) *Authenticate *Create/Open Project Execute Script or Execute Code

Create list of inputs R Objects

Create lists of named outputs (if any) R Objects

*Close R Project

* Required for Stateful execution

Page 11: DeployR: Revolution R Enterprise with Business Intelligence Applications

Revolution ConfidentialREvolution Confidential

11

RESTful API

format = jsonHTTP POST on API call:/r/session/create

{ "deployr": { "response": { "success": true, "project": { "lastmodified": "Thu, 20 Oct 2011 18:27:29 +0000", "live": true, "origin": "Project original.", "longdescr": null, "name": null, "projectcookie": null, "ispublic": false, "owner": "testuser", "descr": null, "project": "PROJECT-5ab61ec0-09b9-44ea-837d-9e6f40a7e8a3" }, "call": "/r/project/create" } }}

JSON Response

Example HTTP Call to Create a Project

Page 12: DeployR: Revolution R Enterprise with Business Intelligence Applications

Revolution ConfidentialREvolution Confidential

12

Stateless Example (JavaScript)

 var exeScript = function () {    …  // set the call back configuration    var callback = { success : plot, failure: fail, scope : this, verbose : true };       /* configuration input for repository script execution */ var scriptConfig = { filename : 'DeployR - Hello World', author: 'testuser', inputs : [R.RDataFactory.createNumeric('input_randomNum', parseInt(num, 10))] };

// execute RScript R.DeployR.repositoryScriptExecute(scriptConfig, callback);     };  

Page 13: DeployR: Revolution R Enterprise with Business Intelligence Applications

Revolution ConfidentialREvolution Confidential

13

Stateful Example

Use case - Simple Regression Upload a CSV file to the RevoDeployR Server Get a list of numeric variables Run a simple regression using 2 of the variables Return a plot

Implementation 2 R Scripts

Read the uploaded CSV and return the list of numeric variables Run the regression on the selected variables

Requires authentication (login) R Session is explicitly created after login Both scripts execute in the same R Session

Page 14: DeployR: Revolution R Enterprise with Business Intelligence Applications

Revolution ConfidentialREvolution Confidential

14

Scalability

Add compute nodes to handle changing workload requirements

Execute code and scripts as background jobs

Assign roles to nodes Anonymous Authenticated Jobs

Page 15: DeployR: Revolution R Enterprise with Business Intelligence Applications

Revolution ConfidentialREvolution Confidential

15

Resources

Revolution Analytics White Paper

http://info.revolutionanalytics.com/RevoDeployR-Whitepaper.html

Free Academic download http://info.revolutionanalytics.com/free-academic.html

Commercial License http://info.revolutionanalytics.com/Buy-Revolution-R-Enterprise.h

tml

Jaspersoft http://jasperforge.org/projects/rrevodeployrbyrevolutionanalytics


Recommended