メイン コンテンツをスキップする 補完的コンテンツへスキップ

Apache Hadoop Distributed File System (HDFS Java API) - インポート

Availability-note AWS

ブリッジの要件

このブリッジ:
  • ドライバーを<TDC_HOME>/data/download/MIMB/にダウンロードするためには、https://repo.maven.apache.org/maven2/ やその他のツールサイトへのインターネットアクセスが必要です。

ブリッジの仕様

ベンダー Apache
ツール名 Hadoop Distributed ファイルシステム (HDFS)
ツールバージョン Hadoop 2.x〜3.x
ツールのWebサイト http://hadoop.apache.org/docs/r1.2.1/hdfs_user_guide.html
サポートされている方法論 [ファイルシステム] マルチモデル、Java API経由のデータストア(NoSQL / 階層、物理データモデル)
データプロファイリング
増分収集
マルチモデル収集
モデル選択のためのリモートリポジトリーの参照

仕様
ツール: Java API経由のApache / Hadoop Distributed ファイルシステム (HDFS)バージョンHadoop 2.x〜3.x
http://hadoop.apache.org/docs/r1.2.1/hdfs_user_guide.htmlをご覧ください。
メタデータ: [ファイルシステム] マルチモデル、データストア(NoSQL / 階層、物理データモデル)
コンポーネント: ApacheHDFSバージョン11.2.0

免責事項
このインポートブリッジでは、インターネットに接続して次のサードパーティライブラリーをダウンロードする必要があります。
- オープンソースのサードパーティライブラリーのダウンロードはhttps://repo.maven.apache.org/maven2/などへ
- その他のサードパーティソフトウェア(データベース特定のJDBCドライバーなど)は該当するサイトへ

ダウンロードされたサードパーティライブラリーは、$HOME/data/download/MIMB/に格納されています。
HTTPSが失敗した場合、インポートブリッジはHTTPを試します。
- インターネットへのアクセスにプロキシを使用している場合は、JREでそのプロキシを設定する必要があります(Miscellaneousパラメーターで -j オプションをご覧ください。)。
- インポートブリッジではインターネットにフルにアクセスできない場合は、インターネットアクセスがある別のサーバーから$HOME/data/download/MIMB/ディレクトリーをコピーします。$HOME/bin/MIMB.sh (または.bat) -dというコマンドを使えば、すべてのブリッジで使用される全サードパーティライブラリーを一度にダウンロードできます。

このインポートブリッジを実行すると、ライセンス規約の責任、およびダウンロードしたサードパーティソフトウェアライブラリーによって生じる潜在的なセキュリティの脆弱性を受け入れることになります。

概要
このインポートブリッジは、Apache (Cloudera、Hortonworksなど) Hadoop分散ファイルシステム(HDFS)に実装されたデータレイクをクロールし、(データカタログの目的で)すべてのファイルからメタデータを検出(リバースエンジニアリング)します。
これには、データストラクチャー(CSVテーブル、JSON階層など)やデータ型(整数、日付、文字列など)のデータサンプリングドリブンメタデータの発見が含まれます。

インポートブリッジはApache Hadoop HDFS Javaライブラリー(JAR)を使ってHadoopファイルシステムにアクセスします。
ライブラリーJARファイルは/java/Hadoopディレクトリーにあります。
設定ファイルのディレクトリーを指定できます。他のインポートブリッジパラメーターの値はそこで指定可能なので、多くの場合はそれだけで十分です。

よくある質問
Q: ネームノードHAモードのサポートはありますか?
A: HA環境では、ネームノードではなく、常に論理ネームサービス(fs.defaultFS in core-site.xmlという設定プロパティ)を参照する必要があります。
URLパラメーターの構文はhdfs://<nameservice>/となります。
ポート番号は指定されていません。
HAはHadoop 2.0.0 (7年以上前)以降のバージョンで利用できます。

サポートされているファイル
データ定義 / スキーマ / メタデータファイルの形式(データなし):
- 通常はメインフレームからの固定幅ファイル(以下の詳細を参照)
- 通常はメインフレームからのCOBOL COPYBOOKファイル(以下の詳細を参照)
- W3C XML XSD (XMLスキーマの定義)

テキストデータのファイル形式(データサンプリングドリブンメタデータの発見):
- CSVなどの区切り付き(フラット)ファイル (以下の詳細を参照)
- Open Office Excel XML .XSLX (以下の詳細を参照)
- W3C XML (XML XSDから定義されていない)
- JSON (JavaScript Object Notation) (以下の詳細を参照)

バイナリデータファイルの形式(スキーマの定義をヘッダーまたはフッターとして含む):
- Apache Avro (以下の詳細を参照)
- Apache Parquet (以下の詳細を参照)
- Apache ORC (以下の詳細を参照)

上記形式の圧縮バージョンもサポートしています:
- ZIP (アーカイブ形式ではなく圧縮形式として)
- BZIP
- GZIP
- LZ4
- Snappy (HadoopネイティブSnappy形式ではなく、標準のSnappy形式として)

区切り付きファイル
このブリッジは区切り付きファイル(別名フラットファイル)タイプのデータファイルからメタデータを検出(リバースエンジニアリング)します。
この区切り付きファイルの検出は、ファイル拡張子(.CSVや.PSVなど)ではなくファイルコンテンツのサンプリングに基づいて行われます。

ブリッジはヘッダー行を検出し、それを使ってフィールド名を作成します。検出できない場合はジェネリックのフィールド名が作成されます。

ブリッジは、デフォルトで含まれている次のフィールドセパレーターを自動的に検出できるよう、最大100行までサンプリングします。
, (コンマ)、; (セミコロン)、: (コロン)、\t (タブ)、| (パイプ)、0x1 (Ctrl + A)、BS (\u0008)
また、自動検出の過程でさらに多くのセパレーター(二重文字など)が追加されることもあります。

サンプリング中にブリッジはファイルデータ型(DATE、NUMBER、STRINGなど)の検出も行います。

固定幅ファイル
このブリッジは固定幅ファイルタイプのデータファイルにメタデータを作成します。
このメタデータは、データファイル(customers.dat、または拡張子がない単なるcustomersなど)のサンプリングによって自動的に検出(リバースエンジニアリング)されることはありません。
したがってこのブリッジは、拡張子が.fixed_width_file_definitionである「固定幅ファイル定義」ファイルをインポートします。
たとえばcustomers.dat.fixed_width_file_definitionという形式のファイルであれば、名前にファイルカスタマーが含まれ、内部に定義済みフィールドを持つメタデータが作成されます。
これは固定幅ファイルに対するRDBMS DDLに相当します。このように長い拡張子を付けることで、このデータ定義ファイルは、その拡張子が含まれている各ファイルシステムのディレクトリー内で実際のデータファイルと共存できるようになります。

「固定幅ファイル定義」ファイル形式は次のように定義されます:
- フォーマットファイルは次のヘッダーで始まる必要があります:
カラム名、オフセット、幅、データ型、コメント
- オフセットはすべて一意で、0以上であることが必要です。
a,0
b,4
- オフセットが存在するカラムと存在しないカラムがある場合、ファイル形式は無効です。
a,0
b,
c,4
- 一部のカラムにオフセットは存在しないものの幅はある場合、アプリケーションはそのようなカラムが順序指定されているものと想定し、幅に基づいてオフセットを計算します。
a,,4 -> a,1,4
b,,25 -> b,5,25
- オフセットが存在する場合、アプリケーションは幅を無視します。これは幅がオフセットから計算されるためです。
a,1,4
b,5,25
- タイプとコメントはドキュメンテーションとしてのみ使用されます。
a,1,4,int
b,5,25,char[25],identifier

このブリッジは次のデータ型を検出します: 整数、浮動小数点、文字列、日付、ブール値

COBOL COPYBOOKファイル
このブリッジはCOBOL COPYBOOKファイル(データ定義を含む)のみインポートするため、実際のCOBOLデータファイルからメタデータを検出(リバースエンジニアリング)することはありません。
このようなCOBOL COPYBOOKファイルの検出は、ファイル拡張子(.CPYなど)ではなくファイルコンテンツのサンプリングに基づいて行われます。

このブリッジは、真にフラットでバイト位置が定義されたレコード構造が反映される[物理階層モデル]を作成します。これはDI/ETLプロセスへのスティッチングに便利です。したがって、物理モデルにはフラットレコードの定義に必要な物理エレメントがすべて存在します。これは、すべてのエレメントが含まれている1つのテーブルです。適切なブリッジパラメーターが設定されている場合はOCCURSエレメントに複数のカラムが含まれます。

現在、このブリッジはCOPY動詞をサポートしておらず、COPYステートメントが始まる行と位置で解析エラーをレポートします。CopyステートメントでCopybookをインポートするためには、含まれている配置済みセクションと共に拡張Copybookファイルを作成(COPY動詞を置換)します。大半のCOBOLコンパイラーには、COPYステートメントとREPLACEステートメントを拡張して前処理されたCopybookのみを出力するオプションがあります。

よくある質問:
Q: デフォルトの開始カラムが「6」でデフォルトの終了カラムが「72」なのはなぜですか?
A: ブリッジパーサーは1ではなく0からカラムのカウントを開始します。そのため、デフォルトでは標準の最初の6カラムを行番号用に、次のカラムをコメントインジケーター用に残し、(80のうち)最後の8カラムを追加の行コメント情報用に残します。

EXCEL (XLSX)ファイル
このブリッジは、Excel XML形式(XLSX)タイプのデータファイルからメタデータを検出(リバースエンジニアリング)します。
このExcelファイルの検出は.XLSXというファイル拡張子に基づいて行われます。

ブリッジはヘッダー行を検出し、それを使ってフィールド名を作成します。検出できない場合はジェネリックのフィールド名が作成されます。

ブリッジは1000行までサンプリングし、DATE、NUMBER、STRINGといったファイルのデータ型を検出します。

Excelファイルに複数のシートがある場合、各シートは同じシート名のファイルやテーブルと相当する項目としてインポートされます。

このブリッジは、マシンのローカルファイルシステムを使ってファイルを読み取り、文字セットエンコーディングファイルの用途を指定できるようにします。

このブリッジはExcelのCSVの側面をインポートするだけであり、ExcelのBI/分析の側面(ピボットテーブルやチャートなど)はサポートしません。

W3C XMLファイル
このW3C XMLインポートブリッジは、他のファイルインポートブリッジ(CSV、XLSX、Json、Avro、Parquetなど)と連動して、すべてのデータレイクやファイルクローラーインポートブリッジ(ファイルシステム、Amazon S3、Hadoop HDFSなど)によって使用されます。

このXMLインポートの目的は、XMLがXMLスキーマ(XSDまたはDTD)によって正式に定義されなかった場合に、そのコンテンツからモデルやスキーマをリバースエンジニアリングすることにあります。
そのようなXMLファイルは、データレイクにアップロードされたIoTデバイスでよく見られるものです。

ただしそのようなXMLファイルは、(特にXMLテキスト宣言、正しい形式で解析されたエンティティ、エンティティの文字エンコーディングに関して)W3Cに完全準拠するものと想定されています。
詳細はW3C標準を参照してください:
https://www.w3.org/TR/xml/#sec-TextDecl

警告: その他すべての必要に対しては、次のようなXMLベースの専用のインポートブリッジを使用する必要があります:
- その他の標準W3C XMLインポートブリッジ(DTD、XSD、WSDL、OWL/RDLなど)
- ツール固有のXMLインポートブリッジ(Erwin Data Modeler XML、Informatica PowerCenter XMLなど)

JSONファイル
このブリッジは、Java APIを使ってJSONファイルからメタデータをインポートします。
このブリッジはストリーミングパーサーを使ってJSONファイル全体をロードします。そのため、大型のリモートのJSONファイルの場合は時間がかかることがありますが、サイズの制限はありません。
このブリッジはメタデータ(JSON階層ストラクチャー)を抽出し、次の標準JSONデータ型を検出します。
定義元: https://www.json.org/
- 文字列 {"stringSample" : "some text", "stringDateSample" : "Thu Apr 06 2017 09:41:51 GMT+0300 (FLE Standard Time)", "expStringSample" : "2.99792458e8"}
- 数字 {"expNumberSample": 2.99792458E8, "numberSample": 3, "floatSample": 3.141592653589793}
- 配列 {"arraySample": [1,2,3]}
- True {"booleanSample": true}
- False {"booleanSample": false}
- Null {"nullSample": null}

また、次の実装固有のデータ型がサポートされています。
MongoDB拡張機能:
- 識別子 {"_id": {"$oid": "50a9c951300493f64fbffdb6"}}
- 日付 {"dateExample" : { "$date" : "2014-01-01T05:00:00.000Z"}}
- POSIX日付 {"isoDateExample" : { "$date" : 1491461103897 }}
- タイムスタンプ {"timestampExample" : { "$timestamp" : { "t" : 1412180887, "i" : 1 } }}
- 数字 {"numberLongExample": {"$numberLong": "7494814965"}}

CouchDB拡張機能:
- 識別子 {"_id":"someId","_rev":"1232343467"}

APACHE AVRO FILES
このブリッジはJava APIを使ってAvroファイルからメタデータをインポートします。
このブリッジはデータドリブンメタデータの発見は行いませんが、Avroファイルのヘッダー(上部)でスキーマ定義を読み取ります。

このブリッジは、次の標準的なAvroデータ型を検出します。
https://avro.apache.org/docs/current/spec.html#schema_primitive

null - 値なし
boolean - バイナリ値
int - 32ビット符号付き整数
long - 64ビット符号付き整数
float - 単精度(32ビット) IEEE 754浮動小数点数
double - 倍精度(64ビット) IEEE 754浮動小数点数
bytes - 8ビット符号なしバイト型のシーケンス
string - Unicode文字のシーケンス

APACHE PARQUETファイル
このブリッジは、Java APIを使ってParquetファイルからメタデータをインポートします。
このブリッジはデータドリブンメタデータの発見は行いませんが、Parquetファイルのフッター(下部)でスキーマ定義を読み取ります。そのためこのブリッジは、最後にスキーマ定義に到達できるようParquetファイル全体をロードする必要があります。

