Qlik Trainingブログ

  • Qlik Cloud
  • Qlik Sense
  • QlikView
  • 開発者
  • データロード
2023.12.28

データ読み込みの新たな可能性を解き放て!~Binary文を活用したデータのロード~

別のQlik Senseアプリケーション(以下アプリと記載)から、データのみを簡単にロードできたらいいのにな~、と思ったことはありませんか?そんな時は、Binary文を使ってみましょう!
Binary文は、データの読み込みを効率化できるステートメントで、別のアプリからデータを簡単に読み込むことができます。ここでは、Binary文の活用例、基本的な使い方から注意点まで、詳しくご紹介します。

目次

Binary文とは

Qlik Sense(またはQlikView)のデータロードで、ロード スクリプトの一部として使われるものです。
これを使うことで、qvfファイル形式(またはqvwファイル形式)などの、別のアプリからデータを取り込むことができます。既存のQlik Sense(またはQlikView)アプリのデータモデルを、そのまま別のアプリにコピーできるということです。アプリのデータを直接読み込むため、データソースからのリロードや、リロード時の再計算はいりません。大量のデータや複雑なデータモデルを使用する場合でも、ロード時間を削減することができます。
データの再利用性を高めるための、便利なステートメントですね!

Binary文の活用例

一例をご紹介します。

・大規模なデータモデルの再利用:
 大規模なデータモデルを持つアプリが既に存在し、そのデータモデルを新たなアプリでも利用したい場合、
 Binary文を使用すると効率的にデータを取り込むことができます。

・データモデルのバージョン管理:
 データモデルの変更履歴を管理するために、Binary文を使用することもできます。
 既存のデータモデルをBinary文を使って新たなアプリに取り込むことで、その時点のデータモデルのみを、
 別のアプリという形で保持しておくことができます。

・データモデルの検証:
 既存のデータモデルに少し変更を加えたいなど、検証利用も非常に有効です。
 新たなアプリで検証を行うため、本番環境に影響を与えることなく、安全にデータモデルのみを取り込み、
 改善を試みることができます。

Binary文の使い方

Qlik Sense SaaS

※「2023年11月時点のSaaS」で作成しています。

<設定方法>
1) 新規または既存のアプリで、[データ ロード エディタ]を開きます。
2) 一番はじめの行に「Binary [アプリID];」のようにデータを取り込みたいアプリIDを指定して、
  データをロードします。
  ※アプリIDは、Qlik Sense SaaSのホーム画面で、対象のアプリの[…(他のアクション)]-[詳細]
   から確認できます。

記述例) Binary [8e2d9f95-3161-44de-9b02-e59bbe42410b];

これで、指定したアプリIDのデータを取得することができます。とても簡単ですね!

Qlik Sense Enterprise on Windows

※「Qlik Sense November 2023」で確認しています。

オンプレ版では、アプリIDを指定してQlik Sense Hub上のアプリを直接読み込むことができません。
Qlik Sense Hub上のアプリのデータを取得したいときは、一度qvfファイル(.qvfファイル)として
エクスポートする必要があります。

<アプリのエクスポート手順>
1) [Qlik Management Console(QMC)]を開き、[Apps]タブをクリックします。

2) 一覧から該当アプリを選択し、[More actions]-[Export]をクリックします。
  ※取り込みたいアプリを「testapp.qvf」とします。

3) [Export app with data]と[Export app to a local drive]のチェックがオンになって
  いることを確認し、[Export]をクリックします。
  ※チェックボックスがない場合、チェックは不要です。

<設定方法>
1) 新規または既存のアプリで、[データ ロード エディタ]を開きます。
2) [接続の新規作成]より、データを取り込みたいアプリフォルダへのデータ接続を作成します。
  ※ここでは、取り込みたいアプリをQlik Senseサーバーマシンのローカルフォルダ
   「C:\work\KKA\testapp.qvf」に配置し、[フォルダ]を選択するとします。

3) [パス]に取り込みたいアプリフォルダを指定し、任意の名前(※ここでは「my_binary_lib」とします)を
  設定します。[作成]をクリックして接続定義を作成します。

