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

COBOL Copybookファイル - インポート

Availability-note AWS

情報メモ 注: このファイル形式は、ファイルシステム((ファイル区切り、固定幅、Excel、XML、JSON、Avro、Parquet、ORC、COBOL Copybook)、Apache Hadoop Distributed ファイル System (HDFS Java API)、Amazon Web Services (AWS) S3 Storage Bridgesのいずれかでインポートする必要があります。

ブリッジの仕様

ベンダー ISO
ツール名 COBOL Copybookファイル
ツールバージョン 1985
ツールのWebサイト http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=51416
サポートされている方法論 [ファイル System] Data Store (Physical Data Model, Logical Data Model) via Cobol Copybook ファイル
データプロファイリング
増分収集
マルチモデル収集
モデル選択のためのリモートリポジトリーの参照

仕様
ツール: Cobol Copybookファイル経由のISO / COBOL Copybook ファイルバージョン1985
http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=51416をご覧ください。
メタデータ: [ファイルシステム] データストア(物理データモデル、論理データモデル)
コンポーネント: CobolCopybookバージョン11.2.0

概要
このブリッジは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カラムを追加の行コメント情報用に残します。

制限事項
現在判明している一般的な制限事項は、MIMB Known Limitationsか、バンドルされているDocumentation/ReadMe/MIMBKnownLimitations.htmlをご覧ください。

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

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

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


ブリッジパラメーター

パラメーター名 説明 タイプ デフォルト 範囲
ファイル ブリッジでCOBOL CopybookファイルまたはCOBOLファイル記述(CFD)からメタデータを読み取ります。 ファイル
*.txt
*.cfd
  必須
[Encoding] (エンコーディング) COBOLファイルのテキストのエンコーディングを指定します。 ENUMERATED
中東欧言語(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)
ロケールエンコーディング
エンコード変換なし
utf-8  
モデルのインポート モデルのインポート方法を指定します。

[物理階層モデル]
Copybookを階層ファイルとして表現します。これがデフォルトです。

[論理データモデル]
Copybookをデータモデリングとして表現します。
ENUMERATED
物理階層モデル
論理データモデル
物理階層モデル  
冗長モードでCOBOL Copybookパーサーを実行 解析で問題が発生した場合は、COBOLコピーブックパーサーを冗長モードで実行してください。この設定は、インポートブリッジから報告される警告やエラーの原因を特定する場合に役立ちます。 BOOLEAN
False
True
False  
複数の出現レコードを展開 複数回出現する持つレコードを複数の属性に展開します。

たとえば
30 OCCURS-TEST PIC X OCCURS 3 TIMES.

というレコードは、次のような名前の属性のリストとして表現されます:
OCCURS-TEST(1)
OCCURS-TEST(2)
OCCURS-TEST(3)

出現中の出現:
30 OCCURS-GROUP OCCURS 3 TIMES.
40 OCCURS-TEST PIC X OCCURS 2 TIMES.

は次のように表現されます:
OCCURS-TEST(1,1)
OCCURS-TEST(1,2)
OCCURS-TEST(2,1)
OCCURS-TEST(2,2)
OCCURS-TEST(3,1)
OCCURS-TEST(3,2)
BOOLEAN
False
True
False  
フィラーのインポート フィラーフィールド名をインポートするかどうかを指定します。

[True]
フィラーフィールド名がインポートされます。

[False]
フィラーフィールド名は無視されます。これがデフォルト値になります。
BOOLEAN
False
True
False  
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>は空であることが必要です。

このオプションの主な用途は、データストアインポートブリッジ(特にJDBCベースのデータベースインポートブリッジ)です。

なお、このオプションは次のようなブリッジでは動作しません。
- ファイルベースのインポートブリッジ(入力ファイルで代用可能なため)
- DI/BIリポジトリーインポートブリッジ(ツールのリポジトリーネイティブバックアップで代用可能なため)
- APIベース(COMベースなど)による一部のインポートブリッジ(技術的な理由のため)

データ接続オプション
使用するソースとターゲットのデータストアを参照するよう、通常は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 (デフォルト)

COBOL COPYBOOKのオプション
-s <カラム番号>

パーサーのCOBOL Copybookファイルのカラムインデックスを開始します。例:
-s 6

-e <カラム番号>

パーサーのCOBOL Copybookファイルのカラムインデックスを終了します。例:
-e 72
STRING      

 

ブリッジのマッピング

Meta Integration Repository (MIR)
メタモデル
(OMG CWM標準に基づく)
"COBOL Copybook ファイル"
メタモデル
CobolCopybook
マッピングのコメント
     
属性 レコード サブレコードを持たないレコード。
名前 名前  
PhysicalName 名前  
位置   レコードのオフセットと長さに基づいて計算
BaseType Picture 画像から計算済み。DerivedTypeをご覧ください。
クラス レコード サブレコードを持つレコード。
名前 名前  
PhysicalName 名前  
ClassDiagram   レコードはすべて自動的にデフォルトの図に含まれています。
DerivedType Picture  
長さ Picture  
名前 Picture  
スケール Picture  
DesignPackage レコード 階層を表示するためにサブレコードを持つレコードのために作成されます。
名前 名前  
ファイルDirectory COBOL Copybookファイル  
名前 [ファイル name] (ファイル名)  
一般化 レコード サブレコードと親レコードを持つレコードのために作成されます。
名前 名前  
GeneralizationRole レコード  
StoreModel COBOL Copybookファイル  
名前 [ファイル name] (ファイル名)  

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

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