CData Sync Amazon S3 Destination が相対パスによるレプリケーションをサポートしました

by 杉本和也 | 2021年07月20日

f:id:sugimomoto:20210720094630p:plain

こんにちは。CData Software Japan リードエンジニアの杉本です。

この前このBlogで紹介したCData Sync の Amazon S3 Destination 連携ですが、今回新しい機能が追加されたので紹介したいと思います。

www.cdatablog.jp

通常Amazon S3 Destination は「Bucket」の接続プロパティに指定したフォルダに対して、CSVファイルを吐き出します。

吐き出すパターンとしては、以下のようにテーブル名でフォルダを作成して、その中にCSVを吐き出すパターンか

f:id:sugimomoto:20210720094322p:plain

f:id:sugimomoto:20210720094329p:plain

対象のBucketに直接テーブル名のCSVを吐き出すパターンの2種類です。

f:id:sugimomoto:20210720094336p:plain

ただ、ユースケースとしては各テーブルを任意のフォルダに連携させたい、ということもあるでしょう。

通常であれば、Amazon S3 Destinationの接続を複数作成する方法も考えられますが、CDataSyncがConnection数ベースのライセンス形態であるため、あまり数多くのConnectionを作ることができない場合もあると思います。

また、管理も少し面倒ですよね。

f:id:sugimomoto:20210720094342p:plain

そこで今回は新しく追加された機能「相対パスによるレプリケーションのサポート」でそういったケースに対応する方法を紹介したいと思います。

シナリオ

例えば、下記2種類「SalesforceSyncFolder_1」「SalesforceSyncFolder_2」のフォルダーにそれぞれCSVを出力したい、という想定で試してみましょう。

  • s3://catajwrk/CDataSyncTest/SalesforceSyncFolder_1

  • s3://catajwrk/CDataSyncTest/SalesforceSyncFolder_2

f:id:sugimomoto:20210720094348p:plain

使い方

まず以前の記事で紹介したように、Amazon S3 Destination の接続を構成します。

Bucketはフォルダ分けをするルートになる「s3://cdatajwrk/CDataSyncTest」を指定します。

f:id:sugimomoto:20210720094356p:plain

また、今回はわかりやすいようにInsert Mode を「SingleFile」にしました。これで指定フォルダにCSVファイルが直接出力されます。

f:id:sugimomoto:20210720094403p:plain

接続設定が完了したら、ジョブを作成しましょう。

前回と同様にSalesforceからデータを取得します。対象テーブルは「Account」にしました。

f:id:sugimomoto:20210720094411p:plain

テーブルを登録したら、テーブル名をクリックして、「タスク設定」を開きます。

「一般」タブにある「新規テーブルを作成」をクリックして、

f:id:sugimomoto:20210720094417p:plain

以下のように出力したいフォルダパスを追加します。この際、接続設定で指定した「Bucket」の相対パスを指定しますので、「s3://cdatajwrk/CDataSyncTest」以降のフォルダになります。

「SalesforceSyncFolder_1/Account」

f:id:sugimomoto:20210720094423p:plain

同じように「SalesforceSyncFolder_2/Account」のテーブルも追加しました。

f:id:sugimomoto:20210720094430p:plain

それでは実行してみましょう。対象のテーブルを選択して「実行」をクリックします。

f:id:sugimomoto:20210720094436p:plain

以下のように処理が正常に完了しました。

f:id:sugimomoto:20210720094442p:plain

Amazon S3の対象フォルダを見てみると、それぞれのフォルダにCSVが出力されていることが確認できますね!

f:id:sugimomoto:20210720094449p:plain

f:id:sugimomoto:20210720094455p:plain

おわりに

このように単一の接続設定でも、Bucketのフォルダーを振り分けてデータの出力ができるようになっています。

予め最上位のBucketだけ指定しておけば、あとはジョブの中でかなり柔軟に出力することができますね。

その他何か気になる点があれば、お気軽にテクニカルサポートまで問い合わせてみてください!

https://www.cdata.com/jp/support/submit.aspx

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。