3.2.3.5.1 Oracle Machine Learning for Rオブジェクトの永続化について
OML4Rのデータストアを使用すると、Rオブジェクトをデータベースに保存できます。
Rオブジェクト(OML4Rプロキシ・オブジェクトを含む)は、明示的に保存しないかぎり現行のRセッションの間存在します。Rオブジェクトの保存およびリストア用の標準のR関数(save
およびload
)は、ファイルに格納するためにRメモリー内のオブジェクトをシリアライズし、メモリーにリストアするためにデシリアライズします。ただし、OML4Rプロキシ・オブジェクトに対しては、それらの関数はプロキシ・オブジェクトに関連付けられているデータベース・オブジェクトをOracle Databaseに保存しないため、保存されたプロキシ・オブジェクトは別のRセッションでは正しく動作しません。
OML4Rプロキシ・オブジェクト、および任意のRオブジェクトは、ore.save
関数を使用して保存できます。ore.save
関数はOML4Rデータストアを指定します。データストアは、Rセッションの終了時にデータベースに保持されます。データストアは、自身が含まれているオブジェクトの参照整合性を保持します。ore.load
関数を使用して、データストア内のオブジェクトを別のRセッションにリストアできます。
データストアを使用して、次のことを実行できます。
-
OML4Rおよび作成したその他のRオブジェクトを1つのRセッションに保存し、別のRセッションにリストアします。
-
Embedded R Executionで使用するためにR関数に引数を渡します。
-
Embedded R Executionで使用するためにオブジェクトを渡します。たとえば、
OREdm
パッケージ内の関数を使用してOracle Machine Learning for SQLモデルを構築し、それをデータストアに保存することもできます。その後、Embedded R Executionを介してそのモデルを使用してデータベースのデータをスコアリングできます。Embedded R Execution関数でのデータストアの使用例は、例10-6を参照してください。
次の表にデータストアを操作する関数をリストし、その簡単な説明を示します。
表3-1 データストアを操作する関数
関数 | 説明 |
---|---|
|
現行のOracle Databaseスキーマのデータストアに関する情報をリストします。 |
|
現行のOracle Databaseスキーマの指定したデータストアに関する詳細な情報を提供します。 |
|
現行のOracle Databaseスキーマからデータストアを削除します。 |
ore.grant |
データストアへ読取りアクセス権を付与します。 |
|
データストアからオブジェクトをR環境に遅延リストアします。 |
|
データストアからオブジェクトをR環境にリストアします。 |
ore.revoke |
データストアへの読取りアクセス権を取り消します。 |
|
Rオブジェクトを新規または既存のデータストアに保存します。 |
関連項目:
Embedded R Executionに対するRインタフェースおよびSQLインタフェースの使用の詳細は、Oracle R EnterpriseのEmbedded R Executionの使用方法を参照してください。
親トピック: データベースでのRオブジェクトの保存および管理