Oracle Loader for Hadoopをいじってみた。
Oracle Loader for Hadoop(OLH)は、Oracle Big Data Connectorsのひとつ。本番運用は有料だけど、開発版(試用)は無料らしい。
HDFS上のファイルをOracle(RDB)のテーブルへロードするツール。(DBからHDFSへの転送はサポートしていないので、)要するにSqoopのexportに相当する。
MapReduceでHDFS上のファイルを読み込み、Mapタスクで分散して並列にJDBCでINSERTする…って、本当にSqoop exportのバッチモードと同じ原理だよ^^;
Sqoopと比べて劇的に速いということは無さそう。
しかしさすがにOracle社が自ら出しているだけあって、それだけではない。
OCIでパーティションテーブルにダイレクト・パス・ロードすることも出来る。(その分、制約も多いが…)
また、SQL*Loaderでロードする為のCSVファイル・コントロールファイルを生成したり、Data Pump形式のバイナリーファイルを生成したりすることも出来る。
速度は計っていないから分からないけど、バイナリー形式でデータファイルを作り、external table(初めて知った)を使ってテーブル化するのは、速そうな気がする。