Linux centos7 yum安裝R
yum install R
Linux centos7 yum安裝Rstudio:
wget https://download2.rstudio.org/rstudio-server-rhel-1.1.456-x86_64.rpm
yum install rstudio-server-rhel-1.1.456-x86_64.rpm
Linux centos7 安裝Rserve:
root使用者下輸入R指令:
#R
進入R指令行後在指令行中輸入:
>install.packages("Rserve")
然後會出現下載下傳鏡像讓你選擇(按自己的位置選擇即可,這裡選擇:17):
安裝成功後退出R平台,在系統指令行中輸入以下指令啟動Rserve:
# R CMD Rserve --RS-port 30120 --no-save --RS-encoding utf8 --RS-enable-remote
配置HANA
執行個體代碼測試:
打開HANA STUDIO 在sql console中輸入以下代碼:
CREATE ROW TABLE PRIME(NUMBER INT CS_INT);
INSERT INTO PRIME VALUES(2);
INSERT INTO PRIME VALUES(3);
INSERT INTO PRIME VALUES(5);
INSERT INTO PRIME VALUES(7);
CREATE ROW TABLE PRIME_SQR (NUMBER INT CS_INT);
CREATE PROCEDURE MY_F(IN input1 PRIME,OUT result PRIME_SQR)
LANGUAGE RLANG AS
BEGIN
result<-as.data.frame(input1$NUMBER^2);
names(result)<-c("NUMBER");
END;
--調用存儲過程
CALL MY_F("SYSTEM"."PRIME",?)
MY_F 是采用RLANG 編寫的sqlscript 存儲過程,在存儲過程内,調用了R語言函數,如:as.data.frame,
"<-"是調用語言函數的辨別,當存儲過程執行時,識别到“<-”,就會遠端連接配接到HANA configuration
中定義的Rserve,然後通過Rserve調用R語言函數。
執行後的結果為:
常見錯誤: