Qlik Sense Cloud のElasticsearch からアプリを作成

加藤龍彦
加藤龍彦
デジタルマーケティング
CData API Server を使用してElasticsearch のOData API を作成し、Qlik Sense Cloud のリアルタイムElasticsearch のデータからアプリを構築します。



Qlik Sense Cloud を使用すると、データのビジュアライゼーションを作成および共有して、新しい方法で情報を操作できます。CData API Server は、Elasticsearch の仮想データベースを作成し、Elasticsearch のOData API(Qlik Sense Cloud でネイティブに使用可能)を生成するために使用できます。Qlik Sense Cloud をCData API Server とペアリングすることで、すべてのSaaS およびビッグデータとNoSQL ソースへの接続が可能になります。データを移行したり統合したりする必要はありません。ほかのREST サービスと同様に、Qlik Sense Cloud からAPI Server に接続するだけで、Elasticsearch のデータに瞬時にライブアクセスできます。

この記事では、二つの接続について説明します。

  1. API Server からElasticsearch への接続。
  2. Qlik Sense Cloud からAPI Server に接続してモデルを作成し、シンプルなダッシュボードを構築。

Elasticsearch データ連携について

CData を使用すれば、Elasticsearch のライブデータへのアクセスと統合がこれまでになく簡単になります。お客様は CData の接続機能を以下の目的で利用しています:

  • SQL エンドポイントと REST エンドポイントの両方にアクセスでき、接続を最適化し、Elasticsearch データの読み書きに関してより多くのオプションを提供します。
  • v2.2 以降およびオープンソース Elasticsearch サブスクリプションを含む、ほぼすべての Elasticsearch インスタンスに接続できます。
  • SCORE() 関数を明示的に要求することなく、常にクエリ結果の関連性スコアを受け取ることができます。これにより、サードパーティツールからのアクセスが簡素化され、クエリ結果のテキスト関連性のランキングを簡単に確認できます。
  • 複数のインデックスを検索でき、クライアントマシンではなく Elasticsearch がクエリと結果の管理・処理を担当します。

ユーザーは、Crystal Reports、Power BI、Excel などの分析ツールと Elasticsearch データを統合し、当社のツールを活用して、Elasticsearch を含むすべてのデータソースへの単一のフェデレートアクセスレイヤーを実現しています。

CData の Elasticsearch ソリューションの詳細については、ナレッジベース記事をご覧ください:CData Elasticsearch Driver Features & Differentiators


はじめに


API Server の設定

以下のリンクからAPI Server の無償トライアルをスタートしたら、セキュアなElasticsearch OData サービスを作成していきましょう。

Elasticsearch への接続

Qlik Cloud からElasticsearch のデータを操作するには、まずElasticsearch への接続を作成・設定します。

  1. API Server にログインして、「Connections」をクリック、さらに「接続を追加」をクリックします。 接続を追加
  2. 「接続を追加」をクリックして、データソースがAPI Server に事前にインストールされている場合は、一覧から「Elasticsearch」を選択します。
  3. 事前にインストールされていない場合は、コネクタを追加していきます。コネクタ追加の手順は以下の記事にまとめてありますので、ご確認ください。
    CData コネクタの追加方法はこちら >>
  4. それでは、Elasticsearch への接続設定を行っていきましょう! 接続設定
  5. Elasticsearch 接続プロパティの取得・設定方法

    接続するには、Server およびPort 接続プロパティを設定します。 認証には、User とPassword プロパティ、PKI (public key infrastructure)、またはその両方を設定します。 PKI を使用するには、SSLClientCert、SSLClientCertType、SSLClientCertSubject、およびSSLClientCertPassword プロパティを設定します。

    CData 製品は、認証とTLS/SSL 暗号化にX-Pack Security を使用しています。TLS/SSL で接続するには、Server 値に'https://' を接頭します。Note: PKI を 使用するためには、TLS/SSL およびクライアント認証はX-Pack 上で有効化されていなければなりません。

    接続されると、X-Pack では、設定したリルムをベースにユーザー認証およびロールの許可が実施されます。

  6. 接続情報の入力が完了したら、「保存およびテスト」をクリックします。

Elasticsearch 接続プロパティの取得・設定方法

接続するには、Server およびPort 接続プロパティを設定します。 認証には、User とPassword プロパティ、PKI (public key infrastructure)、またはその両方を設定します。 PKI を使用するには、SSLClientCert、SSLClientCertType、SSLClientCertSubject、およびSSLClientCertPassword プロパティを設定します。