4) 一番はじめの行に「Binary [lib://・・・/qvfファイル名.qvf];」のように指定して、 データをロード
  します。※データを取り込みたいアプリの接続定義とファイル名を指定します。

記述例) Binary [lib://my_binary_lib (qssup05_administrator)/testapp.qvf];

QlikView

※「QlikView May 2023」で確認しています。

<設定方法>
1) 新規または既存のアプリで、[ロード スクリプトの編集]画面を開きます。
2) 一番はじめの行にマウスカーソルをあわせ、[QlikView ドキュメント...]を選択します。

3) [QlikView ドキュメントを開く]画面が表示されますので、取り込みたいアプリを選択して[開く]を
  クリックします。

4) Binary文の記述が自動で追加されますので、[リロード]をクリックしてデータをロードします。

記述例) Binary [c:\work\kka\testapp.qvw];

QlikViewでは、自動でスクリプトを生成してくれます。こちらもとても簡単ですね!

Binary文の注意点

1.スクリプトの最初に記述する
 [データ ロード エディタ]のスクリプトで、最初のステートメントとして記述する必要があります。
 それ以降に記述すると無視されます。

2.アプリ内で1度しか使えない
 スクリプトの中で、Binary文は1回のみ使用できます。

3.qvfファイル(またはqvwファイル)のみ読み込みできる
 qvfファイル形式(またはqvwファイル形式)のアプリからのみ、データを取り込むことができます。
 他の形式のデータソースから値を取り込む場合は、Binary文は使用できません。
 ※Qlik Sense SaaSでは、SaaS上にあるアプリから直接データを取り込むことができます。
  アプリをqvfファイルとして一旦エクスポートする必要はありません。

4.データのみ読み込み可能
 チャート、シート、レイアウト情報、変数など、データ以外の情報はロードすることができません。
 (Qlik Senseのストーリー、ビジュアライゼーション、マスターアイテムなどもロードできません。) 
 Binary文は、データのみ読み込みが可能です。

5.データモデルをそのまま読み込む
 Binary文は、もとのアプリのデータをそのままの状態で取り込みます。一部のデータを取り込むなど、
 条件を設定してデータを取り込むことはできません。※特定のデータのみを取り込みたいときは、
 Binary文のあとにDrop table文やDrop field文で不要なテーブルや項目を削除してください。

さいごに

いかがでしたでしょうか。Qlik SenseやQlikViewのBinary文は、データの取り込み作業を効率化できる強力なアイテムで、使い方もとても簡単です。データの読み込みだけでなく検証利用やデータ管理に使えるなど、活用の方法もさまざまです。Qlik SenseやQlikViewのさらなる活用に、ぜひお役立てください!

関連している記事

  • Qlik Cloud
  • Qlik Sense
  • 運用者
2024.04.24

Qlik Cloud 日本リージョンへの移行方法(qlik-cli利用時の注意点)

先日、本ブログにて、日本リージョンへテナントを移行する方法の全体像をご紹介しました。今回は、コマンドラインのqlik-cliを用いたテナント移行時の注意点と、コマンドやスクリプトの記述例をご紹介します。

  • Qlik Sense
  • Qlik Cloud
  • 開発者
  • 運用者
2024.04.17

Qlik Application Automation活用術:Microsoft Teamsにメッセージを配信する

Qlik Sense SaaSを使用していて、メジャーの結果と事前に設定した閾値を比較して、閾値を超えたら通知を飛ばせたら良いな、と考えたことはありませんか?本記事では、Qlik Sense SaaSの「Qlik Application Automation」でMicrosoft Teamsにメッセージを配信する方法を紹介します。

  • Qlik Cloud
  • Qlik Sense
  • 運用者
2024.04.01

Qlik Cloud 日本リージョンへの移行方法

2024 年 3 月 26 日に QlikTech 社より Qlik Cloud の日本リージョン開設の ニュースリリースが発表されました。本ブログではすでに Qlik Cloud(Qlik Sense Enterprise SaaS) をご利用中のユーザー様に向けて、日本リージョンへテナントを移行する方法をご紹介します。

ページの先頭へ戻る