1.2.1 Oracle Databaseの場合のOracle Machine Learning for Rのアーキテクチャ
OML4Rは、Oracle DatabaseおよびOracle Clientに基づくクライアント/サーバー型アーキテクチャを採用しています。
Rエンジンは、サーバー・コンピュータおよび各クライアント・コンピュータ上で動作します。OML4Rは、次の3つの主要機能をサポートしています。
-
Rの透過性
OML4Rのクライアント・パッケージでRの透過性がサポートされていることにより、Oracle表が、ネイティブRオブジェクトであるかのように「透過的に」表示されます。OML4Rパッケージは、Oracle Database表およびビューへの透過的なアクセスを提供します。これにより、データベース内で実行するためにユーザーに透過的にSQLに翻訳される標準R関数が起動されます。
-
予測分析と機械学習
OML4Rは、予測分析および機械学習をサポートする広範囲な並列アルゴリズムおよび分散アルゴリズムをサポートしています。これにより、スケーラビリティおよびパフォーマンスの向上が可能になり、インデータベース・アルゴリズムおよびデータベース・サーバー側アルゴリズムに対するRインタフェースの使いやすさも向上します。
-
埋込みRの実行
サーバー上のOML4Rのパッケージ、ライブラリとRおよびSQLのAPIでは、SQL問合せおよびPL/SQL文内でのユーザー定義のR関数の実行がサポートされています。埋込みRの実行により、データ・パラレル実行およびタスク・パラレル実行のためにパラレルで実行できるRエンジンが生成されます。埋込みRの実行では、ユーザー定義のR関数を実行できます(サードパーティのパッケージを利用する場合があります)。
DBMS_SCHEDULER
データベース・パッケージなどの機能を使用すると、完全自動処理のための、ユーザー定義のR関数の実行をスケジュールできます。