Parquetファイルが圧縮されていない場合、ブリッジがデータ部分をフッターまで自動的にスキップするので、ファイルサイズの制限はありません(ただし大型のParquetファイルでは時間がかかることがあります)。ただし、Parquetファイルが圧縮されている場合、ブリッジはまずファイル全体をダウンロードして解凍する必要があります。従ってそのような場合はデフォルトで10MBのファイルサイズ制限がありますが(それ以上のファイルは無視されます)、この制限値はMiscellaneousパラメーターで増やすことができます。

このブリッジは、次の標準的なParquetデータ型を検出します。
定義元: https://parquet.apache.org/documentation/latest

BOOLEAN: 1ビットブール値
INT32: 32ビット符号付き整数
INT64: 64ビット符号付き整数
INT96: 96ビット符号付き整数
FLOAT: IEEE 32ビット浮動小数点値
DOUBLE: IEEE 64ビット浮動小数点値
BYTE_ARRAY: 任意的に長いバイト配列

APACHE ORCファイル
このブリッジは、Java APIを使ってORCファイルからメタデータをインポートします。
このブリッジはデータドリブンメタデータの発見は行いませんが、ORCファイルのヘッダー(上部)でスキーマ定義を読み取ります。

このブリッジは、次の標準のORCデータ型を検出します。
定義元: https://orc.apache.org/docs/types.html

整数: boolean (1ビット)、tinyint (8ビット)、smallint (16ビット)、int (32ビット)、bigint (64ビット)
浮動小数点: float、double
文字列型: string、char、varchar
バイナリblob: binary
日時: timestamp、ローカルタイムゾーン付きtimestamp、zone
複合型: struct、list、map、union

詳細
詳しい例については、各パラメーターのツールチップをご覧ください。


ブリッジパラメーター

パラメーター名 説明 タイプ デフォルト 範囲
設定ファイルディレクトリー 使用する環境のcore-site.xmlとhdfs-site.xmlが含まれているディレクトリーです。

これはオプションのパラメーターで、持っている設定ファイルを再利用できるため、他のパラメーターを使ってHadoop接続やKerberosセキュリティの詳細を手動で指定せずに済みます。

手動で詳細を指定する場合は、このパラメーター値を空にしてください。ディレクトリーの値を指定してもそのディレクトリーに設定ファイルがない場合、インポートブリッジはエラーで終了します。

