5.2.2 19cのDCLIを使用したExadataコンピュート・ノードへのOML4Rサーバーのインストール

DCLIを使用してOracle Database 19cの複数のExadata Linuxコンピュート・ノードにOML4Rサーバーをインストールする方法。

Oracle Database 19cでDCLIを使用してExadataにOML4Rサーバーをインストールするには、次のステップを実行します。
  1. ラック内のコンピュート・ノードのリストを取得します。

    次の例では、cat nodesコマンドによって、2ノード・クラスタのノードがリストされます。

    $ cat nodes
    exadb01
    exadb02
  2. テキスト・エディタで、ラック内のすべてのコンピュート・ノードの名前を含むファイルを作成します。1行に1つのノード名を指定します。たとえば、2ノード・クラスタのnodesファイルには、次のようなエントリが含まれます。
    exadb01
    exadb02
  3. ORACLE_HOMEORACLE_SIDR_HOMEPATHおよびLD_LIBRARY_PATHを、各ノードに適切に設定し、DCLIスクリプトを実行するシェルと同じシェルに定義します。たとえば、bashrcファイルで次のように値を指定できます。
    export ORACLE_HOME=/u01/app/oraclecle/product/release_number/dbhome_1
    export ORACLE_SID=ORCL
    export R_HOME=/usr/lib64/R
    export PATH=$PATH:$R_HOME/bin:$ORACLE_HOME/bin
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:$RHOME_lib:$R_HOME/port/Linux-X64/lib
  4. オプション1: 最初のデータベース・ノードのみで、sysdbaとしてPDBからrqcfg.sqlスクリプトを実行します。
    $ sqlplus / as sysdba;
    SQL> alter session set container=PDBNAME;
    SQL> @$ORACLE_HOME/R/server/rqcfg.sql

    ノート:

    rqcfg.sqlスクリプトはOracle Database 19cに付属しており、$ORACLE_HOME/R/serverディレクトリにあります。このスクリプトでは、OML4Rサーバー・コンポーネントがデータベースにインストールされます。これは1回のみ実行する必要があります。

    rqcfg.sqlスクリプトによって、次の入力パラメータを求めるプロンプトが表示されます。

    define permtbl = permanent tablespace name for RQSYS schema
    define temptbl = temporary tablespace name for RQSYS schema
    define orahome = ORACLE_HOME path
    define rhome = R_HOME path

    オプション2: Linuxコマンドラインからrqcfg.sqlスクリプトを実行します。

    この例では、ユーザーはsystemでパスワードはapassword、RQSYSスキーマはSYSAUXにあり、SYSAUXに一時表領域TEMPが割り当てられています。ORACLE_HOMEの値は/u01/app/oracle/product/19c/dbhome_1であり、R_HOMEの値はLinuxデフォルト・パスの/usr/lib64/Rです。

    $ sqlplus -L -S system/apassword @$ORACLE_HOME/R/server/rqcfg.sql SYSAUX TEMP /u01/app/oracle/product/19c/dbhome_1 /usr/lib64/R
  5. OML4R Supporting Packagesをダウンロードしてインストールします。

    Supporting Packagesをダウンロードするには、Oracle Machine Learning for R DownloadsのWebサイトに移動します。ご使用のデータベース・バージョンの列で「Supporting」を選択し、ライセンス契約に同意して、ore-supporting-linux-x86-64-version.zipファイルをダウンロードします。

    rootとしてログインし、Supporting Packagesのインストーラを全ノードにコピーします。たとえば:

    $ dcli -g nodes -l oracle mkdir -p /home/oracle/OML4R
    
    $ dcli -g nodes -l oracle -f ore-supporting-linux-x86-64-version.zip -d
         /home/oracle/OML4R/ore-supporting-linux-x86-64-version.zip

    各ノードでSupporting Packagesを解凍します。

    $ dcli -t -g nodes -l oracle unzip
         /home/oracle/OML4R/ore-supporting-linux-x86-64-version.zip -d
         /my_destination_directory/

    次の例のように、OML4R Supporting Packagesをインストールします。

    $ dcli -t -g nodes -l oracle R CMD INSTALL /my_destination_directory/supporting/* -l $ORACLE_HOME/R/library/

    ノート:

    rqcfg.sqlスクリプトによって、OML4Rユーザーが作成されます。デフォルトでは、ユーザーにRQADMINロールは付与されません。

    すべてのOML4Rユーザーは埋込みRの実行関数を使用できますが、データベースのOML4Rスクリプト・リポジトリでRスクリプトを作成および削除できるのはRQADMINロールを持つユーザーのみです。RQADMINロールを付与する場合は注意が必要です。

  6. OML4Rのロードを確認します。
    $ ORE
    
    > library(ORE)
    Loading required package: OREbase
    Attaching package: OREbase
    The following objects are masked from âpackage:baseâ:
        cbind, data.frame, eval, interaction, order, paste, pmax, pmin,
        rbind, table
    Loading required package: OREembed
    Loading required package: OREstats
    Loading required package: MASS
    Loading required package: OREgraphics
    Loading required package: OREeda
    Loading required package: OREmodels
    Loading required package: OREdm
    Loading required package: lattice
    Loading required package: OREpredict
    Loading required package: ORExml