Oracle Advanced Analytics is a new Oracle database option (announced today) that bundles Oracle R Enterprise and Oracle Data Mining (reviewed previously). With this release, R becomes a first class native interface for the Oracle database along with SQL and the graphic interface that ships with Oracle Data Mining. This allows analytic modeling code to be written in 100% R with the tables and views in the Oracle database appearing as R objects directly. There is no need for modelers to write SQL – they can just write R code and manipulate the data in the database. This makes it easier for R programmers to access the database (no extracting the data to a file, no writing SQL) and the availability of data extends to Oracle OLAP Cubes that can also be accessed from the R code.
Performance is good with the approach for a number of reasons. First, with this set up, the database computing hardware is used and all the R packages are being executed on the database server. The approach further improves performance by allowing the data to be accessed without extracting or moving it. Finally all the ODM algorithms are available to Oracle R Enterprise so that R packages can use the ODM algorithms already deeply embedded and optimized for the Oracle database as well as the Oracle Exadata and Oracle Exalytics machines.
Besides improving data access and performance for R, Oracle R Enterprise also allows a piece of R code that builds a model, makes a forecast or scores a customer to be treated as a database function. Once deployed to an Oracle database function this R code can then be called by any piece of SQL (in a BI tool like OBIEE or Java code or business rules). Any arbitrary R code can be executed in this way with no constraint on inputs or outputs or the code/packages being used. This supports the increasing focus of modelers on real-time scoring by making it easy to embed R code as SQL-friendly functions that can be called to calculate a score or make a prediction right when the decision is being made.
This release builds on previous work around making Big Data available to R. The Oracle R connector for Hadoop is available in conjunction with the support for R in the Oracle Big Data appliance. These allow you to run R against both Oracle’s own Big Data appliance and against a generic Hadoop/HDFS installation with no need to convert it to MapReduce for execution. This means that a user can develop a single R script that brings in data from an Oracle database, Oracle Big Data Appliance and HDFS and have it all look like R objects to the script. These scripts can then be deployed to the Oracle Database or Oracle Big Data infrastructure for real-time scoring against this diverse set of data sources.
This will clearly be a product considered in the forthcoming Decision Management Systems Platform Report.