設定ファイルで利用できるパラメーターは、インポートブリッジパラメーターを使って上書きできます。
たとえばfs.default.nameファイルのパラメーターは、NameNode URIというインポートブリッジパラメーターで上書きできます。
DIRECTORY      
URL Hadoop NameNodeのURI (hdfs://host::8020など)です。
WebHDFS RESTインターフェイスからNameNodeにアクセスする場合は、'webhdfs'プロトコル
(webhdfs://host::8020など)を指定します。
STRING   [web]hdfs://[server host]:[port]  
ルートディレクトリー メタデータファイルが含まれているディレクトリーを入力するか、閲覧ツールを使用してディレクトリーを指定します。
このインポートブリッジが提供する参照の深さは最大5レベルです。
REPOSITORY_MODEL      
包含フィルター ルートディレクトリーを基準とする包含フォルダーとファイルフィルターのパターン。
パターンは、拡張Unix globの式構文(大文字と小文字を区別)を使用します。
以下に一般的な例を示します。
*.* - ルートレベルのあらゆるファイルを含める
*.csv - ルートレベルのcsvファイルのみを含める
**.csv - あらゆるレベルのcsvファイルのみを含める
*.{csv,gz} - ルートレベルのcsvまたはgzファイルのみを含める
dir\*.csv - ”dir”フォルダー内のcsvファイルのみを含める
dir\**.csv - あらゆるレベルの"dir"フォルダーの下にあるcsvファイルのみを含める
dir\**.* - あらゆるレベルの"dir"フォルダーの下にあるあらゆるファイルを含める
f.csv - ルートレベルの下にあるf.csvのみを含める
**\f.csv - あらゆるレベルのf.csvのみを含める
**dir\** - あらゆるレベルの"dir"フォルダーの下にあるすべてのファイルを含める
**dir1\dir2\** - あらゆるレベルの"dir1"フォルダーの下にあるあらゆる[dir2]フォルダーの下のすべてのファイルを含める
STRING      
フィルターを除外する ルートディレクトリーを基準とする除外フォルダーとファイルフィルターのパターン。
パターンでは包含フィルターと同じ構文が使用されます。構文の詳細と例はその包含フィルターを参照してください。
除外フィルターと一致するフィルターはスキップされます。
包含フィルターと除外フィルターの両方が空の場合は、ルートディレクトリーの下にあるフォルダーとファイルがすべて含まれます。
包含フィルターが空で、除外フィルターがフォルダーではなく、ルートディレクトリーの下にある(除外フィルターと一致するものを除く)ファイルが含まれている場合。
STRING      
パーティションディレクトリー ファイルベースのパーティションディレクトリーのパス。
ブリッジはパーティションを自動的に検出しようとします。パーティションに多くのファイルがある場合、時間がかかることがあります。このパラメーターで指定することで、一部または全部のパーティションの検出プロセスを短縮できます。

フィルターUIを使えば、簡単にパターンをビルドできます。
サンプルファイルへのフルパスを入力します。
パーティショニングされたデータセットと機能部分をマーク: データセットとそのパーティション機能を表すパスの部分を強調表示します。また、パス項目でパーティション機能の名前を直接編集することもできます。
UIは大半のパターンタイプを自動的に検出し、ニーズに合った適切なパターンを生成します。

ルートディレクトリーか絶対パスを基準に、パーティションディレクトリーのパスを指定します。

ピリオド( . )を使い、ルートディレクトリーをパーティショニングされたディレクトリーとして指定します。
複数のパスをコンマ( , )またはセミコロン( ; )で区切ります。

ETLツールは、パターンに基づくパーティションディレクトリーに対して読み書きできます。以下に例をいくつか紹介します。

アプリケーション別のパーティション
ETLは、Fフォルダーの下にあるファイルを関数式(例: 'getDate@[yyyyMMdd]')で名付けられたサブフォルダーに分割して書き込むことができます。結果は、FというフォルダーにgetDate@[yyyyMMdd]データセットとして表現されます。
次のように指定して、マッチングデータセットを生成します。
F/[getDate@[yyyyMMdd]]

パーティショニング済みディレクトリーの内部構造
[データセット名]と{パーティショニング済みカラム名}のパターンを使って、パーティショニング済みディレクトリーの内部構造に関する追加情報を指定します。
フォルダーとファイル構造の例:
zone1/po/us/2018/00001.csv
以下を指定してマッチングデータセットを生成します:
zone1/[po]/{region}/{year}/*.csv
または、パーティションカラム名が重要でない場合(位置によってスティッチされます):
zone1/[po]/{*}/{*}/*.csv

パーティショニングされたディレクトリーの内部構造のカスタムアプリケーションパーティション
フォルダーとファイル構造の例:
zone2/ACCT/10190103/bad/00001.csv
zone2/ACCT/10190103/good/00001.parquet
zone2/CUST/10190103/bad/00001.csv
zone2/CUST/10190103/good/00001.parquet
以下を指定してマッチングデータセットを生成します:
zone2/*/{date}/[bad]/*.csv, zone2/*/{date}/[good]/*.parquet

ファイルベースのパーティション
フォルダーとファイル構造の例:
zone3/mlcs.dataset1_data_document_20190219_132315.125.csv
zone3/mlcs.dataset1_data_document_20190313_232416.225.csv
zone3/mlcs.dataset1_data_document_20190414_532317.535.csv
zone3/mlcs.dataset2_data_document_20190211_131215.125.xml
zone2/mlcs.dataset2_data_document_20190314_130316.225.xml
zone3/mlcs.dataset2_data_document_20190416_132317.535.xml
以下を指定してマッチングデータセットを生成します:
zone3/mlcs.[dataset1]_data_document_{date}.csv,zone3/mlcs.[dataset2]_data_document_{date}.xml
STRING   */*/[*]/*.*  
[Hadoop properties] (Hadoopプロパティ) カスタムのHadoopおよびHDFSの設定プロパティです。

インポートブリッジは、デフォルト設定を使ってHadoopディストリビューションにアクセスします。カスタム設定を使用する必要がある場合は、そのパラメーター値をここで指定します。

Hadoopやその関連システム(HDFS、Hiveなど)で必要なプロパティの詳細は、使用しているHadoopディストリビューションのドキュメンテーションか、http://hadoop.apache.org/docsに掲載されているApacheのHadoopドキュメンテーションをご覧になって、必要なバージョンのドキュメンテーションを選択してください。実例として、一部のプロパティへのリンクを以下に示します:
通常、HDFS関連のプロパティは ディストリビューションのhdfs-default.xmlファイル内(
http://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-hdfs/hdfs-default.xmlなど)にあります。
STRING      
keytabファイル Kerberosキータブファイルへの完全パス。このファイルは、Kerberosが有効なHadoopシステムにログインするために必要です。Kerberosのプリンシパルと暗号化されたキーのペアが含まれています。プリンシパルのユーザーパラメーターを使ってプリンシパルを入力する必要があります。

インポートブリッジを実行するユーザーは必ずしもプリンシパルが指定するユーザーである必要はありませんが、使用されるKeytabファイルを読み取る権利は必要です。たとえばuserAというユーザー名でインポートブリッジを実行し、使用するプリンシパルがuserBの場合は、使用するKeytabファイルの読み取り権限をuserAが持っていることを確認してください。
STRING      
プリンシパル ユーザープリンシパル名。
詳細は、Keytab fileパラメーターのドキュメンテーションをご覧ください。
STRING      
Username (ユーザー名) HDFSのユーザー認証名。プロキシ名と呼ばれることもあります。
このパラメーターはKerberos認証にのみ使用されます。
インポートブリッジを実行するユーザーには影響しません。

ユーザー名は
'<名前>@<Realm>'という形式にしてください。
STRING      
HDFS暗号化キープロバイダー(KMS) KMSプロキシのロケーションです。たとえば、kms://http@localhost:16000/kmsとなります。
HDFS暗号化キープロバイダーはクラスターでHDFS透過暗号化が有効になっている場合のみ指定します。それ以外の場合は空のままにしておきます。
HDFS透過暗号化とそのKMSプロキシに関する詳細は、HDFSの透過暗号化(https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/TransparentEncryption.html)をご覧ください。
STRING      
Miscellaneous はじめに
ダッシュで始まるMiscellaneousオプションを指定し、必要であればその後にパラメーターを追加できます。例:
- connection.cast MyDatabase1="MICROSOFT SQL SERVER"
該当する場合は複数回使用できるオプションもあります。例:
- connection.rename NewConnection1=OldConnection1 -connection.rename NewConnection2=OldConnection2;
オプションのリストは長い文字列になるため、${MODEL_BRIDGE_HOME}\data\MIMB\parametersにあり拡張子が.txtであるファイルからロードすることもできます。その場合、オプションはすべて、このパラメーターの唯一の値としてそのファイル内で定義されることが必要です。例:
ETL/Miscellaneous.txt

JAVA環境のオプション
-java.memory <Javaメモリの最大サイズ> (以前の-m)

64ビットJREではデフォルトで1G、またはconf/conf.properties内の設定に従います。例:
-java.memory 8G
-java.memory 8000M

-java.parameters <Javaランタイム環境コマンドラインオプション> (以前の-j)


-java.parameters -Dname=value -Xms1G
のように、-java.parametersの後ろのテキストはすべてそのままJREに渡されるため、このオプションはMiscellaneousパラメーター内の最後に来る必要があります。インターネットへのアクセスにプロキシを使用している場合は、必要なサードパーティのソフトウェアライブラリーをダウンロードできるよう、次のオプションを設定する必要があります(このオプションはhttps://repo.maven.apache.org/maven2/にアクセスするため、そして例外的にいくつかの他のツールサイトにアクセスするために不可欠です)。
注: プロキシは、(会社の)外部トラフィックをHTTPSで暗号化しながら、HTTPでプロキシにアクセスできる内部トラフィックを信頼しているものがほとんどです。この場合、HTTPSリクエストはHTTPでプロキシに到達し、プロキシはそれをHTTPSで暗号化します。
-java.parameters -java.parameters -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=3128 -Dhttp.proxyUser=user -Dhttp.proxyPassword=pass

モデルインポートのオプション
-model.name <モデル名>

モデル名をオーバーライドをオーバーライドします。例:
-model.name "My Model Name"

-prescript <スクリプト名>

このオプションによって、ブリッジの実行前にスクリプトを実行できるようになります。
スクリプトはbinディレクトリー(またはconf/conf.propertiesのM_SCRIPT_PATHで指定)にあり、拡張子が.batか.shであることが必要です。
スクリプトのパスに親ディレクトリーの記号( .. )を含めることはできません。
スクリプトは、成功した場合は終了コードである0を、失敗した場合は別の値を返します。
例:
-prescript "script.bat arg1 arg2"

-postscript <スクリプト名>

このオプションによって、ブリッジが正しく実行された後にスクリプトを実行できるようになります。
スクリプトはbinディレクトリー(またはconf/conf.propertiesのM_SCRIPT_PATHで指定)にあり、拡張子が.batか.shであることが必要です。
スクリプトのパスに親ディレクトリーの記号( .. )を含めることはできません。
スクリプトは、成功した場合は終了コードである0を、失敗した場合は別の値を返します。
例:
-postscript "script.bat arg1 arg2"

-cache.clear

インポート前にキャッシュをクリアするため、増分収集せずにフルインポートを実行します。

モデルが変更されず、-cache.clearパラメーターが使われていない場合(増分収集)、新しいバージョンは作成されません。
モデルが変更されず、-cache.clearパラメーターが設定されている場合(増分ではなくフルソースインポート)、新しいバージョンが作成されます。

-backup <directory>

さらなるトラブルシューティングのため、入力メタデータを保存できるようにします。指定された<directory>は空であることが必要です。

-restore <ディレクトリー>

復元するバックアップ<ディレクトリー>を指定します。

データ接続オプション
使用するソースとターゲットのデータストアを参照するよう、通常はETL/DIツールとBIツールのインポートブリッジによってデータ接続が生成されます。これらのデータ接続はメタデータ管理ツールによって実際のデータストア(データベースやファイルシステムなど)への接続(メタデータスティッチング)に使われ、完全なエンドツーエンドのデータフローの来歴とインパクト分析が行われます。各データ接続の名前はインポートモデルごとに一意です。DI/BIデザインツールで使われているデータ接続名を可能な限り使用します。そうでない場合は、データベース/スキーマ名、ファイルシステムのパス、Uniform Resource Identifier (URI)など、短くても意味のある接続名が生成されます。次のオプションを使えば、接続を操作できます。これらのオプションによって、レガシーオプションである-c、-cd、-csが置き換えられます。

-connection.cast ConnectionName=ConnectionType

SQL解析のためにジェネリックデータベース接続(ODBCやJDBCなど)を正確なデータベースタイプ(ORACLEなど)にキャストします。例:
-connection.cast "My Database"="MICROSOFT SQL SERVER"
サポートされているデータストア接続タイプのリストは次のとおりです。
ACCESS
APACHE CASSANDRA
DB2/UDB
DENODO
GOOGLE BIGQUERY
HIVE
MYSQL
NETEZZA
ORACLE
POSTGRESQL
PRESTO
REDSHIFT
SALESFORCE
SAP HANA
SNOWFLAKE
MICROSOFT SQL AZURE
MICROSOFT SQL SERVER
SYBASE SQL SERVER
SYBASE AS ENTERPRISE
TERADATA
VECTORWISE
HP VERTICA

-connection.rename OldConnection=NewConnection

既存の接続を新しい名前に変更します。例:
-connection.rename OldConnectionName=NewConnectionName
既存の複数のデータベース接続の名前を変更し、新しい1つのデータベース接続に統合できます。例:
-connection.rename MySchema1=MyDatabase -connection.rename MySchema2=MyDatabase

-connection.split oldConnection.Schema1=newConnection

データベース接続を1つまたは複数のデータベース接続に分割します。
1つのデータベース接続をスキーマごとの1つの接続に分割できます。例:
-connection.split MyDatabase
すべてのデータベース接続をスキーマごとの1つの接続に分割できます。例:
-connection.split *
データベースにスキーマ名を追加することで、データベース接続を明示的に分割し、新しいデータベース接続を作成できます。例:
-connection.split MyDatabase.schema1=MySchema1

-connection.map SourcePath=DestinationPath

ソースパスをデスティネーションパスにマッピングします。これは、異なるパスが同じオブジェクト(ディレクトリーまたはファイル)をポイントしている場合にファイルシステム接続にとって便利です。
Hadoopでは、あるプロセスがHDFSの完全パスで指定されたCSVファイルに書き込む一方、別のプロセスが、デフォルトのファイル名と拡張子を持つ相対パスで指定されている同じファイルによって実装されたHiveテーブル(外部)から読み取ります。例:
-connection.map /user1/folder=hdfs://host:8020/users/user1/folder/file.csv
Linuxでは、/users/johnや/users/paulといった複数のシンボリックリンクによって、/dataのような特定のディレクトリー(またはファイル)が参照されます。例:
-connection.map /data=/users/John -connection.map /data=/users/paul
Windowsでは、M:やN:といった複数のネットワークドライブによって、C:\dataのような特定のディレクトリーが参照されます。例:
-connection.map C:\data=M:\ -connection.map C:\data=N:\

-connection.casesensitive ConnectionName...

検出されたデータストアのタイプがこの設定(Microsoft SQL ServerやMySqlなど)をサポートしている場合は、指定された接続内のオブジェクト識別子に対し、大文字と小文字を区別しないデフォルトのマッチングルールがオーバーライドされます。例:
-connection.casesensitive "My Database"

-connection.caseinsensitive ConnectionName...

検出されたデータストアのタイプがこの設定(Microsoft SQL ServerやMySqlなど)をサポートしている場合は、指定された接続内のオブジェクト識別子に対し、大文字と小文字を区別するデフォルトのマッチングルールがオーバーライドされます。例:
-connection.caseinsensitive "My Database"

-connection.level AggregationLevel

外部接続の集計レベルを指定します。例: -connection.level catalog
サポートされている値のリスト:
server
catalog
schema (デフォルト)

ファイルシステムのオプション
-file.encoding <エンコーディング値>

テキストファイルを読み取るためにエンコーディング値を使用します(区切りおよび固定幅など)。
サポートされている言語と実際のエンコーディング値(行末の括弧内)は次のとおりです。例:
-file.encoding shift_jis

中東欧言語(ISO-8859-2)
中東欧言語(Windows-1250)
繁体字中国語(Big5)
簡体字中国語(GB18030)
簡体字中国語(GB2312)
キリル言語(ISO-8859-5)
キリル言語(Windows-1251)
DOS (IBM-850)
ギリシャ語(ISO-8859-7)
ギリシャ語(Windows-1253)
ヘブライ語(ISO-8859-8)
ヘブライ語(Windows-1255)
日本語(Shift_JIS)
韓国語(KS_C_5601-1987)
タイ語(TIS620)
タイ語(Windows-874)
トルコ語(ISO-8859-9)
トルコ語(Windows-1254)
UTF 8 (UTF-8)
UTF 16 (UTF-16)
西ヨーロッパ言語(ISO-8859-1)
西ヨーロッパ言語(ISO-8859-15)
西ヨーロッパ言語(Windows-1252)
ロケールエンコーディング
エンコード変換なし

-processing.max.threads <数字> (以前の-tps)

最大スレッド数(デフォルトは1)までの並列処理を可能にします。例:
-processing.max.threads 10

-processing.max.time <time> (以前の-tl)

すべてのファイルを処理する時間制限を設定します。時間は秒、分、時で指定できます。例:
-processing.max.time 3600s
-processing.max.time 60m
-processing.max.time 1h

-processing.max.files <数字> (以前の-fl)

処理するファイルの最大数を設定します(デフォルトでは制限はありません)。例:
-processing.max.files 100

ただし、パーティションディレクトリーに含まれていることもある大量のファイルを扱うため、このオプションを使用する場合は注意が必要です。代わりに、パーティションディレクトリーパラメータを指定してパーティションディレクトリーを適切に宣言する必要があります。その仕様は、処理する類似ファイルの数を制限する以外に、データレイクの適切なモデルを大量のファイルではなくパーティションとして生成します。

-partitions.latest (以前の-fresh.partition.models)

パーティショニング済みディレクトリーパラメーターで定義したパーティションの処理中に、最後に変更されたファイルのみ使用します。

なお、-cache.clearオプションを指定した場合、このオプションはオーバーライドされません。このオプションはさらに、メタデータのインポートだけでなく、サンプリングとプロファイリングにも影響します。

-partitions.disable.detection (以前の-disable.partitions.autodetection)

自動パーティション検出を無効にします([パーティションディレクトリー]オプションが空の場合)

-cache.reuse (以前の-skip.download)

依存項目のダウンロードを無効にすることにより、キャッシュに既にダウンロードされているものを再利用します。

-hadoop.key <Hadoopの設定オプション> (以前の-hadoop)

Hadoopライブラリーのキー値を設定します(デフォルトではなし)。例:
-hadoop.key key1=val1;key2=val2

-path.substitute <パス> <新しいパス> (以前の-subst)

ルートパスを新しいパスに置き換えます。例:
-path.substitute K: C:\test

-detailed.log

処理済みのファイルのパスをすべてデバッグログに出力します。

区切り付きファイルのオプション
-delimited.disable.header.parsing (以前の-delimited.no_header)

区切り付きファイルのヘッダー解析を無効にします(ヘッダーはデフォルトで解析され、フィールド名が検出されます)。
区切り付きファイルにヘッダーがない場合、またはヘッダーのインポートを無効にする場合(フィールド名が機密である場合)、このオプションを使用します。

-delimited.ignore.top.rows <数字> (以前の-delimited.top_rows_skip)

区切り付きファイルの先頭にある行数をスキップします(デフォルトでは0)。
区切り付きファイルの先頭に数行の説明が含まれている場合にこのオプションを使用します。
-delimited.ignore.top.rows 1

-delimited.add.separators <comma separated separators> (以前の-delimited.extra_separators)

区切り付きファイルを解析する時に使用可能な区切りを追加します。
検出される区切り文字には、デフォルトで , (コンマ)、; (セミコロン)、: (コロン)、\t (タブ)、| (パイプ)、0x1 (Ctrl + A)、BS (\u0008)、: (コロン)が含まれています。
追加の区切り文字は複数文字になることもあります。例:
-delimited.add.separators ~,||,|~

PARQUETファイルのオプション
-parquet.max.compressed.size <値> (以前の-parquet.compressed.max.size)

圧縮サイズが指定値を上回るParquetアーカイブファイルを無視します(デフォルト値は10,000,000バイト)。例:
-parquet.compressed.max.size=10000000
STRING      

 

ブリッジのマッピング

マッピング情報は利用できません

このページは役に立ちましたか?

このページまたはコンテンツにタイポ、ステップの省略、技術的エラーなどの問題が見つかった場合はお知らせください。