Oracle DatabaseからHDFSにデータをコピーします。
この操作は、Oracle Databaseによる認証が必要です。「orch.connect」
を参照してください。
使用方法
hdfs.push( x, key, dfs.name, overwrite, driver, split.by)
引数
キー列の索引または名前。
HDFS内のオブジェクトの一意の名前。
dfs.name
が同じ名前のオブジェクトを上書きできるようにする場合はTRUE
。エラーを表示する場合はFALSE
(デフォルト)。
データのコピーに使用されるドライバを識別します。サポート対象のドライバはSqoopのみであるため、この引数は現在無視されます。
データのパーティション化に使用する列(必須)。
使用上の注意
この操作は同期的であるため、大規模なデータセットのコピーに時間がかかる場合があります。コピーが完了すると、プロンプトが再度表示され、Rが使用できるようになります。
ore.frame
オブジェクトは、データベース表を指すOracle R Enterpriseメタデータ・オブジェクトです。これは、Rのdata.frame
オブジェクトに相当します。
split.by
引数を省略する場合、hdfs.push
は、データの一部のみをHDFSにインポートします。
戻り値
データセットを含むファイルのフル・パス。操作が失敗した場合はNULL
。
関連項目
Oracle R Enterpriseユーザーズ・ガイド
例
次の例では、年が2000と等しいONTIME_S
データベース表の行を含むontime_s2000
というore.frame
オブジェクトを作成します。その後、hdfs.push
はontime_s2000
を使用してHDFSに/user/oracle/xq/ontime2000_DBを作成します。
R> ontime_s2000 <- ONTIME_S[ONTIME_S$YEAR == 2000,] R> class(ontime_s2000) [1] "ore.frame" attr(,"package") [1] "OREbase" R> ontime2000.dfs <- hdfs.push(ontime_s2000, key='DEST', dfs.name='ontime2000_DB', 'split.by='YEAR') R> ontime2000.dfs [1] "/user/oracle/xq/ontime2000_DB" attr(,"dfs.id") [1] TRUE