- Qlik Sense
- Qlik Cloud
- 運用者
- 開発者
2022.12.14
Qlik Application Automation活用術#S3へCSVを分割配信する
「Qlik Application Automation」とは、GUIで簡単にアプリケーション同士の連携処理を作成できるQlik Sense SaaSの新機能です。今回は、この「Qlik Application Automation」を用いて「Amazon S3へCSVファイルを分割配信する」方法についてご紹介します。
目次
※本記事は2022年11月時点の[SaaS]で作成しています。
Qlik Application Automationとは
Qlik Application Automationは、キャンバス上でアイコンをドラッグ&ドロップするというノーコードの簡単な操作で、Qlik Sense SaaSを含む様々なクラウドアプリ同士の連携処理を作成できます。
CSV分割配信の処理概要
今回は例として、「支社ごとに売上明細を毎日CSVファイルで配信する」という処理を実装します。(テーブルを取得する際の制限が
10万セル
のため、データ量がオーバーする場合は、このように分割して配信する方法をご検討ください。)
CSV分割配信の設定方法
1) CSVに出力するデータを「テーブル」チャートとして作成する
※グループ(Ex:支社)ごとに分けて作成する必要はなく、テーブルを1つ作成します。
2) Qlik Application Automationで配信の設定をする
1. ハブ画面に戻り、画面右上の[新規追加]から[新しい自動化]を選択します。
2. 検索欄に「S3」と入力後、Enterキーを押下すると、S3に関するテンプレートが表示されます。
今回は「Store a straight table as a .csv file on Amazon S3」を選択します。
3. いくつかのアイコンを追加していきます。
- ▼「上書き保存するためファイルを削除する」処理の追加
- ファイル名を固定してCSVファイルを出力する(例:毎日「[支社名].csv」というファイル名で上書き保存する)場合、2回目以降はすでに同じ名前のファイルが存在していることで、処理がエラーとなってしまいます。そうならないために、対象のフォルダに出力されたファイルをリスト化し、事前に削除する処理を追加します。
ファイル名を「[日付 ※変数].csv」などで出力し、日々ファイル名が自動的に変わる場合は、この処理の追加は必要ありません。
①画面左の検索欄に「S3」と入力し、「CONNECTORS IN USE」欄に表示された「Amazon S3」を
選択します。
②「List Files」を「Start」アイコンの下にドラッグ&ドロップします。
③「Delete File」を「List Files on Amazon S3」のループ内にドラッグ&ドロップします。
- ▼「CSVファイルを対象の項目で分割する」処理の追加
- ①画面左の「CONNECTORS IN USE」欄に表示された「Qlik Cloud Services」を選択します。
②「List Values Of Field」アイコンを「List Files on Amazon S3」のループ後
(「Create File on Amazon S3」の前)にドラッグ&ドロップします。
③「Create File on Amazon S3」アイコンを「List Files on Amazon S3」のループの中にドラッグ&ド
ロップで移動させます。
- ▼「分割するCSVファイルに含むデータを、対象のものに絞りこむ」処理の追加
- ①画面左の「Select Field Value」アイコンを「Create File on Amazon S3」の後にドラッグ&ドロップします。
4. 以下それぞれのパラメータに設定をしていきます。
- ■ Start
- ・Run Mode:自動化の実行タイミングの設定をします。
※完成までは「Manual」のままにしておき、手動実行することをおすすめします。
- ■ List Values on Amazon S3
- ▽[Connection]タブ
・対象のAmazon S3への接続設定を行います。
▽[Inputs]タブ
・Connector:Amazon S3
・Path:対象のパスを指定します。
例)S3の対象バケット直下:./
S3のバケット配下の「test」フォルダ内:./test/
・Region:バケットのあるリージョンを選択します。
例)Asia Pacific(Tokyo)
・Bucket:「do lookup」から、対象のバケットを選択します。
- ■ Delete File on Amazon S3
- ▽[Inputs]タブ
・Connector:Amazon S3
・Path:以下の通り入力します。
{$.listFiles.item.path}
※「listFiles」の「F」が大文字である必要があります。
・Region:バケットのあるリージョンを選択します。
例)Asia Pacific(Tokyo)
・Bucket:「do lookup」から、対象のバケットを選択します。
- ■ List Values Of Field
- ▽[Inputs]タブ
・App Id:テーブルチャートを作成したアプリを選択します。
※「do lookup」から、アプリ名で検索可能です。
・Field Name:CSVファイルを分割したい項目(例:支社)を選択します。
※「do lookup」から、検索可能です。
- ■ Create File on Amazon S3
- ▽[Inputs]タブ
・Connector:Amazon S3
・Path:出力するフォルダとファイル名を入力します。
例)[出力フォルダ名]/List Values Of Field>Item>QText.csv
入力手順
- [出力したいS3のフォルダ名(例:test)] とその直後に
「/(半角スラッシュ)」を入力します。
- 入力欄の右端にある「v」を選択します。
-「Item in List Values Of Field」を選択します。
-「qText」を選択します。
-入力欄の一番後ろにカーソルをあて「.csv」と入力します。
・Region:バケットのあるリージョンを選択します。
例)Asia Pacific(Tokyo)
・Bucket:「do lookup」から、対象のバケットを選択します。
- ■ Select Field Value
- ▽[Inputs]タブ
・App Id:テーブルチャートを作成したアプリを選択します。
※「do lookup」から、アプリ名で検索可能です。
・Field Name:CSVファイルを分割したい項目(例:支社)を選択します。
※「do lookup」から、検索可能です。
・Field Value:List Values Of Field>Item>QText
※入力手順は上記「Create File on Amazon S3」をご確認ください。
- ■Get Straight Table Data
- ▽[Inputs]タブ
・App Id:テーブルチャートを作成したアプリを選択します。
※「do lookup」から、アプリ名で検索可能です。
・Sheet Id:テーブルチャートを作成したシートを選択します。
※「do lookup」から、検索可能です。
・Object Id:対象のテーブルチャートを選択します。
※テーブルチャートにタイトルをつけると検索しやすくなります。
- ■Write Line To File on Amazon S3
- ▽[Inputs]タブ
・File:Create File on Amazon S3
・Data:Get Straight Table Data>Item
入力手順
- 入力欄の右端にある「v」を選択します。
- 「Item in Get Straight Table Data」を選択します。
-「item」を選択します。
・Mode:CSV
・Delimiter:,
・File Encoding:UTF-8
- ■Save And Close File on Amazon S3
- ▽[Inputs]タブ
・File:Create File on Amazon S3
5. 設定が完了したら、画面上部の「Run」で処理を実行します。
6. 処理が成功すると以下のような画面が表示されます。
7. 「Close」でポップアップを閉じます。
8. 必要に応じて「Start」アイコンで処理のスケジュールを設定します。
出力イメージ
Amazon S3に出力されるイメージは以下のとおりです。
※各CSVは支社ごとの情報に絞り込まれた状態になっています。
■Amazon S3 画面
注意事項
Qlik Application Automation利用時の注意事項は以下のとおりです。
・1つの自動化につき、同時刻に1回のみ実行可能
・並列処理はできない(SparkやHadoopではない)
・最大実行時間は1時間
※実行時間が長い処理の場合は分割する
・自動化の最大同時実行数は10(ライセンスによって増加)
・テナント全体で1分間に最大300回のAPIコールが可能
さいごに
Qlik Application Automationを活用し、「Qlik Application Automation」を用いて「Amazon S3へCSVファイルを分割配信する」方法についてご紹介しました。
Qlik Application Automation を活用すると、この他にも様々な処理の自動化が可能です。
ぜひ、ご希望の処理を「Qlik Application Automation」で実現してみてください!
▼その他のQlik Application Automationに関する記事はコチラ↓
関連している記事
- Qlik Cloud
- Qlik Sense
- 利用者
- 可視化・分析
2025.04.24
今回はスライドに文字や図形を追加する方法や、作成したストーリーの共有・出力方法ついてお伝えします!
- Qlik Cloud
- Qlik Sense
- 開発者
- 利用者
- 可視化・分析
2025.04.24
Qlik Senseでは、カスタム オブジェクトとしてRadar chart(レーダーチャート)が用意されています。Radar chartは商品別に複数の評価項目の評価値を確認したい場合などに便利です!この記事では、Radar chartの作成方法を紹介します。
- Qlik Cloud
- Qlik Sense
- 利用者
- 可視化・分析
2025.04.17
ストーリーテリングの概要とスナップショットの操作についてお伝えします。