8.2.7 Apache HDFS
HDFSハンドラは、変更キャプチャ・データをHadoop分散ファイル・システム(HDFS)にストリーミングする目的で設計されています。
この章では、HDFSハンドラの使用方法について説明します。
- 概要
- SequenceFile形式でのHDFSへの書込み
HDFSSequenceFile
は、バイナリ・キーと値のペアで構成されているフラット・ファイルです。gg.handler.name.format
プロパティをsequencefile
に設定してデータをSequenceFile
形式で書き込むことができます。 - HDFSハンドラの設定および実行
- Avroオブジェクト・コンテナ・ファイル形式でのHDFSへの書込み
- テンプレート文字列を使用したHDFSファイル名の生成
- メタデータ変更イベント
- パーティション化
パーティション化機能ではテンプレート・マッパー機能を使用してパーティション化文字列を解決します。その結果、ソース証跡データのパーティション化方法を細かく制御できるようになります。Oracle GoldenGate for Distributed Applications and Analytics (GG for DAA)の21cリリースでは、テンプレート機能でサポートされているすべてのキーワードが、HDFSパーティション化でサポートされています。 - HDFSのその他の考慮事項
- ベスト・プラクティス
- HDFSハンドラのトラブルシューティング
HDFSハンドラのトラブルシューティングは、Javalog4j
ファイルの内容から始まります。Javaロギング構成にある指示に従って、Javalog4j
ログ・ファイルを正しく生成するようにランタイムを構成してください。 - HDFSハンドラ・クライアント依存性
親トピック: ターゲット
8.2.7.1 概要
HDFSは、Oracle GoldenGate for Distributed Applications and Analytics (GG for DAA)のプライマリ・ファイル・システムです。Hadoopは通常、Hadoopクラスタとして機能する複数のマシンにインストールされます。Hadoopでは、きわめて大量のデータをクラスタに格納でき、そのデータはクラスタ内のマシン全体で水平方向にスケーリングされます。そのうえで、様々なGG for DAAアプリケーションを使用してそのデータの分析を実行できます。
親トピック: Apache HDFS
8.2.7.2 SequenceFile形式でのHDFSへの書込み
HDFS SequenceFile
は、バイナリ・キーと値のペアで構成されているフラット・ファイルです。gg.handler.name.format
プロパティをsequencefile
に設定してデータをSequenceFile
形式で書き込むことができます。
レコードのkey
部分はnullに設定され、実際のデータはvalue
部分に設定されます。Hadoop SequenceFile
の詳細は、https://cwiki.apache.org/confluence/display/HADOOP2/SequenceFileを参照してください。
親トピック: Apache HDFS
8.2.7.2.1 Hiveとの統合
HDFSハンドラには必要なHive機能がすべて用意されているため、Oracle GoldenGate for Distributed Applications and Analytics (GG for DAA)リリースにはHiveストレージ・ハンドラが含まれていません。
Hive統合を作成し、表を作成してDDLイベントの発生時に表定義を更新できます。これは、Avroオブジェクト・コンテナ・ファイル形式でフォーマットされたデータにのみ制限されます。詳細は、「Avroオブジェクト・コンテナ・ファイル形式でのHDFSの書き込み」および「HDFSハンドラ構成」を参照してください。
Hiveで順序ファイルを消費するには、DDLでSTORED as sequencefile
を含むHive表を作成します。create table
スクリプトのサンプルを次に示します。
CREATE EXTERNAL TABLE table_name (
col1 string,
...
...
col2 string)
ROW FORMAT DELIMITED
STORED as sequencefile
LOCATION '/path/to/hdfs/file';
ノート:
ファイルがHiveで使用されるようにする場合は、gg.handler.name.partitionByTable
プロパティをtrue
に設定する必要があります。
親トピック: SequenceFile形式でのHDFSへの書込み
8.2.7.2.2 データ形式の理解
データは各レコードのvalue
部分に書き込まれ、区切りText Formatで表されます。区切りテキスト行フォーマッタの使用で説明されているすべてのオプションが、HDFS SequenceFileにデータを書き込む際に適用されます。
たとえば:
gg.handler.name.format=sequencefile
gg.handler.name.format.includeColumnNames=true
gg.handler.name.format.includeOpType=true
gg.handler.name.format.includeCurrentTimestamp=true
gg.handler.name.format.updateOpKey=U
親トピック: SequenceFile形式でのHDFSへの書込み
8.2.7.3 HDFSハンドラの設定および実行
HDFSハンドラを実行するには、Hadoop単一インスタンスまたはHadoopクラスタをインストールして実行する必要があり、HDFSハンドラを実行しているマシンからネットワークにアクセスできる必要があります。Apache Hadoopはオープン・ソースであり、次の場所からダウンロードできます。
単一ノード・クラスタ(疑似分散操作モード用)またはクラスタ化設定(完全分散操作モード用)のインストール方法は、「開始」のリンクをたどってください。
ここでは、HDFSハンドラのコンポーネントの構成とハンドラの実行について説明します。
8.2.7.3.1 クラスパス構成
HDFSハンドラをHDFSに接続して実行するには、HDFS core-site.xml
ファイルおよびHDFSクライアントjarが、gg.classpath
変数で構成されている必要があります。HDFSクライアントjarは、HDFSハンドラが接続するHDFSのバージョンと一致する必要があります。必要なクライアントjarファイルのリリース別リストは、「HDFSハンドラ・クライアント依存性」を参照してください。
core-site.xml
ファイルのデフォルトの場所は、Hadoop_Home
/etc/hadoop
です
HDFSクライアントjarのデフォルトの場所は次のディレクトリです。
Hadoop_Home
/share/hadoop/common/lib/*
Hadoop_Home
/share/hadoop/common/*
Hadoop_Home
/share/hadoop/hdfs/lib/
*
Hadoop_Home
/share/hadoop/hdfs/*
gg.classpath
は、指示に従って正確に構成する必要があります。core-site.xml
ファイルのパスには、ワイルドカードを付けずにcore-site.xml
ファイルがあるディレクトリのパスを含めてください。core-site.xml
ファイルのパスにワイルドカード(*)を含めると、このファイルが選択されません。逆に、依存関係jarのパスには、そのディレクトリにあるjarファイルがすべて関連するクラスパスに含まれるように、ワイルドカード(*)を含める必要があります。*.jar
は使用しないでください。
正しく構成されたgg.classpath
変数の例を次に示します。
gg.classpath=/ggwork/hadoop/hadoop-2.6.0/etc/hadoop:/ggwork/hadoop/hadoop-2.6.0/share/hadoop/common/lib/*:/ggwork/hadoop/hadoop-2.6.0/share/hadoop/common/*:/ggwork/hadoop/hadoop-2.6.0/share/hadoop/hdfs/*:/ggwork/hadoop/hadoop-2.6.0/share/hadoop/hdfs/lib/*
Kerberosセキュリティを有効にする場合は、HDFS構成ファイルhdfs-site.xml
もクラスパスに存在する必要があります。デフォルトでは、hdfs-site.xml
ファイルは、Hadoop_Home
/etc/hadoop
ディレクトリに配置されます。HDFSハンドラがHadoopと同じ場所に配置されていない場合は、いずれかまたは両方のファイルを別のマシンにコピーできます。
親トピック: HDFSハンドラの設定および実行
8.2.7.3.2 HDFSハンドラ構成
HDFSハンドラの構成可能な値は次のとおりです。これらのプロパティは、Javaアダプタ・プロパティ・ファイルにあります(Replicatプロパティ・ファイルにはありません)
HDFSハンドラの選択を有効にするには、まずgg.handler.name.type=hdfs
およびその他のHDFSプロパティを次のように指定してハンドラ・タイプを構成する必要があります。
プロパティ | オプション/必須 | 有効な値 | デフォルト | 説明 |
---|---|---|---|---|
|
必須 |
任意の文字列 |
なし |
HDFSハンドラの名前を指定します。HDFSハンドラ名は、この表にリストしたプロパティ名の一部になります。 |
|
必須 |
|
なし |
HDFSハンドラを選択し、変更データ取得をHDFSにストリーミングします。 |
|
オプション |
|
|
ハンドラの操作( |
|
オプション |
デフォルトの測定単位はバイトです。 |
|
作成されるHDFSファイルの最大ファイル・サイズを選択します。 |
|
オプション |
HDFSのターゲット書込みディレクトリを解決する有効なテンプレート化された文字列。テンプレートには、HDFS書込みディレクトリを生成するために実行時に動的に解決される定数およびキーワードを混在させることができます。 |
|
HDFS書込みディレクトリを実行時に動的に生成するために、定数とともにインタレースされるキーワードを使用できます(「テンプレート文字列を使用したHDFSファイル名の生成」を参照)。 |
|
オプション |
デフォルトの測定単位はミリ秒です。 |
ファイルのローリング・オン時間がオフ。 |
タイマーはHDFSファイルが作成されるときにスタートします。間隔が経過したときにまだファイルが開いている場合、そのファイルは閉じられます。新しいファイルはすぐには開かれません。新しいHDFSファイルは、ジャストインタイム・ベースで作成されます。 |
|
オプション |
デフォルトの測定単位はミリ秒です。 |
ファイルの非アクティブ・ローリング・オン時間がオフ。 |
タイマーは、HDFSファイルへの前回の書込みからスタートします。HDFSファイルへの新しい書込みでカウンタが再開されます。カウンタが経過したときにまだファイルが開いている場合、そのHDFSファイルは閉じられます。新しいファイルはすぐには開かれません。新しいHDFSファイルは、ジャストインタイム・ベースで作成されます。 |
|
オプション |
実行時にHDFSファイル名を動的に生成するために使用される、解決可能なキーワードと定数を含む文字列。 |
|
一意のHDFSファイル名を実行時に動的に生成するために、定数とともにインタレースされるキーワードを使用できます(「テンプレート文字列を使用したHDFSファイル名の生成」を参照)。ファイル名は通常、 |
|
オプション |
|
|
HDFSに書き込まれるデータを表ごとにパーティション化するかどうかを決定します。 Avroオブジェクト・コンテナ・ファイル・フォーマッタを使用するには |
|
オプション |
|
|
メタデータの変更があった場合に、HDFSファイルをロールするかどうかを決定します。trueの場合はHDFSがロールされ、falseの場合はHDFSがロールされません。 Avroオブジェクト・コンテナ・ファイル・フォーマッタを使用するには |
|
オプション |
|
|
出力データのフォーマット方法について、HDFSハンドラのフォーマッタを選択します。
|
|
オプション |
|
|
トークン・フィールドとトークン・キーや値を出力に含める場合は |
|
オプション |
テンプレート・キーワードと定数の組合せ。実行時にサブディレクトリに解決されデータのパーティション化に使用されます。 |
|
1つまたは複数のサブ・ディレクトリを解決し、これを解決されたHDFSターゲット・パスに追記します。これらのサブディレクトリはデータのパーティション化に使用されます。 |
|
オプション |
kerberos |
|
このプロパティを |
|
オプション( |
Kerberos |
|
|
|
オプション( |
|
|
Kerberos認証で用いるKerberosプリンシパル名。 |
|
オプション |
- |
|
HDFSの有効なパスに設定して、スキーム(使用可能な場合)はHDFSディレクトリに書きこまれるようにします。スキーマは現在AvroおよびJSONフォーマッタでのみ使用できます。メタデータ変更イベントが発生すると、スキーマが上書きされてスキーマの変更が反映されます。 |
順序ファイル形式にのみ適用可能。 |
オプション |
|
|
Hadoop順序ファイル圧縮タイプ。 |
順序ファイルに適用可能で、HDFSへの書き込みはAvro OCF形式のみ。 |
オプション |
|
|
Hadoop順序ファイル圧縮コーデック。 |
gg.handler.name.compressionCodec |
オプション |
|
|
Avro OCFフォーマッタ圧縮コード。この構成では、Avro OCFファイルに使用される圧縮ライブラリの選択を制御します。 SnappyはSnappy JARファイルにネイティブ・バイナリを含み、圧縮時または圧縮解除時にJava-nativeトラバーサルを実行します。Snappyを使用することで、Javaを使用しているときは発生しない実行時の問題やプラットフォームの移植の問題が生じる場合があります。場合によっては、追加のテストを実施して、Snappyが必要なすべてのプラットフォームで確実に動作するか確認する必要があります。Snappyはオープン・ソース・ライブラリであるため、オラクル社は必要なすべてのプラットフォームでの稼働を保証できません。 |
|
オプション |
|
|
抽出、ロード、変換(ELT)の状況をサポートするために、Avro OCFまたは順序ファイルの書込みを行わないHDFSハンドラにのみ適用できます。 このプロパティを ファイル・ロールは次のいずれかによってトリガーされます:
データ・ファイルはHDFSにロードされ、監視プログラムはデータの消費を待機する書込みディレクトリを監視します。消費アプリケーションによって前のファイルを消費できるように、監視プログラムは新しいファイルの出現をトリガーとして使用します。 |
|
オプション |
|
|
多くのアプリケーションでは、このプロパティを |
親トピック: HDFSハンドラの設定および実行
8.2.7.3.3 サンプル構成の確認
Javaアダプタ・プロパティ・ファイルからのHDFSハンドラのサンプル構成を次に示します。
gg.handlerlist=hdfs gg.handler.hdfs.type=hdfs gg.handler.hdfs.mode=tx gg.handler.hdfs.includeTokens=false gg.handler.hdfs.maxFileSize=1g gg.handler.hdfs.pathMappingTemplate=/ogg/${fullyQualifiedTableName} gg.handler.hdfs.fileRollInterval=0 gg.handler.hdfs.inactivityRollInterval=0 gg.handler.hdfs.partitionByTable=true gg.handler.hdfs.rollOnMetadataChange=true gg.handler.hdfs.authType=none gg.handler.hdfs.format=delimitedtext
親トピック: HDFSハンドラの設定および実行
8.2.7.3.4 パフォーマンスに関する考慮事項
HDFSハンドラは、書込み永続性を維持する目的で、各トランザクションの最後にHDFSデータ・ノードにデータをフラッシュするために、HDFS書込みストリームでHDFSフラッシュ・メソッドを呼び出します。これは負荷の高いコールなので、1つまたは複数の操作のトランザクションで多数のHDFSフラッシュ・コールが発生する場合には特に、パフォーマンスが悪影響を受ける可能性があります。
複数の小さいトランザクションを1つの大きいトランザクションのバッチ処理にまとめると、HDFSハンドラのパフォーマンスが大幅に向上する可能性があります。高いパフォーマンスが必要な場合は、Replicatプロセスのバッチ処理機能を構成します。詳細は、「Replicatのグループ化」を参照してください。
HDFSクライアント・ライブラリは、HDFSハンドラがオープンするHDFSファイル・ストリームごとにスレッドを生成します。そのため、JMVで実行するスレッドの数は、オープンしているHDFSファイル・ストリームの数に比例して増加します。オープンしているHDFSファイル・ストリームが増えると、HDFSハンドラのパフォーマンスが低下する可能性があります。(ソース・レプリケーション表が多い、またはパーティション化を多用しているという理由で)多くのHDFSファイルに書き込むようHDFSハンドラを構成すると、パフォーマンスが低下することがあります。ユースケースによって、多くの表への書込みが必要な場合は、HDFSファイル・ストリームをクローズするロール・オン時間またはロール・オン非アクティブの機能を有効にすることをお薦めします。HDFSファイル・ストリームをクローズすると、HDFSクライアント・スレッドが終了し、関連するリソースをJVMが再利用できるようになります。
親トピック: HDFSハンドラの設定および実行
8.2.7.3.5 セキュリティ
HDFSクラスタは、Kerberos認証を使用して保護できます。HDFSハンドラは、Kerberosで保護されたクラスタに接続できます。HDFS core-site.xml
がハンドラのクラスパスにあり、hadoop.security.authentication
プロパティをkerberos
に、hadoop.security.authorization
プロパティをtrue
に設定する必要があります。また、HDFSハンドラのJava構成ファイルで次のプロパティを設定する必要があります。
gg.handler.name
.authType=kerberos gg.handler.name
.kerberosPrincipalName=legal Kerberos principal name gg.handler.name
.kerberosKeytabFile=path to a keytab file that contains the password for the Kerberos principal so that the HDFS Handler can programmatically perform the Kerberos kinit operations to obtain a Kerberos ticket
keytab
ファイルからKerberosパスワードを復号化できない場合があります。これによって、Kerberos認証が対話型モードにフォール・バックされ、プログラムで呼び出されているため機能しなくなります。この問題の原因は、Java Cryptography Extension (JCE)が、Java Runtime Environment (JRE)にインストールされていないことです。JCEがJREにロードされていることを確認します。http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.htmlを参照してください。
親トピック: HDFSハンドラの設定および実行
8.2.7.4 Avroオブジェクト・コンテナ・ファイル形式でのHDFSへの書込み
HDFSハンドラには、Avroオブジェクト・コンテナ・ファイル(OCF)形式でHDFSに書き込むための特殊な機能が含まれています。このAvro OCFはAvro仕様の一部です。詳細は、次の場所にあるAvroドキュメントを参照してください。
https://avro.apache.org/docs/current/spec.html#Object+Container+Files
Avro OCF形式を選択する理由は次のとおりです。
-
Apache Hiveと統合できます(HDFSに書き込まれる未加工のAvroはHiveでサポートされない。)
-
スキーマ展開に対する適切なサポートを提供します。
HDFSにAvro OCF形式で書込みできるようにするには、次の構成を行います。
行データをHDFSにAvro OCF形式で書き込むには、gg.handler.name.format=avro_row_ocf
プロパティを構成します。
操作データをHDFSにAvro OCF形式で書き込むには、gg.handler.name.format=avro_op_ocf
プロパティを構成します。
HDFSおよびAvro OCF統合には、Hiveで対応する表を作成し、メタデータ変更イベントについてスキーマを更新するための機能が含まれています。構成の項では、Hiveとの統合を有効にするプロパティに関する情報を説明しています。Oracle GoldenGate Hive統合はJDBCインタフェースを使用してHiveにアクセスするため、この統合を有効にするにはHive JDBCサーバーを実行する必要があります。
親トピック: Apache HDFS
8.2.7.5 テンプレート文字列を使用したHDFSファイル名の生成
HDFSハンドラでは、テンプレート文字列を使用してHDFSファイル名を動的に生成できます。テンプレート文字列を使用すると、静的な文字列とともに実行時に動的に解決されるキーワードの組合せを生成することで、生成されるHDFSファイル名をより詳細に制御できます。テンプレート・ファイル名は、gg.handler.name.fileNameMappingTemplate
構成プロパティを使用して制御できます。このパラメータのデフォルト値は次のとおりです。
${fullyQualifiedTableName}_${groupName}_${currentTimestamp}.txt
テンプレート・キーワードを参照してください。
有効なテンプレートおよび解決された文字列の例を次に示します。
- 有効なテンプレート
-
置換
-
${schemaName}.${tableName}__${groupName}_${currentTimestamp}.txt
TEST.TABLE1__HDFS001_2017-07-05_04-31-23.123.txt
-
${fullyQualifiedTableName}--${currentTimestamp}.avro
ORACLE.TEST.TABLE1—2017-07-05_04-31-23.123.avro
-
${fullyQualifiedTableName}_${currentTimestamp[yyyy-MM-ddTHH-mm-ss.SSS]}.json
ORACLE.TEST.TABLE1_2017-07-05T04-31-23.123.json
テンプレートを使用してHDFSファイル名を生成する場合は、次の制限に注意してください。
- 生成されるHDFSファイル名は、有効なHDFSファイル名である必要があります。
- 調整された適用および分割されたソース表データを異なるReplicatスレッドに使用する場合は、HDFSファイルの命名テンプレートの一部として
${groupName}
を使用することを強くお薦めします。生成されるHDFS名の一意性を提供するのはグループ名で、${currentTimestamp}
単独では保証されません。HDFSファイル名の衝突により、Replicatプロセスの異常終了が発生します。
親トピック: Apache HDFS
8.2.7.6 メタデータ変更イベント
メタデータ変更イベントが、HDFSハンドラによって処理されるようになりました。HDFSハンドラのデフォルトの動作では、メタデータ変更イベントが発生した場合、現在の関連ファイルがロールされます。この動作により、メタデータ変更の結果は少なくとも複数のファイルに分割できます。メタデータ変更に対するファイル・ローリングは設定変更が可能なので、オフにすることができます。
メタデータ変更イベントをサポートするには、ソース・データベースで変更をキャプチャするプロセスが、DDL変更と証跡でのメタデータの両方をサポートする必要があります。Oracle GoldenGateでは、すべてのデータベース実装でDDLレプリケーションがサポートされているわけではありません。DDLレプリケーションがサポートされているかどうかを判断するには、適切なデータベースに対応するOracle GoldenGateのインストレーションおよび構成ガイドを参照してください。
親トピック: Apache HDFS
8.2.7.7 パーティション化
パーティション化機能ではテンプレート・マッパー機能を使用してパーティション化文字列を解決します。その結果、ソース証跡データのパーティション化方法を細かく制御できるようになります。Oracle GoldenGate for Distributed Applications and Analytics (GG for DAA)の21cリリースでは、テンプレート機能でサポートされているすべてのキーワードが、HDFSパーティション化でサポートされています。
前提条件
パーティション化機能を使用するには、データが表ごとにパーティション化されている必要があります。次の構成は設定できません:
gg.handler.name.partitionByTable=false
パス構成
パス・マッピング・テンプレートの構成が次のようであると想定します:
gg.handler.hdfs.pathMappingTemplate=/ogg/${fullyQualifiedTableName}
ソース表DBO.ORDERS
の場合、パスは実行時に次のように解決されます:
/ogg/DBO.ORDERS
パーティション化構成
HDFSパーティション化を次のように構成します。テンプレートで有効なキーワードはすべてパーティション化でも有効です:
gg.handler.name.partitioner.fully qualified table name=templating keywords and/or
constants
DBO.ORDERS
表のパーティション化が次のように設定されています。
gg.handler.hdfs.partitioner.DBO.ORDERS=par_sales_region=${columnValue[SALES_REGION]}
/ogg/DBO.ORDERS/par_sales_region=west/data files
/ogg/DBO.ORDERS/par_sales_region=east/data files
/ogg/DBO.ORDERS/par_sales_region=north/data files
/ogg/DBO.ORDERS/par_sales_region=south/data files
DBO.ORDERS
表のパーティション化が次のように設定されています。gg.handler.hdfs.partitioner.DBO.ORDERS=par_sales_region=${columnValue[SALES_REGION]}/par_state=${columnValue[STATE]}
この例では、HDFSでファイルが次のように分割されます。
/ogg/DBO.ORDERS/par_sales_region=west/par_state=CA/data files
/ogg/DBO.ORDERS/par_sales_region=east/par_state=FL/data files
/ogg/DBO.ORDERS/par_sales_region=north/par_state=MN/data files
/ogg/DBO.ORDERS/par_sales_region=south/par_state=TX/data files
HDFSパーティション化の構成は慎重に行ってください。データ値の幅が大きいパーティション化列値を選択すると、比例した数の出力データ・ファイルにパーティション化されます。HDFSクライアントはオープン状態の各HDFS書込みストリームにサービスを提供するため複数のスレッドを生成します。大量のHDFSファイルにパーティション化すると、メモリーまたはスレッド(あるいはその両方)のリソース不足が発生する可能性があります。
ノート:
GG for DAA 21c以降では、自動Hive統合は廃止され、パーティション化の制御においてテンプレート化のサポートに変更があります。親トピック: Apache HDFS
8.2.7.8 HDFSのその他の考慮事項
Oracle HDFSハンドラでは、HDFSにデータをストリーミングする前提条件として、特定のHDFSクライアント・ライブラリをクラスパスで解決する必要があります。
必要なクライアントJARファイルのバージョン別リストは、「HDFSハンドラ・クライアント依存性」を参照してください。HDFSクライアントjarは、Oracle GoldenGate for Distributed Applications and Analytics (GG for DAA)製品には付属していません。HDFSハンドラは複数のバージョンのHDFSをサポートし、HDFSクライアントjarはHDFSハンドラが接続するHDFSと同じバージョンである必要があります。HDFSクライアントjarはオープン・ソースであり、Apache HadoopサイトやMaven Central Repositoryなどのサイトから無償でダウンロードできます。
HDFSへの接続を確立するには、HDFSハンドラのクラスパスにHDFS core-site.xml
ファイルが存在する必要があります。core-site.xml
ファイルがクラスパスに存在しない場合、HDFSクライアント・コードのデフォルトは、ローカル・ファイル・システムに書き込もうとするモードになります。HDFSではなくローカル・ファイル・システムに書き込むと、トラブルシューティングや、連絡ポイント(POC)の構築に、またはHDFS統合を確立するプロセスのステップの1つとして便利です。
もう1つ気を付けたいのは、HDFSハンドラを使用してHDFSにストリーミングされるデータは、GG for DAA分析ツール(Hiveなど)ですぐには利用できない場合も多いということです。これは主に、HDFSファイルに対してオープンしている書込みストリームをHDFSハンドラが保有している場合に発生します。デフォルトでは、HDFSは128 MBのブロックで書き込みます。構築中のHDFSブロックは、分析ツールが認識されないことがあります。また、HDFSシェルで-ls
、-cat
、-get
の各コマンドを使用するとき、ファイル・サイズ間に矛盾が発生することもあります。これはHDFSストリーミングの異常であり、HDFS仕様にも書かれています。HDFSのこの異常が原因で、分析データにはファイルごとに128 MBのブラインド・スポットが発生することがあります。レプリケーション・データのストリームが一定しており、HDFSからの分析データに低レベルのレイテンシが必要なければ、これは問題になりません。ただし、HDFS書込みストリームをクローズすると、ブロック書込みがファイナライズされるため、場合によってはこれが問題になることがあります。データは分析ツールですぐに認識され、ファイル・サイズの測定は再び安定します。そのため、HDFSハンドラに追加されたファイル・ローリング機能を使用すると、HDFS書込みストリームをクローズしてすべてのデータを認識させることができます。
重要:
ファイル・ローリング・ソリューションは、それ自体に問題がある場合もあります。ファイル・ローリングを多用すると、HDFSに小さいファイルが大量に発生します。HDFS内の多数の小さいファイルにより、分析ツールでパフォーマンスの問題が発生する可能性があります。
次の場合にも、HDFSに矛盾の問題が発生する可能性があります。
-
HDFSハンドラ・プロセスがクラッシュする。
-
HDFSハンドラ・プロセスで強制シャットダウンが呼び出される。
-
ネットワークの停止やその他の原因でHDFSハンドラ・プロセスが異常終了する。
どの場合にもHDFSハンドラは、HDFS書込みストリームを明示的にクローズして書込みブロックをファイナライズせずに終了する可能性があります。内部プロセスとしてHDFSは、書込みストリームが破損していることを最終的に認識するため、HDFSが書込みブロックをファイナライズします。この場合、HDFSプロセスが書込みブロックをファイナライズする前に短時間の遅延が発生することがあります。
親トピック: Apache HDFS
8.2.7.9 ベスト・プラクティス
クラスタ・ノードと呼ばれる専用サーバーでHDFSクラスタが稼働していることが、Oracle GoldenGate for Distributed Applications and Analytics (GG for DAA)のベスト・プラクティスです。エッジ・ノードとは、HDFSクラスタ・ノードにデータをストリーミングし、HDFSクラスタ・ノードからデータを取得するアプリケーションをホストするサーバー・マシンです。HDFSクラスタ・ノードとエッジ・ノードは別のサーバーであるため、次のような利点があります。
-
HDFSクラスタ・ノードが、クラスタのインタフェースを提供するアプリケーションと、リソースをめぐって競合しません。
-
HDFSクラスタ・ノードとエッジ・ノードで要件が異なる可能性があります。この物理トポロジのために、特定のニーズに応じて適切なハードウェアを構成できます。
ベスト・プラクティスとして、HDFSハンドラはエッジ・ノードにインストールして実行し、ネットワーク接続を使用してHDFSクラスタにデータをストリーミングするようにします。HDFSハンドラは、ネットワーク上でHDFSクラスタに認識されればどのマシン上でも実行できます。HDFSハンドラをエッジ・ノードにインストールするには、core-site.xml
ファイルと依存関係jarをエッジ・ノードにコピーし、HDFSハンドラがアクセスできるようにする必要があります。必要に応じて、HDFSハンドラはHDFSクラスタ・ノード上に共存させることもできます。
親トピック: Apache HDFS
8.2.7.10 HDFSハンドラのトラブルシューティング
HDFSハンドラのトラブルシューティングは、Java log4j
ファイルの内容から始まります。Javaロギング構成にある指示に従って、Java log4j
ログ・ファイルを正しく生成するようにランタイムを構成してください。
8.2.7.10.1 Javaクラスパス
Javaクラスパスはよくある問題です。クラスパスに問題があることは通例、Java log4j
ログ・ファイルの、ClassNotFoundException
でわかります。この問題のトラブルシューティングに、Java log4j
ログ・ファイルを使用できます。ログ・レベルをDEBUG
に設定すると、ログ・ファイルに記録されるgg.classpath
オブジェクトで参照されているjarそれぞれを記録できます。この方法では、DEBUG
レベルのロギングを有効にし、ログ・ファイルで次のようなメッセージを探すと、必要な依存関係jarがすべて解決されることを確認できます。
2015-09-21 10:05:10 DEBUG ConfigClassPath:74 - ...adding to classpath: url="file:/ggwork/hadoop/hadoop-2.6.0/share/hadoop/common/lib/guava-11.0.2.jar
親トピック: HDFSハンドラのトラブルシューティング
8.2.7.10.2 Javaブート・オプション
JRE 11でHDFS replicatを実行すると、StackOverflowError
がスローされます。この問題を修正するには、次のようにJavaアダプタ・プロパティ・ファイルのbootoptionsプロパティを編集します。
jvm.bootoptions=-Djdk.lang.processReaperUseDefaultStackSize=true
親トピック: HDFSハンドラのトラブルシューティング
8.2.7.10.3 HDFS接続プロパティ
HDFS core-site.xml
ファイル(デフォルト設定を含んでいる)の内容は、ロギング・レベルを DEBUG
またはTRACE
に設定している場合に、Java log4j
ログ・ファイルに出力されます。この出力には、HDFSへの接続プロパティが示されます。Java log4j
ログ・ファイルで次のものを検索します。
2015-09-21 10:05:11 DEBUG HDFSConfiguration:58 - Begin - HDFS configuration object contents for connection troubleshooting.
fs.defaultFS
プロパティがローカル・ファイル・システムを指す場合、core-site.xml
ファイルはgg.classpath
プロパティで適切に設定されていません。
Key: [fs.defaultFS] Value: [file:///].
適切にHDFSホストおよびポートが指定されたfs.defaultFS
は、次のようになります。
Key: [fs.defaultFS] Value: [hdfs://hdfshost:9000].
親トピック: HDFSハンドラのトラブルシューティング
8.2.7.10.4 ハンドラとフォーマッタ構成
Java log4j
ログ・ファイルには、HDFSハンドラおよび選択したフォーマッタの構成状態に関する情報が含まれています。この情報は、INFO
ログ・レベルで出力されます。出力は次のようになります。
2015-09-21 10:05:11 INFO AvroRowFormatter:156 - **** Begin Avro Row Formatter - Configuration Summary **** Operation types are always included in the Avro formatter output. The key for insert operations is [I]. The key for update operations is [U]. The key for delete operations is [D]. The key for truncate operations is [T]. Column type mapping has been configured to map source column types to an appropriate corresponding Avro type. Created Avro schemas will be output to the directory [./dirdef]. Created Avro schemas will be encoded using the [UTF-8] character set. In the event of a primary key update, the Avro Formatter will ABEND. Avro row messages will not be wrapped inside a generic Avro message. No delimiter will be inserted after each generated Avro message. **** End Avro Row Formatter - Configuration Summary **** 2015-09-21 10:05:11 INFO HDFSHandler:207 - **** Begin HDFS Handler - Configuration Summary **** Mode of operation is set to tx. Data streamed to HDFS will be partitioned by table. Tokens will be included in the output. The HDFS root directory for writing is set to [/ogg]. The maximum HDFS file size has been set to 1073741824 bytes. Rolling of HDFS files based on time is configured as off. Rolling of HDFS files based on write inactivity is configured as off. Rolling of HDFS files in the case of a metadata change event is enabled. HDFS partitioning information: The HDFS partitioning object contains no partitioning information. HDFS Handler Authentication type has been configured to use [none] **** End HDFS Handler - Configuration Summary ****
親トピック: HDFSハンドラのトラブルシューティング
8.2.7.11 HDFSハンドラ・クライアント依存性
この付録では、Apache HadoopのHDFSクライアント依存性をリストします。hadoop-client-x.x.x.jar
は、Apache Hadoopと一緒に配布されず、クラスパスで必須でもありません。hadoop-client-x.x.x.jar
は、Hadoopクライアント依存性をすべて集計するための空のmavenプロジェクトです。
Maven groupId: org.apache.hadoop
Maven atifactId: hadoop-client
Maven version: 各セクションでリストされるHDFSのバージョン番号
親トピック: Apache HDFS
8.2.7.11.1 Hadoopクライアント依存性
この項では、HDFS各バージョンのHadoopクライアント依存性をリストします。
- HDFS 3.3.0
- HDFS 3.2.0
- HDFS 3.1.4
- HDFS 3.0.3
- HDFS 2.9.2
- HDFS 2.8.5
- HDFS 2.7.7
- HDFS 2.6.0
- HDFS 2.5.2
- HDFS 2.4.1
- HDFS 2.3.0
- HDFS 2.2.0
親トピック: HDFSハンドラ・クライアント依存性
8.2.7.11.1.1 HDFS 3.3.0
accessors-smart-1.2.jar animal-sniffer-annotations-1.17.jar asm-5.0.4.jar avro-1.7.7.jar azure-keyvault-core-1.0.0.jar azure-storage-7.0.0.jar checker-qual-2.5.2.jar commons-beanutils-1.9.4.jar commons-cli-1.2.jar commons-codec-1.11.jar commons-collections-3.2.2.jar commons-compress-1.19.jar commons-configuration2-2.1.1.jar commons-io-2.5.jar commons-lang3-3.7.jar commons-logging-1.1.3.jar commons-math3-3.1.1.jar commons-net-3.6.jar commons-text-1.4.jar curator-client-4.2.0.jar curator-framework-4.2.0.jar curator-recipes-4.2.0.jar dnsjava-2.1.7.jar failureaccess-1.0.jar gson-2.2.4.jar guava-27.0-jre.jar hadoop-annotations-3.3.0.jar hadoop-auth-3.3.0.jar hadoop-azure-3.3.0.jar hadoop-client-3.3.0.jar hadoop-common-3.3.0.jar hadoop-hdfs-client-3.3.0.jar hadoop-mapreduce-client-common-3.3.0.jar hadoop-mapreduce-client-core-3.3.0.jar hadoop-mapreduce-client-jobclient-3.3.0.jar hadoop-shaded-protobuf_3_7-1.0.0.jar hadoop-yarn-api-3.3.0.jar hadoop-yarn-client-3.3.0.jar hadoop-yarn-common-3.3.0.jar htrace-core4-4.1.0-incubating.jar httpclient-4.5.6.jar httpcore-4.4.10.jar j2objc-annotations-1.1.jar jackson-annotations-2.10.3.jar jackson-core-2.6.0.jar jackson-core-asl-1.9.13.jar jackson-databind-2.10.3.jar jackson-jaxrs-base-2.10.3.jar jackson-jaxrs-json-provider-2.10.3.jar jackson-mapper-asl-1.9.13.jar jackson-module-jaxb-annotations-2.10.3.jar jakarta.activation-api-1.2.1.jar jakarta.xml.bind-api-2.3.2.jar javax.activation-api-1.2.0.jar javax.servlet-api-3.1.0.jar jaxb-api-2.2.11.jar jcip-annotations-1.0-1.jar jersey-client-1.19.jar jersey-core-1.19.jar jersey-servlet-1.19.jar jetty-client-9.4.20.v20190813.jar jetty-http-9.4.20.v20190813.jar jetty-io-9.4.20.v20190813.jar jetty-security-9.4.20.v20190813.jar jetty-servlet-9.4.20.v20190813.jar jetty-util-9.4.20.v20190813.jar jetty-util-ajax-9.4.20.v20190813.jar jetty-webapp-9.4.20.v20190813.jar jetty-xml-9.4.20.v20190813.jar jline-3.9.0.jar json-smart-2.3.jar jsp-api-2.1.jar jsr305-3.0.2.jar jsr311-api-1.1.1.jar kerb-admin-1.0.1.jar kerb-client-1.0.1.jar kerb-common-1.0.1.jar kerb-core-1.0.1.jar kerb-crypto-1.0.1.jar kerb-identity-1.0.1.jar kerb-server-1.0.1.jar kerb-simplekdc-1.0.1.jar kerb-util-1.0.1.jar kerby-asn1-1.0.1.jar kerby-config-1.0.1.jar kerby-pkix-1.0.1.jar kerby-util-1.0.1.jar kerby-xdr-1.0.1.jar listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar log4j-1.2.17.jar nimbus-jose-jwt-7.9.jar okhttp-2.7.5.jar okio-1.6.0.jar paranamer-2.3.jar protobuf-java-2.5.0.jar re2j-1.1.jar slf4j-api-1.7.25.jar snappy-java-1.0.5.jar stax2-api-3.1.4.jar token-provider-1.0.1.jar websocket-api-9.4.20.v20190813.jar websocket-client-9.4.20.v20190813.jar websocket-common-9.4.20.v20190813.jar wildfly-openssl-1.0.7.Final.jar woodstox-core-5.0.3.jar
親トピック: Hadoopクライアント依存性
8.2.7.11.1.2 HDFS 3.2.0
accessors-smart-1.2.jar asm-5.0.4.jar avro-1.7.7.jar azure-keyvault-core-1.0.0.jar azure-storage-7.0.0.jar commons-beanutils-1.9.3.jar commons-cli-1.2.jar commons-codec-1.11.jar commons-collections-3.2.2.jar commons-compress-1.4.1.jar commons-configuration2-2.1.1.jar commons-io-2.5.jar commons-lang3-3.7.jar commons-logging-1.1.3.jar commons-math3-3.1.1.jar commons-net-3.6.jar commons-text-1.4.jar curator-client-2.12.0.jar curator-framework-2.12.0.jar curator-recipes-2.12.0.jar dnsjava-2.1.7.jar gson-2.2.4.jar guava-11.0.2.jar hadoop-annotations-3.2.0.jar hadoop-auth-3.2.0.jar hadoop-azure-3.2.0.jar hadoop-client-3.2.0.jar hadoop-common-3.2.0.jar hadoop-hdfs-client-3.2.0.jar hadoop-mapreduce-client-common-3.2.0.jar hadoop-mapreduce-client-core-3.2.0.jar hadoop-mapreduce-client-jobclient-3.2.0.jar hadoop-yarn-api-3.2.0.jar hadoop-yarn-client-3.2.0.jar hadoop-yarn-common-3.2.0.jar htrace-core4-4.1.0-incubating.jar httpclient-4.5.2.jar httpcore-4.4.4.jar jackson-annotations-2.9.5.jar jackson-core-2.6.0.jar jackson-core-asl-1.9.13.jar jackson-databind-2.9.5.jar jackson-jaxrs-base-2.9.5.jar jackson-jaxrs-json-provider-2.9.5.jar jackson-mapper-asl-1.9.13.jar jackson-module-jaxb-annotations-2.9.5.jar javax.servlet-api-3.1.0.jar jaxb-api-2.2.11.jar jcip-annotations-1.0-1.jar jersey-client-1.19.jar jersey-core-1.19.jar jersey-servlet-1.19.jar jetty-security-9.3.24.v20180605.jar jetty-servlet-9.3.24.v20180605.jar jetty-util-9.3.24.v20180605.jar jetty-util-ajax-9.3.24.v20180605.jar jetty-webapp-9.3.24.v20180605.jar jetty-xml-9.3.24.v20180605.jar json-smart-2.3.jar jsp-api-2.1.jar jsr305-3.0.0.jar jsr311-api-1.1.1.jar kerb-admin-1.0.1.jar kerb-client-1.0.1.jar kerb-common-1.0.1.jar kerb-core-1.0.1.jar kerb-crypto-1.0.1.jar kerb-identity-1.0.1.jar kerb-server-1.0.1.jar kerb-simplekdc-1.0.1.jar kerb-util-1.0.1.jar kerby-asn1-1.0.1.jar kerby-config-1.0.1.jar kerby-pkix-1.0.1.jar kerby-util-1.0.1.jar kerby-xdr-1.0.1.jar log4j-1.2.17.jar nimbus-jose-jwt-4.41.1.jar okhttp-2.7.5.jar okio-1.6.0.jar paranamer-2.3.jar protobuf-java-2.5.0.jar re2j-1.1.jar slf4j-api-1.7.25.jar snappy-java-1.0.5.jar stax2-api-3.1.4.jar token-provider-1.0.1.jar wildfly-openssl-1.0.4.Final.jar woodstox-core-5.0.3.jar xz-1.0.jar
親トピック: Hadoopクライアント依存性
8.2.7.11.1.3 HDFS 3.1.4
accessors-smart-1.2.jar animal-sniffer-annotations-1.17.jar asm-5.0.4.jar avro-1.7.7.jar azure-keyvault-core-1.0.0.jar azure-storage-7.0.0.jar checker-qual-2.5.2.jar commons-beanutils-1.9.4.jar commons-cli-1.2.jar commons-codec-1.11.jar commons-collections-3.2.2.jar commons-compress-1.19.jar commons-configuration2-2.1.1.jar commons-io-2.5.jar commons-lang-2.6.jar commons-lang3-3.4.jar commons-logging-1.1.3.jar commons-math3-3.1.1.jar commons-net-3.6.jar curator-client-2.13.0.jar curator-framework-2.13.0.jar curator-recipes-2.13.0.jar error_prone_annotations-2.2.0.jar failureaccess-1.0.jar gson-2.2.4.jar guava-27.0-jre.jar hadoop-annotations-3.1.4.jar hadoop-auth-3.1.4.jar hadoop-azure-3.1.4.jar hadoop-client-3.1.4.jar hadoop-common-3.1.4.jar hadoop-hdfs-client-3.1.4.jar hadoop-mapreduce-client-common-3.1.4.jar hadoop-mapreduce-client-core-3.1.4.jar hadoop-mapreduce-client-jobclient-3.1.4.jar hadoop-yarn-api-3.1.4.jar hadoop-yarn-client-3.1.4.jar hadoop-yarn-common-3.1.4.jar htrace-core4-4.1.0-incubating.jar httpclient-4.5.2.jar httpcore-4.4.4.jar j2objc-annotations-1.1.jar jackson-annotations-2.9.10.jar jackson-core-2.9.10.jar jackson-core-asl-1.9.13.jar jackson-databind-2.9.10.4.jar jackson-jaxrs-base-2.9.10.jar jackson-jaxrs-json-provider-2.9.10.jar jackson-mapper-asl-1.9.13.jar jackson-module-jaxb-annotations-2.9.10.jar javax.servlet-api-3.1.0.jar jaxb-api-2.2.11.jar jcip-annotations-1.0-1.jar jersey-client-1.19.jar jersey-core-1.19.jar jersey-servlet-1.19.jar jetty-security-9.4.20.v20190813.jar jetty-servlet-9.4.20.v20190813.jar jetty-util-9.4.20.v20190813.jar jetty-util-ajax-9.4.20.v20190813.jar jetty-webapp-9.4.20.v20190813.jar jetty-xml-9.4.20.v20190813.jar json-smart-2.3.jar jsp-api-2.1.jar jsr305-3.0.2.jar jsr311-api-1.1.1.jar kerb-admin-1.0.1.jar kerb-client-1.0.1.jar kerb-common-1.0.1.jar kerb-core-1.0.1.jar kerb-crypto-1.0.1.jar kerb-identity-1.0.1.jar kerb-server-1.0.1.jar kerb-simplekdc-1.0.1.jar kerb-util-1.0.1.jar kerby-asn1-1.0.1.jar kerby-config-1.0.1.jar kerby-pkix-1.0.1.jar kerby-util-1.0.1.jar kerby-xdr-1.0.1.jar listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar log4j-1.2.17.jar nimbus-jose-jwt-7.9.jar okhttp-2.7.5.jar okio-1.6.0.jar paranamer-2.3.jar protobuf-java-2.5.0.jar re2j-1.1.jar slf4j-api-1.7.25.jar snappy-java-1.0.5.jar stax2-api-3.1.4.jar token-provider-1.0.1.jar woodstox-core-5.0.3.jar
親トピック: Hadoopクライアント依存性
8.2.7.11.1.4 HDFS 3.0.3
accessors-smart-1.2.jar asm-5.0.4.jar avro-1.7.7.jar azure-keyvault-core-0.8.0.jar azure-storage-5.4.0.jar commons-beanutils-1.9.3.jar commons-cli-1.2.jar commons-codec-1.4.jar commons-collections-3.2.2.jar commons-compress-1.4.1.jar commons-configuration2-2.1.1.jar commons-io-2.4.jar commons-lang-2.6.jar commons-lang3-3.4.jar commons-logging-1.1.3.jar commons-math3-3.1.1.jar commons-net-3.6.jar curator-client-2.12.0.jar curator-framework-2.12.0.jar curator-recipes-2.12.0.jar gson-2.2.4.jar guava-11.0.2.jar hadoop-annotations-3.0.3.jar hadoop-auth-3.0.3.jar hadoop-azure-3.0.3.jar hadoop-client-3.0.3.jar hadoop-common-3.0.3.jar hadoop-hdfs-client-3.0.3.jar hadoop-mapreduce-client-common-3.0.3.jar hadoop-mapreduce-client-core-3.0.3.jar hadoop-mapreduce-client-jobclient-3.0.3.jar hadoop-yarn-api-3.0.3.jar hadoop-yarn-client-3.0.3.jar hadoop-yarn-common-3.0.3.jar htrace-core4-4.1.0-incubating.jar httpclient-4.5.2.jar httpcore-4.4.4.jar jackson-annotations-2.7.8.jar jackson-core-2.7.8.jar jackson-core-asl-1.9.13.jar jackson-databind-2.7.8.jar jackson-jaxrs-base-2.7.8.jar jackson-jaxrs-json-provider-2.7.8.jar jackson-mapper-asl-1.9.13.jar jackson-module-jaxb-annotations-2.7.8.jar javax.servlet-api-3.1.0.jar jaxb-api-2.2.11.jar jcip-annotations-1.0-1.jar jersey-client-1.19.jar jersey-core-1.19.jar jersey-servlet-1.19.jar jetty-security-9.3.19.v20170502.jar jetty-servlet-9.3.19.v20170502.jar jetty-util-9.3.19.v20170502.jar jetty-util-ajax-9.3.19.v20170502.jar jetty-webapp-9.3.19.v20170502.jar jetty-xml-9.3.19.v20170502.jar json-smart-2.3.jar jsp-api-2.1.jar jsr305-3.0.0.jar jsr311-api-1.1.1.jar kerb-admin-1.0.1.jar kerb-client-1.0.1.jar kerb-common-1.0.1.jar kerb-core-1.0.1.jar kerb-crypto-1.0.1.jar kerb-identity-1.0.1.jar kerb-server-1.0.1.jar kerb-simplekdc-1.0.1.jar kerb-util-1.0.1.jar kerby-asn1-1.0.1.jar kerby-config-1.0.1.jar kerby-pkix-1.0.1.jar kerby-util-1.0.1.jar kerby-xdr-1.0.1.jar log4j-1.2.17.jar nimbus-jose-jwt-4.41.1.jar okhttp-2.7.5.jar okio-1.6.0.jar paranamer-2.3.jar protobuf-java-2.5.0.jar re2j-1.1.jar slf4j-api-1.7.25.jar snappy-java-1.0.5.jar stax2-api-3.1.4.jar token-provider-1.0.1.jar woodstox-core-5.0.3.jar xz-1.0.jar
親トピック: Hadoopクライアント依存性
8.2.7.11.1.5 HDFS 2.9.2
accessors-smart-1.2.jar activation-1.1.jar apacheds-i18n-2.0.0-M15.jar apacheds-kerberos-codec-2.0.0-M15.jar api-asn1-api-1.0.0-M20.jar api-util-1.0.0-M20.jar asm-5.0.4.jar avro-1.7.7.jar azure-keyvault-core-0.8.0.jar azure-storage-5.4.0.jar commons-beanutils-1.7.0.jar commons-beanutils-core-1.8.0.jar commons-cli-1.2.jar commons-codec-1.4.jar commons-collections-3.2.2.jar commons-compress-1.4.1.jar commons-configuration-1.6.jar commons-digester-1.8.jar commons-io-2.4.jar commons-lang-2.6.jar commons-lang3-3.4.jar commons-logging-1.1.3.jar commons-math3-3.1.1.jar commons-net-3.1.jar curator-client-2.7.1.jar curator-framework-2.7.1.jar curator-recipes-2.7.1.jar ehcache-3.3.1.jar geronimo-jcache_1.0_spec-1.0-alpha-1.jar gson-2.2.4.jar guava-11.0.2.jar hadoop-annotations-2.9.2.jar hadoop-auth-2.9.2.jar hadoop-azure-2.9.2.jar hadoop-client-2.9.2.jar hadoop-common-2.9.2.jar hadoop-hdfs-client-2.9.2.jar hadoop-mapreduce-client-app-2.9.2.jar hadoop-mapreduce-client-common-2.9.2.jar hadoop-mapreduce-client-core-2.9.2.jar hadoop-mapreduce-client-jobclient-2.9.2.jar hadoop-mapreduce-client-shuffle-2.9.2.jar hadoop-yarn-api-2.9.2.jar hadoop-yarn-client-2.9.2.jar hadoop-yarn-common-2.9.2.jar hadoop-yarn-registry-2.9.2.jar hadoop-yarn-server-common-2.9.2.jar HikariCP-java7-2.4.12.jar htrace-core4-4.1.0-incubating.jar httpclient-4.5.2.jar httpcore-4.4.4.jar jackson-annotations-2.4.0.jar jackson-core-2.7.8.jar jackson-core-asl-1.9.13.jar jackson-databind-2.4.0.jar jackson-jaxrs-1.9.13.jar jackson-mapper-asl-1.9.13.jar jackson-xc-1.9.13.jar jaxb-api-2.2.2.jar jcip-annotations-1.0-1.jar jersey-client-1.9.jar jersey-core-1.9.jar jetty-sslengine-6.1.26.jar jetty-util-6.1.26.jar json-smart-2.3.jar jsp-api-2.1.jar jsr305-3.0.0.jar leveldbjni-all-1.8.jar log4j-1.2.17.jar mssql-jdbc-6.2.1.jre7.jar netty-3.7.0.Final.jar nimbus-jose-jwt-4.41.1.jar okhttp-2.7.5.jar okio-1.6.0.jar paranamer-2.3.jar protobuf-java-2.5.0.jar servlet-api-2.5.jar slf4j-api-1.7.25.jar slf4j-log4j12-1.7.25.jar snappy-java-1.0.5.jar stax2-api-3.1.4.jar stax-api-1.0-2.jar woodstox-core-5.0.3.jar xmlenc-0.52.jar xz-1.0.jar zookeeper-3.4.6.jar
親トピック: Hadoopクライアント依存性
8.2.7.11.1.6 HDFS 2.8.5
accessors-smart-1.2.jar activation-1.1.jar apacheds-i18n-2.0.0-M15.jar apacheds-kerberos-codec-2.0.0-M15.jar api-asn1-api-1.0.0-M20.jar api-util-1.0.0-M20.jar asm-5.0.4.jar avro-1.7.4.jar azure-storage-2.2.0.jar commons-beanutils-1.7.0.jar commons-beanutils-core-1.8.0.jar commons-cli-1.2.jar commons-codec-1.4.jar commons-collections-3.2.2.jar commons-compress-1.4.1.jar commons-configuration-1.6.jar commons-digester-1.8.jar commons-io-2.4.jar commons-lang-2.6.jar commons-lang3-3.3.2.jar commons-logging-1.1.3.jar commons-math3-3.1.1.jar commons-net-3.1.jar curator-client-2.7.1.jar curator-framework-2.7.1.jar curator-recipes-2.7.1.jar gson-2.2.4.jar guava-11.0.2.jar hadoop-annotations-2.8.5.jar hadoop-auth-2.8.5.jar hadoop-azure-2.8.5.jar hadoop-client-2.8.5.jar hadoop-common-2.8.5.jar hadoop-hdfs-client-2.8.5.jar hadoop-mapreduce-client-app-2.8.5.jar hadoop-mapreduce-client-common-2.8.5.jar hadoop-mapreduce-client-core-2.8.5.jar hadoop-mapreduce-client-jobclient-2.8.5.jar hadoop-mapreduce-client-shuffle-2.8.5.jar hadoop-yarn-api-2.8.5.jar hadoop-yarn-client-2.8.5.jar hadoop-yarn-common-2.8.5.jar hadoop-yarn-server-common-2.8.5.jar htrace-core4-4.0.1-incubating.jar httpclient-4.5.2.jar httpcore-4.4.4.jar jackson-core-2.2.3.jar jackson-core-asl-1.9.13.jar jackson-jaxrs-1.9.13.jar jackson-mapper-asl-1.9.13.jar jackson-xc-1.9.13.jar jaxb-api-2.2.2.jar jcip-annotations-1.0-1.jar jersey-client-1.9.jar jersey-core-1.9.jar jetty-sslengine-6.1.26.jar jetty-util-6.1.26.jar json-smart-2.3.jar jsp-api-2.1.jar jsr305-3.0.0.jar leveldbjni-all-1.8.jar log4j-1.2.17.jar netty-3.7.0.Final.jar nimbus-jose-jwt-4.41.1.jar okhttp-2.4.0.jar okio-1.4.0.jar paranamer-2.3.jar protobuf-java-2.5.0.jar servlet-api-2.5.jar slf4j-api-1.7.10.jar slf4j-log4j12-1.7.10.jar snappy-java-1.0.4.1.jar stax-api-1.0-2.jar xmlenc-0.52.jar xz-1.0.jar zookeeper-3.4.6.jar
親トピック: Hadoopクライアント依存性
8.2.7.11.1.7 HDFS 2.7.7
HDFS 2.7.7 (HDFS 2.7.0も実質的に同じです。バージョンが2.7.7となっているライブラリでは、単に2.7.0に置き換えてください)
activation-1.1.jar apacheds-i18n-2.0.0-M15.jar apacheds-kerberos-codec-2.0.0-M15.jar api-asn1-api-1.0.0-M20.jar api-util-1.0.0-M20.jar avro-1.7.4.jar azure-storage-2.0.0.jar commons-beanutils-1.7.0.jar commons-beanutils-core-1.8.0.jar commons-cli-1.2.jar commons-codec-1.4.jar commons-collections-3.2.2.jar commons-compress-1.4.1.jar commons-configuration-1.6.jar commons-digester-1.8.jar commons-httpclient-3.1.jar commons-io-2.4.jar commons-lang-2.6.jar commons-lang3-3.3.2.jar commons-logging-1.1.3.jar commons-math3-3.1.1.jar commons-net-3.1.jar curator-client-2.7.1.jar curator-framework-2.7.1.jar curator-recipes-2.7.1.jar gson-2.2.4.jar guava-11.0.2.jar hadoop-annotations-2.7.7.jar hadoop-auth-2.7.7.jar hadoop-azure-2.7.7.jar hadoop-client-2.7.7.jar hadoop-common-2.7.7.jar hadoop-hdfs-2.7.7.jar hadoop-mapreduce-client-app-2.7.7.jar hadoop-mapreduce-client-common-2.7.7.jar hadoop-mapreduce-client-core-2.7.7.jar hadoop-mapreduce-client-jobclient-2.7.7.jar hadoop-mapreduce-client-shuffle-2.7.7.jar hadoop-yarn-api-2.7.7.jar hadoop-yarn-client-2.7.7.jar hadoop-yarn-common-2.7.7.jar hadoop-yarn-server-common-2.7.7.jar htrace-core-3.1.0-incubating.jar httpclient-4.2.5.jar httpcore-4.2.4.jar jackson-core-2.2.3.jar jackson-core-asl-1.9.13.jar jackson-jaxrs-1.9.13.jar jackson-mapper-asl-1.9.13.jar jackson-xc-1.9.13.jar jaxb-api-2.2.2.jar jersey-client-1.9.jar jersey-core-1.9.jar jetty-sslengine-6.1.26.jar jetty-util-6.1.26.jar jsp-api-2.1.jar jsr305-3.0.0.jar leveldbjni-all-1.8.jar log4j-1.2.17.jar netty-3.6.2.Final.jar netty-all-4.0.23.Final.jar paranamer-2.3.jar protobuf-java-2.5.0.jar servlet-api-2.5.jar slf4j-api-1.7.10.jar slf4j-log4j12-1.7.10.jar snappy-java-1.0.4.1.jar stax-api-1.0-2.jar xercesImpl-2.9.1.jar xml-apis-1.3.04.jar xmlenc-0.52.jar xz-1.0.jar zookeeper-3.4.6.jar
親トピック: Hadoopクライアント依存性
8.2.7.11.1.8 HDFS 2.6.0
activation-1.1.jar apacheds-i18n-2.0.0-M15.jar apacheds-kerberos-codec-2.0.0-M15.jar api-asn1-api-1.0.0-M20.jar api-util-1.0.0-M20.jar avro-1.7.4.jar commons-beanutils-1.7.0.jar commons-beanutils-core-1.8.0.jar commons-cli-1.2.jar commons-codec-1.4.jar commons-collections-3.2.1.jar commons-compress-1.4.1.jar commons-configuration-1.6.jar commons-digester-1.8.jar commons-httpclient-3.1.jar commons-io-2.4.jar commons-lang-2.6.jar commons-logging-1.1.3.jar commons-math3-3.1.1.jar commons-net-3.1.jar curator-client-2.6.0.jar curator-framework-2.6.0.jar curator-recipes-2.6.0.jar gson-2.2.4.jar guava-11.0.2.jar hadoop-annotations-2.6.0.jar hadoop-auth-2.6.0.jar hadoop-client-2.6.0.jar hadoop-common-2.6.0.jar hadoop-hdfs-2.6.0.jar hadoop-mapreduce-client-app-2.6.0.jar hadoop-mapreduce-client-common-2.6.0.jar hadoop-mapreduce-client-core-2.6.0.jar hadoop-mapreduce-client-jobclient-2.6.0.jar hadoop-mapreduce-client-shuffle-2.6.0.jar hadoop-yarn-api-2.6.0.jar hadoop-yarn-client-2.6.0.jar hadoop-yarn-common-2.6.0.jar hadoop-yarn-server-common-2.6.0.jar htrace-core-3.0.4.jar httpclient-4.2.5.jar httpcore-4.2.4.jar jackson-core-asl-1.9.13.jar jackson-jaxrs-1.9.13.jar jackson-mapper-asl-1.9.13.jar jackson-xc-1.9.13.jar jaxb-api-2.2.2.jar jersey-client-1.9.jar jersey-core-1.9.jar jetty-util-6.1.26.jar jsr305-1.3.9.jar leveldbjni-all-1.8.jar log4j-1.2.17.jar netty-3.6.2.Final.jar paranamer-2.3.jar protobuf-java-2.5.0.jar servlet-api-2.5.jar slf4j-api-1.7.5.jar slf4j-log4j12-1.7.5.jar snappy-java-1.0.4.1.jar stax-api-1.0-2.jar xercesImpl-2.9.1.jar xml-apis-1.3.04.jar xmlenc-0.52.jar xz-1.0.jar zookeeper-3.4.6.jar
親トピック: Hadoopクライアント依存性
8.2.7.11.1.9 HDFS 2.5.2
HDFS 2.5.2 (HDFS 2.5.1と2.5.0も実質的に同じです。バージョンが2.5.2となっているライブラリでは、単に2.5.1または2.5.0に置き換えてください)
activation-1.1.jar apacheds-i18n-2.0.0-M15.jar apacheds-kerberos-codec-2.0.0-M15.jar api-asn1-api-1.0.0-M20.jar api-util-1.0.0-M20.jar avro-1.7.4.jar commons-beanutils-1.7.0.jar commons-beanutils-core-1.8.0.jar commons-cli-1.2.jar commons-codec-1.4.jar commons-collections-3.2.1.jar commons-compress-1.4.1.jar commons-configuration-1.6.jar commons-digester-1.8.jar commons-httpclient-3.1.jar commons-io-2.4.jar commons-lang-2.6.jar commons-logging-1.1.3.jar commons-math3-3.1.1.jar commons-net-3.1.jar guava-11.0.2.jar hadoop-annotations-2.5.2.jar adoop-auth-2.5.2.jar hadoop-client-2.5.2.jar hadoop-common-2.5.2.jar hadoop-hdfs-2.5.2.jar hadoop-mapreduce-client-app-2.5.2.jar hadoop-mapreduce-client-common-2.5.2.jar hadoop-mapreduce-client-core-2.5.2.jar hadoop-mapreduce-client-jobclient-2.5.2.jar hadoop-mapreduce-client-shuffle-2.5.2.jar hadoop-yarn-api-2.5.2.jar hadoop-yarn-client-2.5.2.jar hadoop-yarn-common-2.5.2.jar hadoop-yarn-server-common-2.5.2.jar httpclient-4.2.5.jar httpcore-4.2.4.jar jackson-core-asl-1.9.13.jar jackson-jaxrs-1.9.13.jar jackson-mapper-asl-1.9.13.jar jackson-xc-1.9.13.jar jaxb-api-2.2.2.jar jersey-client-1.9.jar jersey-core-1.9.jar jetty-util-6.1.26.jar jsr305-1.3.9.jar leveldbjni-all-1.8.jar log4j-1.2.17.jar netty-3.6.2.Final.jar paranamer-2.3.jar protobuf-java-2.5.0.jar servlet-api-2.5.jar slf4j-api-1.7.5.jar slf4j-log4j12-1.7.5.jar snappy-java-1.0.4.1.jar stax-api-1.0-2.jar xmlenc-0.52.jar xz-1.0.jar zookeeper-3.4.6.jar
親トピック: Hadoopクライアント依存性
8.2.7.11.1.10 HDFS 2.4.1
HDFS 2.4.1 (HDFS 2.4.0も実質的に同じです。バージョンが2.4.1となっているライブラリでは、単に2.4.0に置き換えてください)
activation-1.1.jar avro-1.7.4.jar commons-beanutils-1.7.0.jar commons-beanutils-core-1.8.0.jar commons-cli-1.2.jar commons-codec-1.4.jar commons-collections-3.2.1.jar commons-compress-1.4.1.jar commons-configuration-1.6.jar commons-digester-1.8.jar commons-httpclient-3.1.jar commons-io-2.4.jar commons-lang-2.6.jar commons-logging-1.1.3.jar commons-math3-3.1.1.jar commons-net-3.1.jar guava-11.0.2.jar hadoop-annotations-2.4.1.jar hadoop-auth-2.4.1.jar hadoop-client-2.4.1.jar hadoop-hdfs-2.4.1.jar hadoop-mapreduce-client-app-2.4.1.jar hadoop-mapreduce-client-common-2.4.1.jar hadoop-mapreduce-client-core-2.4.1.jar hadoop-mapreduce-client-jobclient-2.4.1.jar hadoop-mapreduce-client-shuffle-2.4.1.jar hadoop-yarn-api-2.4.1.jar hadoop-yarn-client-2.4.1.jar hadoop-yarn-common-2.4.1.jar hadoop-yarn-server-common-2.4.1.jar httpclient-4.2.5.jar httpcore-4.2.4.jar jackson-core-asl-1.8.8.jar jackson-mapper-asl-1.8.8.jar jaxb-api-2.2.2.jar jersey-client-1.9.jar jersey-core-1.9.jar jetty-util-6.1.26.jar jsr305-1.3.9.jar log4j-1.2.17.jar paranamer-2.3.jar protobuf-java-2.5.0.jar servlet-api-2.5.jar slf4j-api-1.7.5.jar slf4j-log4j12-1.7.5.jar snappy-java-1.0.4.1.jar stax-api-1.0-2.jar xmlenc-0.52.jar xz-1.0.jar zookeeper-3.4.5.jar hadoop-common-2.4.1.jar
親トピック: Hadoopクライアント依存性
8.2.7.11.1.11 HDFS 2.3.0
activation-1.1.jar avro-1.7.4.jar commons-beanutils-1.7.0.jar commons-beanutils-core-1.8.0.jar commons-cli-1.2.jar commons-codec-1.4.jar commons-collections-3.2.1.jar commons-compress-1.4.1.jar commons-configuration-1.6.jar commons-digester-1.8.jar commons-httpclient-3.1.jar commons-io-2.4.jar commons-lang-2.6.jar commons-logging-1.1.3.jar commons-math3-3.1.1.jar commons-net-3.1.jar guava-11.0.2.jar hadoop-annotations-2.3.0.jar hadoop-auth-2.3.0.jar hadoop-client-2.3.0.jar hadoop-common-2.3.0.jar hadoop-hdfs-2.3.0.jar hadoop-mapreduce-client-app-2.3.0.jar hadoop-mapreduce-client-common-2.3.0.jar hadoop-mapreduce-client-core-2.3.0.jar hadoop-mapreduce-client-jobclient-2.3.0.jar hadoop-mapreduce-client-shuffle-2.3.0.jar hadoop-yarn-api-2.3.0.jar hadoop-yarn-client-2.3.0.jar hadoop-yarn-common-2.3.0.jar hadoop-yarn-server-common-2.3.0.jar httpclient-4.2.5.jar httpcore-4.2.4.jar jackson-core-asl-1.8.8.jar jackson-mapper-asl-1.8.8.jar jaxb-api-2.2.2.jar jersey-core-1.9.jar jetty-util-6.1.26.jar jsr305-1.3.9.jar log4j-1.2.17.jar paranamer-2.3.jar protobuf-java-2.5.0.jar servlet-api-2.5.jar slf4j-api-1.7.5.jar slf4j-log4j12-1.7.5.jar snappy-java-1.0.4.1.jar stax-api-1.0-2.jar xmlenc-0.52.jar xz-1.0.jar zookeeper-3.4.5.jar
親トピック: Hadoopクライアント依存性
8.2.7.11.1.12 HDFS 2.2.0
activation-1.1.jar aopalliance-1.0.jar asm-3.1.jar avro-1.7.4.jar commons-beanutils-1.7.0.jar commons-beanutils-core-1.8.0.jar commons-cli-1.2.jar commons-codec-1.4.jar commons-collections-3.2.1.jar commons-compress-1.4.1.jar commons-configuration-1.6.jar commons-digester-1.8.jar commons-httpclient-3.1.jar commons-io-2.1.jar commons-lang-2.5.jar commons-logging-1.1.1.jar commons-math-2.1.jar commons-net-3.1.jar gmbal-api-only-3.0.0-b023.jar grizzly-framework-2.1.2.jar grizzly-http-2.1.2.jar grizzly-http-server-2.1.2.jar grizzly-http-servlet-2.1.2.jar grizzly-rcm-2.1.2.jar guava-11.0.2.jar guice-3.0.jar hadoop-annotations-2.2.0.jar hadoop-auth-2.2.0.jar hadoop-client-2.2.0.jar hadoop-common-2.2.0.jar hadoop-hdfs-2.2.0.jar hadoop-mapreduce-client-app-2.2.0.jar hadoop-mapreduce-client-common-2.2.0.jar hadoop-mapreduce-client-core-2.2.0.jar hadoop-mapreduce-client-jobclient-2.2.0.jar hadoop-mapreduce-client-shuffle-2.2.0.jar hadoop-yarn-api-2.2.0.jar hadoop-yarn-client-2.2.0.jar hadoop-yarn-common-2.2.0.jar hadoop-yarn-server-common-2.2.0.jar jackson-core-asl-1.8.8.jar jackson-jaxrs-1.8.3.jar jackson-mapper-asl-1.8.8.jar jackson-xc-1.8.3.jar javax.inject-1.jar javax.servlet-3.1.jar javax.servlet-api-3.0.1.jar jaxb-api-2.2.2.jar jaxb-impl-2.2.3-1.jar jersey-client-1.9.jar jersey-core-1.9.jar jersey-grizzly2-1.9.jar jersey-guice-1.9.jar jersey-json-1.9.jar jersey-server-1.9.jar jersey-test-framework-core-1.9.jar jersey-test-framework-grizzly2-1.9.jar jettison-1.1.jar jetty-util-6.1.26.jar jsr305-1.3.9.jar log4j-1.2.17.jar management-api-3.0.0-b012.jar paranamer-2.3.jar protobuf-java-2.5.0.jar slf4j-api-1.7.5.jar slf4j-log4j12-1.7.5.jar snappy-java-1.0.4.1.jar stax-api-1.0.1.jar xmlenc-0.52.jar xz-1.0.jar zookeeper-3.4.5.jar
親トピック: Hadoopクライアント依存性