CData 製品は、認証とTLS/SSL 暗号化にX-Pack Security を使用しています。TLS/SSL で接続するには、Server 値に'https://' を接頭します。Note: PKI を 使用するためには、TLS/SSL およびクライアント認証はX-Pack 上で有効化されていなければなりません。

接続されると、X-Pack では、設定したリルムをベースにユーザー認証およびロールの許可が実施されます。

API Server のユーザー設定

次に、API Server 経由でElasticsearch にアクセスするユーザーを作成します。「Users」ページでユーザーを追加・設定できます。やってみましょう。

  1. 「Users」ページで ユーザーを追加をクリックすると、「ユーザーを追加」ポップアップが開きます。
  2. 次に、「ロール」、「ユーザー名」、「権限」プロパティを設定し、「ユーザーを追加」をクリックします。
  3. その後、ユーザーの認証トークンが生成されます。各ユーザーの認証トークンとその他の情報は「Users」ページで確認できます。

Elasticsearch 用のAPI エンドポイントの作成

ユーザーを作成したら、Elasticsearch のデータ用のAPI エンドポイントを作成していきます。

  1. まず、「API」ページに移動し、 「 テーブルを追加」をクリックします。
  2. アクセスしたい接続を選択し、次へをクリックします。
  3. 接続を選択した状態で、各テーブルを選択して確認をクリックすることでエンドポイントを作成します。

OData のエンドポイントを取得

以上でElasticsearch への接続を設定してユーザーを作成し、API Server でElasticsearch データのAPI を追加しました。これで、OData 形式のElasticsearch データをREST API で利用できます。API Server の「API」ページから、API のエンドポイントを表示およびコピーできます。

(オプション)Cross-Origin Resource Sharing (CORS) を構成

Ajax などのアプリケーションから複数のドメインにアクセスして接続すると、クロスサイトスクリプティングの制限に違反する恐れがあります。その場合には、[OData]->[Settings]でCORS 設定を構成します。

  • Enable cross-origin resource sharing (CORS):ON
  • Allow all domains without '*':ON
  • Access-Control-Allow-Methods:GET, PUT, POST, OPTIONS
  • Access-Control-Allow-Headers:Authorization

Elasticsearch のデータからQlik Sense アプリケーションを作成

Elasticsearch への接続と構成されたOData エンドポイントがあれば、Elasticsearch のデータを追加してQlik Sense でビジュアライズ、分析、レポートなどを行うことができます。

新しいアプリケーションの作成とデータのアップロード

  1. Qlik Sense インスタンスにログインし、ボタンをクリックして新しいアプリケーション新しいアプリケーションを作成します。 Creating a new app
  2. 新しいアプリケーションに名前を付けて構成し、「Create」をクリックします。
  3. ワークスペース内で、新しいアプリケーションをクリックして開きます。
  4. クリックして、ファイルやその他のソースからデータを追加します。 Selecting a connector
  5. REST コネクタを選択し、構成プロパティを設定します。次の箇所以外では、ほとんどの箇所でデフォルト値を使用します。
    • URL:これをElasticsearch テーブルのAPI エンドポイントに設定します。@CSV URL パラメーターを使用することで、CSV レスポンスを確実に取得できます。(例: https://myserver/api.rsc/Elasticsearch_Orders?@CSV
    • Authentication Schema:「BASIC」に設定します。
    • User Name:上記で構成したユーザー名に設定します。
    • Password:上記のユーザー用の認証トークンに設定します。
  6. 「Create」をクリックしてElasticsearch のデータのAPI Server をクエリします。
  7. 「CSV has header」をチェックし、「Tables」で「CSV_source」を選択します。
  8. カラムを選択し、「Add data」をクリックします。 Adding data to the app (NetSuite is shown.)

実際にデータを分析する

データがQlik Sense にロードされたので、洞察を引き出すことができます。「Generate insights」をクリックすると、Qlik がデータを分析します。もしくは、Elasticsearch のデータを使用してカスタムのビジュアライゼーション、レポート、ダッシュボードを作成できます。

Generating insights on live data (NetSuite is shown.)

詳細と無料トライアル

これで、リアルタイムElasticsearch のデータから簡単で強力なダッシュボードが作成されました。Elasticsearch(および250 以外のデータソース)のOData フィードを作成する方法の詳細については、API Server ページにアクセスしてください。無料トライアルにサインアップして、Qlik Sense Cloud でリアルタイムElasticsearch のデータの操作を開始します。

はじめる準備はできましたか?

詳細はこちら、または無料トライアルにお申し込みください:

CData API Server お問い合わせ