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

Fivetran - インポート

Availability-note AWS

ブリッジの仕様

ベンダー Fivetran
ツール名 Fivetran
ツールバージョン 現行
ツールの Web サイト https://www.fivetran.com/ (英語のみ)
サポートされている方法論 [データ統合] REST、API経由のマルチモデル、データストア(物理データモデル)
データプロファイリング
増分収集
マルチモデル収集
モデル選択のためのリモート リポジトリーの参照

仕様
ツール: REST API経由のFivetran / Fivetranの現行バージョン
https://www.fivetran.com/をご覧ください。
メタデータ: [データ統合] マルチモデル、データストア(物理データモデル)
コンポーネント: Fivetranバージョン11.2.0

概要
Fivetranはクラウドベースのデータ統合(DI/ELT)プラットフォームで、さまざまなSaaSアプリケーション、データベース、その他のソースからデータを抽出し、一元管理型のクラウドデータウェアハウスやデータレイクにロードするプロセスを自動化します。使いやすさ、最小限の設定、スキーマ管理の自動化のために最適化されています。Fivetranは主にELTパイプラインの抽出とロードのステップに焦点を当てており、変換処理は通常、dbtなどのツールによってダウンストリームで処理されます。
https://www.fivetran.com/

FivetranはFivetran Platformリポジトリーにメタデータを格納します。コネクターの操作、ソースからデスティネーションへのマッピング、スキーマの変更に関する情報もここにログで記録します。この来歴データメタデータは、Fivetran Platformコネクターを使い、JDBCアクセスが可能なデータベース(Microsoft SQL Serverなど)にロードする必要があります。
https://fivetran.com/docs/logs/fivetran-platform

このブリッジは、ジェネリックJDBC接続を介してこのデータベースに接続し、関連するメタデータテーブルをクエリーし、結果を解析してソースシステム、デスティネーションスキーマ、テーブルレベルおよびカラムレベルによるマッピング、ジョブ実行履歴に関する情報を抽出します。

来歴の精度が最大になるよう、Fivetranのリポジトリーデータベースには、最新の有効なジョブ実行ログとコネクターのメタデータが含まれていること必要です。ユーザーは、リポジトリーが適切に維持管理されており、現在のFivetranジョブ活動を反映していることを確認する必要があります。

要件
下の[権限]セクションをご覧ください。

権限
どのインポートブリッジも読み取り専用でメタデータのみ抽出することが保証されています。したがって、このインポートブリッジのユーザーは、データの読み書きを必要とするクラシックユーザーよりもはるかに必要な権限が少ないです。

ただしこのインポートブリッジの場合、JDBCドライバーのメタデータ部分に実装されていないビューやストアドプロシージャーのSQLなどの高度なメタデータにアクセスするうえでシステムテーブルへの(読み取り専用の)アクセス権を持つユーザーが必要となるので、十分な権限を持つ適切なユーザーを取得できるようデータベース管理者(DBA)を関与させる必要があります。

データベースタイプとバージョンに応じて異なるため、最小限必要な権限のセットについて特定の指示はありません。このインポートブリッジが正常に動作することを確認するためには、まずFULL Sys Adminタイプのユーザー名(すべての権限)、つまりデータベースの作成と保守に使うものと同じタイプのユーザー名でこのインポートブリッジを使用し、インポートする必要があります。このインポートブリッジが特定のデータベースに対して正常に機能するようになれば、データベース管理者は、より少ない権限であっても正しい結果を出せるユーザーを作成できます。

制限事項
現在判明している一般的な制限事項は、https://metaintegration.com/Products/MIMB/Help/#!Documents/mimbknownlimitations.htmlをご覧ください。

- 大文字と小文字の区別:
メタデータを読み書きする際、ブリッジは、元のシステムでカラム名が大文字と小文字を区別するか否かという情報を保持しません。この詳細はFivetranのメタデータに保持されず、信頼性を持って推測することもできません。
システム間での接続スティッチングが正確となるよう、-connection.casesensitiveというMiscellaneousオプションを使って、大文字と小文字の区別に関する処理方法を明示的に定義してください。

- 変換:
ブリッジはFivetran内や外部ツールで実行される変換処理をサポートせず、抽出とロード(EL)のステップのみをキャプチャーします。変換メタデータをインポートする場合は、対応するブリッジ(dbt Coreインポートブリッジまたはdbt Cloudインポートブリッジ)を使用してください。

サポート
トラブルシューティングパッケージを次の項目と共に提供してください:
- デバッグログ(UIまたはconf/conf.propertiesでMIR_LOG_LEVEL=6を使って設定可能)
- 利用できる場合はメタデータバックアップ(技術的理由によりこの共通オプションが実装されていないブリッジがあるものの、Miscellaneousパラメーターで-backupオプションを使って設定可能)


ブリッジパラメーター

