安装/升级 Vertica 的 R 语言包

要在 Vertica 中创建 R UDx,请安装与您的服务器版本匹配的 R 语言包。R 语言包含有用来与 Vertica 交互的 R 运行时和关联库。您必须使用此版本的 R 运行时;不能升级它。

您必须在群集中的每个节点上安装 R 语言包。Vertica R 语言包必须是节点上安装的唯一 R 语言包。

Vertica R 语言包先决条件

R 语言包需要许多包才能进行安装和执行。这些依赖项的名称因 Linux 发行版而异。对于支持 Vertica 的 Linux 平台,这些包为:

  • RHEL/CentOS:libfortranxz-libslibgomp

  • SUSE Linux Enterprise Server:libfortran3liblzma5libgomp1

  • Debian/Ubuntu:libfortran3liblzma5libgomp1

  • Amazon Linux 2.0:compat-gcc-48-libgfortranxz-libslibgomp

Vertica 需要高于 7.1 的 libgfortran4 库版本才能创建 R 扩展。libgfortran 库默认包含在 devtoolgcc 包中。

安装 Vertica R 语言包

如果您使用操作系统包管理器而不是 rpm 或 dpkg 命令进行安装,则无需手动安装 R 语言包。适用于每个受支持的 Linux 版本的本机包管理器为:

  • RHEL/CentOS:yum

  • SUSE Linux Enterprise Server:zypper

  • Debian/Ubuntu:apt-get

  • Amazon Linux 2.0:yum

  1. 通过浏览 Vertica 网站,下载 R 语言包。

  2. 支持 (Support) 选项卡上,选择客户下载 (Customer Downloads)

  3. 在系统出现提示时,使用您的 Micro Focus 凭据登录。

  4. 找到并选择适用于您所用的服务器版本的 vertica-R-lang_version.rpmvertica-R-lang_version.deb 文件。R 语言包版本必须与服务器版本在三个小数点上匹配。

  5. 以 root 身份或使用 sudo 安装包:

    • RHEL/CentOS

      $ yum install vertica-R-lang-<version>.rpm
      
    • SUSE Linux Enterprise Server

      $ zypper install vertica-R-lang-<version>.rpm
      
    • Debian

      $ apt-get install ./vertica-R-lang_<version>.deb
      
    • Amazon Linux 2.0

       $ yum install vertica-R-lang-<version>.AMZN.rpm
      

安装程序会将 R 二进制文件放入 /opt/vertica/R

升级 Vertica R 语言包

升级时,您已手动安装的某些 R 包可能无法正常工作且可能需要重新安装。如果不更新包,R 将在包无法使用时返回错误。升级这些包的说明如下所述。

  1. 在升级 Vertica 之前,您必须卸载 R 语言包。卸载语言包时,已手动安装的所有其他 R 包会一直留在 /opt/vertica/R 中,而不会被移除。

  2. 按照将 Vertica 升级到新版本中的详细说明升级您的服务器包。

  3. 更新服务器包后,在每个主机上安装新的 R 语言包。

如果已在每个节点上安装了其他 R 包:

  1. 以 root 身份运行 /opt/vertica/R/bin/R 并执行以下命令:

    > update.packages(checkBuilt=TRUE)
    
  2. 从显示的列表中选择 CRAN 镜像。

  3. 系统会提示您更新具有可用更新的每个包。您必须更新已手动安装且与 R 语言包中的当前 R 版本不兼容的所有包。
    更新:

    • Rcpp

    • Rinside

    此时即会安装选择进行更新的包。使用以下命令退出 R:

    > quit()
    

使用 R 语言编写的 Vertica UDx 函数无需编译,而且升级后无需重新加载 Vertica-R 库和函数。