Precisely Connect(旧Syncsort DMExpress)を使ってみよう

BI技術者の雑記
今回は、Precisely Connect(旧Syncsort DMExpress、以下、DMExpress)で売上データを集計して、廃止した商品のデータを除外するETLを作ってみました。
DMExpressの特長は下記の2つになります。
1. 超高速性能なETL処理が実現できる
2. GUIでノンプログラミングによる高い開発生産性を実現できる
※「Syncsort DMExpress」は、2022年3月24日、製品名が「Precisely Connect」に変更されました。
本ブログの説明画像は「Syncsort DMExpress」呼称時の製品画面であるため、文章でも「DMExpress」と記載します。
1.タスクとジョブの概要
DMExpressでは、タスクとジョブを用いて処理を作成していきます。
タスクとは、集計/コピー/結合/マージ/ソートのいずれか1つの処理で、タスクエディタで作成します。
ジョブとは、1つ以上のDMExpressタスクやその他の処理のフローを定義する処理単位で、ジョブエディタで作成します。
2.タスク新規作成
ジョブエディタを開いて、新規タスクボタンをクリックします。
タスクを保存してからジョブエディタの描画エリアに配置します。
3.集計処理の作成
3-1 入力定義
ジョブエディタに配置した[SUM.dxt]をダブルクリックし、タスクエディタを開きます。
[集計]ボタンをクリックします。
入力ファイルを定義します。
ツリー表示の[入力]を右クリックし、[ファイルを追加]を選択します。
参照ファイルを設定してから[レイアウトのマップ]ボタンをクリックします。
フィールド名とデータ形式を変更してOKボタンをクリックします。
3-2 集計定義
集計キーと集計処理を定義します。
ツリー表示の[集計]をダブルクリックします。
集計キーは[日付]と[商品コード]を設定し、集計項目は[販売数量]と[売上]を設定してOKボタンをクリックします。
3-3 出力定義
出力定義を行います。
ツリー表示の[出力]を右クリックし、[ファイルを追加]を選択します。
出力ファイル名を定義してOKボタンをクリックします。
次に出力レコードのレイアウト変更を行います。
ツリー表示の[出力]の下の出力ファイル「売上集計.txt」を右クリックし、[リフォーマットを追加]を選択します。
[フィールドと値]からすべての項目を選択し、緑色矢印ボタンをクリックして、[リフォーマットされたレコードのレイアウト]に表示させます。
これで集計タスクの作成が完了しました。
タスクを保存してジョブに戻ります。
4.結合処理の作成
廃止した商品を除外するため、売上集計ファイルと廃止商品コードファイルを結合します。
前と同じく新規タスクを作成して、ジョブエディタの描画エリアに配置します。
4-1 入力定義
ジョブエディタに配置した[除外.dxt]をダブルクリックし、タスクエディタを開きます。
[結合]ボタンをクリックします。
左側に売上集計ファイルを設定して、右側に廃止した商品コード一覧を設定します。
4-2 結合定義
売上集計ファイルと廃止商品コードファイルを結合するための結合キーを定義します。
ツリー表示の[結合]をダブルクリックします。
[結合]ダイアログにて、左側に[商品コード]、右側に[商品名コード]を選択して、緑の矢印をクリックし、紐付けを行います。
また、[出力オプション]にて[左側の不一致レコードを出力]にチェックを入れます。
最後に[OK]ボタンをクリックしてダイアログを閉じます。
4-3 出力定義
集計処理と同じく出力ファイルを設定します。
※出力ファイルにフィールド名を表示するため、「フィールド名を含むヘッダレコードを作成」にチェックに入れます。
次に出力レコードのレイアウト変更を行います。
ツリー表示の[出力]の下の出力ファイル「売上集計_廃止商品除外済み.txt」を右クリックし、[リフォーマットを追加]を選択します。
[フィールドと値]から売上集計の項目を選択し、緑色矢印ボタンをクリックして、[リフォーマットされたレコードのレイアウト]に表示させます。
これで結合タスクの作成が完了しました。
タスクを保存してジョブに戻ります。
タスク間のファイル名(売上集計.txt)が同一のため、自動的にマッピングが行われます。
左側の[名前を付けてジョブを保存]をクリックし、ジョブを保存します。
5.実行
ジョブで[実行]ボタンをクリックします。
実行後に表示される下記の画面にて、処理が成功したことを確認します。
1,000万件のデータが14秒で処理されました。
出力ファイル
ExcelのVLOOKUP関数で確認したところ、廃止商品のデータが除外されていることが確認できました。
6.おわりに
今回はDMExpressの基本操作の説明を交えながら、データの集計・除外を行う処理をご紹介しました。
また機会があれば他の機能も紹介していきたいと思います。