パラメーター名 説明 タイプ デフォルト スコープ
ドライバークラス この値はデータベースとドライバーに依存します。例:

'IBM DB2'
com.ibm.db2.jcc.DB2Driver

'Microsoft SQL Server'
com.microsoft.sqlserver.jdbc.SQLServerDriver

'Oracle 7'
oracle.jdbc.driver.OracleDriver

'Oracle 8 Thin'
oracle.jdbc.driver.OracleDriver
STRING   com.microsoft.sqlserver.jdbc.SQLServerDriver 必須
URL このURLは、データベースサーバーに接続するためにJDBCによって使用されるURL/完全修飾JDBC接続文字列です。例: jdbc:URLSubProtocol:URLSubName

この値はデータベースとドライバーに依存します。例:

'IBM DB2 8.1 Net'
jdbc:db2://COMPUTER_NAME_OR_IP:PORT/DATABASE_NAME

'IBM DB2 8.1 App'
jdbc:db2:DATABASE_NAME

'Microsoft SQL Server'
jdbc:sqlserver://COMPUTER_NAME_OR_IP:PORT

'Oracle 7 Thin'
jdbc:oracle:thin:@COMPUTER_NAME_OR_IP:PORT:ORACLE_SID

'Oracle 8 Thin'
jdbc:oracle:thin:@(description=(address=(host=DATABASE_HOST)(protocol=tcp)(port=1521))(connect_data=(sid=SID)))

'PostgreSQL'
jdbc:postgresql://COMPUTER_NAME_OR_IP:PORT/DATABASE_NAME
STRING   jdbc:[jdbc-prefix]:COMPUTER_NAME_OR_IP:PORT/DATABASE_NAME 必須
ユーザー Fivetran Platformのログ、またはリポジトリーデータベースサーバーに対するJDBC接続用のユーザー名。

権限
他のブリッジと同様、このインポートブリッジも読み取り専用でメタデータのみ抽出することが保証されています。
STRING     必須
パスワード Fivetran Platformのログ、またはリポジトリーデータベースサーバーに対するJDBC接続用のパスワード。 パスワード     必須
データベース Fivetran Platformのログ、またはFivetran Platformリポジトリーのデータベースインスタンス名。 REPOSITORY_SUBSET     必須
スキーマ Fivetran Platformのログ、またはFivetran Platformリポジトリーのデータベーススキーマ名。 REPOSITORY_SUBSET   fivetran_log 必須
[Connections] (接続) インポートするFivetran接続のリスト。
リストが空の場合は、利用できる接続がすべてインポートされます。
リストには、接続IDを1つ(またはセミコロンで区切って複数)含めることができます(例: connect_first; connect_second)。
REPOSITORY_SUBSET      
デスティネーション Fivetranの接続先のリスト。指定されたいずれかのデスティネーションに該当する接続のみインポートされます。
リストが空の場合は、利用できる接続がすべてインポートされます。このパラメーターは、ConnectionsパラメーターとAND演算で統合されています。
リストには、デスティネーションを1つ(またはセミコロンで区切って複数)含めることができます(例: destination_first; destination_second)。
REPOSITORY_SUBSET      
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 (デフォルト)

ETLのオプション
これらのオプションは、以下の目的ですべてのETL/DIツールとスクリプティングインポートブリッジで利用できます:
- SQL解析をすべて処理する
- デザインモデルとランタイム変数からランタイムモデルをビルドする
- ランタイムサマリー来歴を計算する

-etl.summary.add.ultimate (以前の-ppus)

最終的なランタイム来歴サマリーを追加します(非常に大きなモデルが生成される可能性があります)。

-etl.summary.only.ultimate (以前の-ppsp)

最終的なランタイム来歴サマリーのみ生成します(非常に大きなモデルが生成される可能性があります)。

-etl.connections.add.internal.design (以前の-pppd)

内部ETLデザインデータコネクター(ETL変換に必要)を追加します。

-etl.connections.remove.input (以前の-ri)

生成されるモデルのサイズ縮小のため、入力(ソース)データ接続をすべて削除します。

-etl.transformations.enable.xml

このオプションによって、DI/ETLインポートブリッジ(Informatica PowerCenter、Informatica Developer、Microsoft SSIS、IBM DataStage、Talend Data Integration など)でのXML変換の解析とサポートが有効になります。
Informatica の場合、そのような XML 変換は次の PowerCenter の機能に相当します。
https://docs.informatica.com/data-integration/powercenter/10-5/xml-guide/midstream-xml-transformations.html
https://docs.informatica.com/data-integration/powercenter/10-5/xml-guide/xml-source-qualifier-transformation.html
ただし、このオプションはインポートの速度を著しく低下させる可能性がありますのでご注意ください。

-cache.clear

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

 

ブリッジのマッピング

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

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

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