将 R 部署到 IBM Db2 Warehouse
必须先将 R 部署到 Db2 Warehouse 系统,然后才能将 R 与 Db2 Warehouse 配合使用。请根据您需要的功能,使用下列其中一种或两种方法来部署 R。
- 方法 1
- 在 Db2 Warehouse 容器或 Integrated Analytics System 容器中创建 R 实例。如果要将 R 与 Spark 配合使用,请使用这种方法。.
- 方法 2
- 创建 RStudio® Docker 容器,并将其部署到 Db2 Warehouse 主机节点。如果要设置用于开发 R 脚本的集成式 RStudio 开发环境,请使用这种方法。
方法 1:在 Db2 Warehouse 容器中创建 R 实例
如果要使用 SparkR,必须在 Db2 Warehouse 容器中创建一个 R 实例。
- 如果已安装某个版本的 R,请移除此版本以及所有随附的库。
- 从
https://cran.r-project.org/mirrors.html中选择一个位置。 - 在 Source Code for all Platforms 部分中,指示所要部署的 R 版本。注: R V3.6.1 已通过测试并正确完成编译。
- 在 Docker 主机节点上,从 Db2 Warehouse 容器外部输入以下命令。
使用以下命令连接到 Db2 Warehouse 节点。docker exec -it Db2wh /bin/bash
其中,user 是用户名,host 是 Docker 主机的名称。输入密码后,您将登录到相应的 Db2 Warehouse Docker 容器中。ssh user@host -p 50022 - 将 R 源代码的副本下载到
/tmp文件夹。例如,以下命令从https://cran.uni-muenster.de/位置下载 R V3.6.1。wget -P /tmp http://cran.uni-muenster.de/src/base/R-3/R-3.6.1.tar.gz - 将源文件解压缩。
tar zx -C /tmp -f /tmp/R-3.6.1.tar.gz - 输入以下命令,在 mkdir /mnt/blumeta0/R-Install 文件夹中编译并安装 R 环境。
cd /tmp/R-3.6.1 export LD_LIBRARY_PATH= ./configure --with-x=no --prefix=/mnt/blumeta0/R-Install/ --exec-prefix=/mnt/blumeta0/R-Install/ make prefix=/mnt/blumeta0/R-Install/ exec-prefix=/mnt/blumeta0/R-Install/R/ all install - 通过输入以下命令,进入交互式 R Shell:
R --vanilla - 为了能够使用 Apache Spark 运行 R 脚本,Db2 Warehouse 需要 RJSONIO 程序包、RODBC
程序包、ibmdbR 程序包和 ggplot2 程序包。要安装这些程序包,请从交互式 R Shell 中输入以下命令。
install.packages(c('RJSONIO', 'RODBC', 'ibmdbR', 'ggplot2'))
要安装另一个 R 程序包,请从交互式 R Shell 中输入以下格式的命令。
install.packages('package name', dependencies=TRUE)例如,IBM® 提供了下列可以用于 Db2 Warehouse 的 R 程序包:
- ibmdbRXt
- 此程序包中包含对 ibmdbR 程序包的扩展,包括数据库内地理空间函数。有关此程序包、其先决条件以及如何安装的更多信息,请参阅 https://github.com/ibmdbanalytics/ibmdbRXt/。
要验证 R 安装:
- 装入 Spark 样本文件。
- 发出以下命令来提交验证 R 脚本:
spark-submit.sh ClusterVerify.R - 记下上一条命令所返回的提交标识。
- 反复发出以下命令,以检查验证 R 脚本的状态:
继续发出此命令,直到具有相应提交标识的作业的 Status 列指出应用程序已结束为止。spark-submit.sh --list-apps - 发出以下命令以显示应用程序日志(请将
xxxxxxxxxxxxxxxxxxx替换为作业提交标识):
如果已正确安装 R,那么日志会包含有关 Spark 集群的参考消息。spark-submit.sh --display-app-log out xxxxxxxxxxxxxxxxxxx
方法 2:创建并部署 RStudio Docker 容器
注: 当 Db2 Warehouse 系统在 POWER® LE 硬件上运行时,不能使用这种方法。但是,您可以改用自己安装在本地的 R 开发环境。有关如何使用您自己的环境的更多信息,请参阅将 R 开发环境连接到 Db2 数据库。
RStudio 是可用于开发和运行 R 脚本的开发环境。如果要设置集成式 RStudio 环境以用于 Db2 Warehouse,请创建 RStudio Docker 容器并将其部署到 Db2 Warehouse 主机节点。