LOADDEST
LOADDEST 節を使用すれば、宛先 (この宛先に転送されるデータのセットについて考慮される宛先) を指定できます。 LOADDEST 節が考慮されるのは、データがマイグレーションされる場合、または LOADFILE 節も指定される場合に限られます。 それ以外の場合、LOADDEST 節は無視されます。 サポートされる環境は、 Db2®、 NoSQL,、 Hadoop、 Object Storage、 PostgreSQL の5種類です。
LOADDEST 節を使用して宛先を指定する場合は、通常、この宛先に関連する各種パラメーターを構成する必要があります。 そのパラメーターは、「db2hpu.dest」構成ファイル内で構成しなければなりません。 詳細は、 Optim High Performance Unload configuration for Big Data, Db2, Object Storage or PostgreSQL destinationsを参照。
処理されるデータ・ファイルの出力フォーマットが JSON または XML の場合に、データ・アップロード・コマンドを作成する必要があれば、LOADDEST 節を指定しなければなりません。
DB2 オプション
これにより、宛先が Db2 環境であることを指定できます。 サポートされる Db2 データベースは、標準データベース、ローカルにカタログされたリモート・データベース、および Db2 Warehouse データベースです。 標準の Db2 データベースに対して指定する特定のキーワードはありません。 ローカルにカタログされたリモート Db2 データベースと Db2 Warehouse データベースについては、それぞれ REMOTE キーワードと WAREHOUSE キーワードを使用して指定できます。
- 標準データベース
- 特に追加キーワードはありません。 宛先が標準 Db2 データベースであることを指定できます。 これはデフォルト宛先であり、LOADDEST 節が明示的に指定されていない場合に考慮されます。 Db2 宛先は、出力形式 DEL、DELIMITED、ASC、IXF、DSNTIAUL、および XML と整合しています。Db2 Load コマンドが LOADFILE 節で指定されたファイルに書き込まれる場合、そのようなファイルには以下が含まれます。
- オプションの Db2 接続ステップ (WITH STANDARD AUTH オプションが LOADDEST 節に指定されている場合)
- Db2 Load コマンド自体
- オプションの Db2 切断ステップ (WITH STANDARD AUTH オプションが LOADDEST 節に指定されている場合)
- ローカルでカタログされたリモート・データベース
- REMOTE キーワードを指定する必要があります。 これにより、宛先がローカルにカタログされたリモート Db2 環境であることを指定できます。 リモート Db2 宛先は、出力フォーマット DEL、DELIMITED、ASC、および IXF と整合しています。
- Db2 Warehouse データベース
- WAREHOUSE キーワードを指定する必要があります。 これにより、宛先が Db2 Warehouse 環境であることを指定できます。 WAREHOUSE オプションは、DEL 出力フォーマットおよび DELIMITED 出力フォーマットとのみ整合性があります。
- WITH STANDARD AUTH オプション:
- 標準の Db2 宛先、リモートの Db2 宛先、または CLPPlus ツールの使用に基づく Db2 Warehouse 宛先に関連するアンロード・タスクを検討する場合、WITH STANDARD AUTH オプションは LOADFILE 節で指定されたファイルの内容に影響を与えます。
NOSQL_DB オプション
これを使用すれば、宛先が NoSQL 環境であることを指定できます。 NOSQL_DB オプションは JSON 出力フォーマットとのみ整合性があります。
- Cloudant: http://www.cloudant.com
- CouchDB: http://www.couchdb.apache.org
- MongoDB: http://www.mongodb.org
- Cloudant で、 そのツールは (公式ウェブサイトからダウンロードできます) CouchDB: cURL http://curl.haxx.se/download.html )
- MongoDB: 関係するツールは mongoimport です (公式ウェブサイトから バイナリのパッケージとしてダウンロードできます)。 MongoDB https://www.mongodb.org/downloads )
- オプション認証ステップ (WITH STANDARD/KERBEROS AUTH オプションが LOADDEST 節に指定されている場合)
- アップロード・コマンド自体
NoSQL 宛先用にアップロード・コマンドを準備する必要がある場合、そのコマンドはさまざまなパラメーターを使用して生成されます。 パラメーターの値は「db2hpu.dest」構成ファイル内の NoSQL 宛先用のセクションで設定する必要があります。
- 「alias」オプション
- これは任意指定のオプションです。 このオプションの目的は、宛先用の構成ファイル内で指定の宛先に関連する複数のセクションをサポートすることです。 別名は、それらのセクションを識別する手段となります。 その別名は、「db2hpu.dest」ファイル内に構成された宛先タイプに関連するセクションに設定された別名と一致しなければなりません。 値の大/小文字は区別されます。 このようなオプションを指定すると、 Optim High Performance Unloaddb2hpu.dest ' 設定ファイルから、選択された宛先に対応するセクションを検索し、考慮したエイリアスで設定された 'alias' パラメータを含みます。
HADOOP オプション
これを使用すれば、宛先が Hadoop 環境であることを指定できます。 HADOOPオプションは、以下の出力フォーマットと互換性があります:DEL、DELIMITED、JSON、ORC、PARQUET、XML。
Hadoop 宛先は 3 つあり、明示的な関連キーワードによってサポートされます。 その宛先とは HBase、Hive、および HDFS です。 HBASE キーワード、HIVE キーワード、および HDFS キーワードを明示的に使用することで、それぞれの宛先を選択できます。 また、考慮対象の宛先に関連付けられている任意の MapReduce プログラムを使用するように指定することで、(上記 3 つの宛先だけでなく) 既存の Hadoop 宛先を選択することもできます。 これを指定するには、MAPREDUCE キーワードを使用します。
- Apache HBase: http://hbase.apache.org
- Apache Hive: http://hive.apache.org/downloads.html
- Apache 豚だ: http://pig.apache.org/releases.html
- HBASE: 関係するツールは hadoop または pig です
- HIVE: 関係するツールは beeline です (Hive 0.14 バージョン以上と互換性があります)
- HDFS: 関係するツールは hdfs です
- MAPREDUCE: 関係するツールは hadoop です
- オプション認証ステップ (WITH KERBEROS AUTH オプションが LOADDEST 節を使用して指定されている場合)
- LOADDEST 節に HDFS 以外の宛先キーワードが指定されている場合に、関連する HDFS ファイル・システムにある一時ファイルにアップロード対象のデータ・ファイルをコピーするためのステップ
- アップロード・コマンド自体
- LOADDEST 節に宛先キーワード HBASE または MAPREDUCE が指定されている場合に、直前のコピー・ステップで作成された一時ファイルを削除するステップ (HIVE 宛先キーワードが指定されているときは、実行されたアップロード・コマンドによって一時ファイルが自動的に削除されるため、このステップは存在しません)
Hadoop 宛先用にアップロード・コマンドを準備する必要がある場合、そのコマンドはさまざまなパラメーターを使用して生成されます。 パラメーターの値は「db2hpu.dest」構成ファイル内の Hadoop 宛先用のセクションで設定する必要があります。
HBase 宛先を考慮する場合に、アップロード・コマンドを生成する必要があれば、INTO TABLE(S) 節を WITH COLUMNS オプションとともに指定しなければなりません。 HBase 表にデータをアップロードするには、関係するソース表の各列を、ターゲット HBase 表内で定義されている列名および列ファミリーに関連付ける必要があります (列ファミリーとは、HBase 表の列グループのことです)。 このような関連付けを指定するには、当該 WITH COLUMNS オプションを使用します。 これを行う場合は、デフォルト列ファミリーを指定する必要があります。 必要であれば、オプション関連付けのリストも含めることができます (各関連付けでは、関係するソース表の列がターゲット HBase 表内の列 (およびその列ファミリー) に関連付けられます)。 関係するソース表の列のうち、列ファミリーに明示的には関連付けられていない列はすべて、デフォルト列ファミリーに付随する同じ名前の列に関連付けられます。 このレベルで指定されるソース列名は、関連表に関与するタスクによって関連付けられなければなりません。
Hive 宛先を考慮するときに、関連出力形式が DELIMITED の場合は、DATE データ型および TIMESTAMP データ型に対して選択される形式に注意してください。 DATE 列の書式設定には DATE_C オプションを使用する必要があります。 TIMESTAMP 列の書式設定には TIMESTAMP_G オプションを使用する必要があります。
- 「alias」オプション
- これは任意指定のオプションです。 このオプションの目的は、宛先用の構成ファイル内で指定の宛先に関連する複数のセクションをサポートすることです。 別名は、それらのセクションを識別する手段となります。 その別名は、「db2hpu.dest」ファイル内に構成された宛先タイプに関連するセクションに設定された別名と一致しなければなりません。 値の大/小文字は区別されます。 このようなオプションを指定すると、 Optim High Performance Unloaddb2hpu.dest ' 設定ファイルから、選択された宛先に対応するセクションを検索し、考慮したエイリアスで設定された 'alias' パラメータを含みます。
OBJECT_STORAGE オプション
これにより、宛先がオブジェクト・ストレージ環境であることを指定できます。 サポートされている送信先は、 IBM Cloud Object Storage、Amazon EC2、 Amazon S3 (または S3 と互換性のあるもの)、 OpenStack Swift、 Microsoft Azure、およびリモートファイルシステムです。 IBM_COS、 AWS_EC2、 AWS_S3、SWIFT、AZURE、FILESYSTEMキーワードを使用することで、それぞれ指定することができます。
- IBM_COSオプション
- IBM_COSオプションは、以下の出力フォーマットと互換性があります:DEL、DELIMITED、JSON、ORC、PARQUET、XML。
- AWS_EC2 オプション
- この AWS_EC2 オプションは、以下の出力フォーマットと一致しています:DEL、DELIMITED、JSON、ORC、PARQUET、XML。
- AWS_S3 オプション
- この AWS_S3 オプションは、以下の出力フォーマットと一致しています:DEL、DELIMITED、JSON、ORC、PARQUET、XML。
- SWIFT オプション
- SWIFTオプションは、以下の出力フォーマットと互換性があります:DEL、DELIMITED、JSON、ORC、PARQUET、XML。
- AZURE オプション
- AZUREオプションは、以下の出力形式と互換性があります:DEL、DELIMITED、JSON、ORC、PARQUET、XML。
- FILESYSTEM オプション
- これにより、宛先が、 scp コマンドの使用に基づいてファイルをアップロードできるファイル・システム環境であることを指定できます。 FILESYSTEMオプションは、以下の出力フォーマットと互換性があります:DEL、DELIMITED、JSON、ORC、PARQUET、XML。
- 「alias」オプション
- これは任意指定のオプションです。 このオプションの目的は、宛先用の構成ファイル内で指定の宛先に関連する複数のセクションをサポートすることです。 別名は、それらのセクションを識別する手段となります。 その別名は、「db2hpu.dest」ファイル内に構成された宛先タイプに関連するセクションに設定された別名と一致しなければなりません。 値の大/小文字は区別されます。 このようなオプションを指定すると、 Optim High Performance Unloaddb2hpu.dest ' 設定ファイルから、選択された宛先に対応するセクションを検索し、考慮したエイリアスで設定された 'alias' パラメータを含みます。
POSTGRESQL オプション
これを使用して、宛先が PostgreSQL 環境であることを指定できます。 POSTGRESQL オプションは、出力フォーマット DEL および DELIMITED と整合性があります。 PostgreSQL : https://www.postgresql.org/
LOADFILE 節を使用して指定されたアップロード・コマンドを生成する必要がある場合や、自動マイグレーションを実行する場合は、PostgreSQL の完全パッケージを使用して psql PostgreSQL 対話式端末をインストールする必要があります。 インストール方法は使用するプラットフォームによって異なる: https://www.postgresql.org/download/.
- 任意指定の認証ステップ (WITH STANDARD AUTH オプションが LOADDEST 節に指定されている場合)
- アップロード・コマンド自体
PostgreSQL 宛先用にアップロード・コマンドを準備する必要がある場合、そのコマンドはさまざまなパラメーターを使用して生成されます。 パラメーターの値は「db2hpu.dest」構成ファイル内の対象となる PostgreSQL 宛先用のセクションで設定する必要があります。
- 「alias」オプション
- これは任意指定のオプションです。 このオプションの目的は、宛先用の構成ファイル内で指定の宛先に関連する複数のセクションをサポートすることです。 別名は、それらのセクションを識別する手段となります。 その別名は、「db2hpu.dest」ファイル内に構成された宛先タイプに関連するセクションに設定された別名と一致しなければなりません。 値の大/小文字は区別されます。 このようなオプションを指定すると、 Optim High Performance Unloaddb2hpu.dest ' 設定ファイルから、選択された宛先に対応するセクションを検索し、考慮したエイリアスで設定された 'alias' パラメータを含みます。
NOSQL_DB、HADOOP、SWIFT、および POSTGRESQL の各宛先用の WITH STANDARD/KERBEROS AUTH オプション
WITH STANDARD/KERBEROS AUTH オプションを使用すれば、指定の宛先に向けたデータのアップロードに適用される認証方式を指定できます。
- STANDARD キーワード: これは標準方式を指し示します (従来のユーザー/パスワードの組み合わせが使用されます)
- KERBEROS キーワード: これは Kerberos 方式を指し示します (Kerberos プリンシパルが使用されます)
NoSQL 宛先または Hadoop 宛先への自動マイグレーションを実行するときは、標準認証方式または Kerberos 認証方式の指定が必須です。 このようなマイグレーションのケースでは、セキュリティー上の理由により認証方式を指定しなければなりません。 標準認証方式を使用して NoSQL 宛先へのマイグレーションを行うときは、考慮対象の宛先用に適切な資格情報を作成することも必要となります。
Swift 宛先または PostgreSQL 宛先への自動マイグレーションを実行する場合は、標準認証方式を指定する必要があります。 このようなマイグレーションのケースでは、セキュリティー上の理由により認証方式を指定しなければなりません。 また、考慮対象の宛先に適した資格情報も作成しなければなりません。
NoSQL、Hadoop、Swift、または PostgreSQL の各宛先用にアップロード・コマンドを生成する際に、認証方式への参照がない場合、アップロード・コマンドは認証用の予備ステップなしで生成されます。
制約
- UTF-8 エンコーディング: Optim High Performance Unload これらの宛先にアップロードするファイルを生成する際には、 UTF-8 エンコーディングを使用する必要があります。 NoSQL 宛先または Hadoop 宛先に関する実行では、これらの宛先が UTF-8 以外のエンコードをサポートしていないためです。 Db2 Warehouse 宛先に対して実行する場合、その理由は、基礎となる Db2 データベースが UTF-8 エンコードで暗黙的に作成されるためです。 そのため、問題を回避するために、これらの宛先すべてについて、 NoSQL,、 Hadoop、または Db2 Warehouse 宛先用の制御ファイルで UTF-8 とは異なるエンコード指定が行われた場合、その指定は無視され、内部的に強制的に UTF-8
- Hive 宛先が考慮される場合に、多くの日付形式とタイム・スタンプ形式は、この宛先の日付データ型やタイム・スタンプ・データ型と不整合です。 以下は Optim High Performance Unload に存在し、 Hive 宛先でサポートされているこれらのデータ型の形式のリストです。
- サポートされている固有の日付データ型形式は DATE_C です。
- サポートされているタイム・スタンプ・データ型形式は TIMESTAMP_A と TIMESTAMP_G です。 TIMESTAMP_A 形式が考慮される場合は、Hive 宛先と整合するように、時刻区切り文字やタイム・スタンプ区切り文字を変更する必要があります。 この場合は、TIMEDELIM 節に「:」値を設定して時刻区切り文字を指定する必要があります。 また、TIMESTAMPDELIM 節の最初の値にスペース文字を設定してタイム・スタンプ区切り文字を指定する必要があります。 このとき、TIMESTAMPDELIM 節の 2 番目の値は無視されます。
このような形式を変更するには、出力ファイルの出力形式を DELIMITED に設定する必要があります。
- CLPPlus ツールを使用して Db2 Warehouse 宛先を検討する場合、ほとんどの日付、時刻、およびタイム・スタンプの形式はこのツールと不整合です。 以下は、このツールでサポートされているデータタイプとフォーマットの一覧です Optim High Performance Unload、このツールでサポートされているものは以下の通りです
- サポートされている固有の日付データ型形式は DATE_C です。
- サポートされている時刻データ型形式は TIME_A と TIME_B です。 これらの形式のデフォルト区切り文字はドット文字です。 コロン文字は、 Db2 Warehouseによる時刻値の区切り文字としてもサポートされています。 TIMEDELIM 節に「:」値を設定すれば、コロン文字の使用を指定できます。
- サポートされているタイム・スタンプ・データ型形式は TIMESTAMP_A、TIMESTAMP_B、および TIMESTAMP_G です。
このような形式を変更するには、出力ファイルの出力形式を DELIMITED に設定する必要があります。
- PostgreSQL 宛先の場合、日付、時刻、およびタイム・スタンプの形式の多くは、この宛先の日付、時刻、およびタイム・スタンプのデータ型と整合性がありません。 以下は Optim High Performance Unload に存在し、 PostgreSQL 宛先でサポートされているこれらのデータ型の形式のリストです。
- サポートされている固有の日付データ型形式は DATE_C です。
- サポートされている固有の時刻データ型形式は TIME_F です。
- サポートされている固有のタイム・スタンプ・データ型形式は TIMESTAMP_G です。
- Windows プラットフォームで生成されたアップロード・コマンドを含むファイルに適用される命名規則: これらのプラットフォームでは、ファイルを正常に実行するために、実行する必要のあるファイルの名前に接尾部として「.bat」を付加する必要があります。 Windows プラットフォーム上でアップロード・コマンド・ファイルを生成するときに、LOADFILE 節を使用してファイルに指定された名前がこのような「.bat」接尾部で終了していない場合は、対応するアップロード・コマンド・ファイルの作成時に使用された名前に、この接尾部が自動的に付加されます。
- ユーザー定義の MapReduce プログラムの使用に関連する制限: アップロード・コマンドの生成に独自の MapReduce を使用するには、LOADDEST 節で MAPREDUCE キーワードを指定し、db2hpu.dest 構成ファイル内において MapReduce 宛先に関するセクションに関連「command」パラメーターを設定します。 このパラメーターに対して指定するストリングは特定のパターンに従っていなければなりません。 必要なパターンは以下のとおりです。
- ストリングは考慮対象の MapReduce プログラムの名前で始まっていなければなりません。これは jar ファイルとしてパッケージされていなければなりません。
- その後に、MapReduce プログラムに渡される可能性があるオプションを含む任意指定の部分が続かなければなりません。
- その後に、関連するアップロード・コマンドの生成時に自動的に追加されるアップロード対象データ・ファイルが指定されることが期待されなければなりません。
LOADDEST(HADOOP MAPREDUCE)db2hpu.dest 構成ファイル内の関連宛先セクションは以下のとおりです。
[MapReduce]
command=/tmp/myMR.jar --input
hdfspath=/tmp/
ここで、それぞれ以下のとおりです。- MapReduce プログラムの実体は myMR.jar です
- --input オプションは MapReduce プログラムのオプションであり、この後に処理対象のデータ・ファイルが指定されることが期待されます
OUTFILE("outfile")hadoop jar /tmp/myMR.jar --input /tmp/outfile