4 ms·
Yes, the R engine is external. It can be installed on the same machine to improve performance. You'll have to manage R and Postgres separately, but the commun
by apohn 9y ago
Yes, the R engine is external. It can be installed on the same machine to improve performance. You'll have to manage R and Postgres separately, but the communication between them can be streamlined (e.g. what is done in PL/R).
This is typically how R-integration is done. The benefit of this is that the R process is isolated from the DB engine process and any issues with the R engine will not cause a major failure with the DB engine. If somebody integrated the R runtime in the same process as Postgres, the R session crashing could lead to entire DB going down as well.
MSSQL's and Oracle's R integration work the same way. They spawn separate R processes and communicate with them.
Note that there's a nuance to "spawn a separate R process." Some pieces of software spawn R using the command line and communicate using temporary directories. Others use JRI, which loads the R library into Java and calls R using API calls.