ROracle is an open source R package supporting a DBI-compliant Oracle driver based on the high performance OCI library. ROracle is publicly available on the Comprehensive R Archive Network (CRAN) and is maintained by Oracle. It enables highly scalable and performant connectivity to Oracle Database for data transfer, along with enables transaction level control and execution of user-provided SQL statements.
The ROracle package supports Oracle R Enterprise database connectivity.
Users of ROracle are very pleased with the performance and functionality:
"In my position as a quantitative researcher, I regularly analyze database data up to a gigabyte in size on client-side R engines. I switched to ROracle from RJDBC because the performance of ROracle is vastly superior, especially when writing large tables. I've also come to depend on ROracle for transactional support, pulling data to my R client, and general scalability. I have been very satisfied with the support from Oracle -- their response has been prompt, friendly and knowledgeable."
-- Antonio Daggett, Quantitative Researcher in Finance Industry
"Having used ROracle for over a year now with our Oracle Database data, I've come to rely on ROracle for high performance read/write of large data sets (greater than 100 GB), and SQL execution with transactional support for building predictive models in R. We tried RODBC but found ROracle to be faster, much more stable, and scalable."
-- Dr. Robert Musk, Senior Forest Biometrician, Forestry Tasmania
In benchmark comparison tests, ROracle performed up to 79 times faster than RJDBC and 2.5 times faster than RODBC for reading data across a range of 1000 rows to 1 million rows, and 10 to 1000 columns. ROracle shows scalability across NUMBER, VARCHAR2, TIMESTAMP, and BINARY_DOUBLE data types.
Similarly, for writing data to Oracle Database, ROracle was 61 times faster for 10 columns at 10 thousand rows than RODBC, and 630 times faster for the same data than RJDBC.