Power BI Service でリアルタイムKafka のデータをビジュアライズ

CData Connect Server を使用してKafka のデータの仮想SQL Server データベースを作成し、Power BI Service でカスタムレポートを作成します。

加藤龍彦
デジタルマーケティング

最終更新日:2022-01-03

こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。

Power BI を使えば会社のデータを美しいビジュアルに変換して収集および整理することができるため、重要なことだけに集中できます。CData Connect Server と組み合わせると、ビジュアライゼーションやダッシュボードなどのためにKafka のデータを使用できます。この記事では、Power BI のKafka のデータからデータセットをデータ構築して公開し、Power BI サービスのKafka のデータに関するレポートを作成する方法について説明します。

CData Connect Server は、Kafka に純粋なSQL インターフェースを提供し、データベースにデータを複製することなくPower BI のリアルタイムKafka のデータから簡単にレポートを作成できるようにします。ビジュアライゼーションを作成する際には、Power BI がデータを収集するためのSQL クエリを生成します。CData Connect Server は、最適化されたデータ処理を使用してサポートされているすべてのSQL 操作(フィルタ、JOIN など)をKafka に直接プッシュし、サーバーサイドの処理を利用して、Kafka のデータを素早く返します。

注意:(オンプレミスゲートウェイを使用する代わりに)Connect Server を介してKafka のデータをPower BI にインポートすることもできます。詳細については、関連するKnowledge Base の記事を参照してください。

Kafka のデータの仮想SQL データベースを作成

CData Connect Server は、簡単なポイントアンドクリックインターフェースを使用してAPI を生成します。

  1. Connect Server にログインし、「Databases」をクリックします。 データベースを追加
  2. 「Available Data Sources」から「Kafka」を選択します。
  3. 必要な認証プロパティを入力し、Kafka に接続します。

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

    .NET ベースのエディションは、Confluent.Kafka およびlibrdkafka ライブラリに依存して機能します。 これらのアセンブリはインストーラーにバンドルされ、自動的に本製品と一緒にインストールされます。 別のインストール方法を利用する場合は、NuGet から依存関係のあるConfluent.Kafka 2.6.0 をインストールしてください。

    Apache Kafka サーバーのアドレスを指定するには、BootstrapServers パラメータを使用します。

    デフォルトでは、本製品はデータソースとPLAINTEXT で通信し、これはすべてのデータが暗号化なしで送信されることを意味します。 通信を暗号化するには:

    1. UseSSLtrue に設定し、本製品がSSL 暗号化を使用するように構成します。
    2. SSLServerCert およびSSLServerCertType を設定して、サーバー証明書をロードします。

    Apache Kafka への認証

    Apache Kafka データソースは、次の認証メソッドをサポートしています:

    • Anonymous
    • Plain
    • SCRAM ログインモジュール
    • SSL クライアント証明書
    • Kerberos

    Anonymous

    Apache Kafka の特定のオンプレミスデプロイメントでは、認証接続プロパティを設定することなくApache Kafka に接続できます。 こうした接続はanonymous(匿名)と呼ばれます。

    匿名認証を行うには、このプロパティを設定します。

    • AuthSchemeNone

    その他の認証方法については、ヘルプドキュメントを参照してください。 Configuring a connection (Salesforce is shown).

  4. Test Database」をクリックします。
  5. 「Permission」->「 Add」とクリックし、適切な権限を持つ新しいユーザー(または既存のユーザー)を追加します。

Power BI からConnect Server に接続

Power BI サービスでリアルタイムKafka のデータに接続してビジュアライズするには、オンプレミスデータゲートウェイをインストールしてPower BI サービスからゲートウェイにデータソースを追加し、Power BI Desktop からサービスにデータセットを公開します。

オンプレミスデータゲートウェイをインストール

Microsoft オンプレミスデータゲートウェイは、接続されたデータソースとさまざまなMicrosoft ツールおよびプラットフォーム間の安全なデータ転送を提供します。ゲートウェイの詳細については、Microsoft のドキュメントを参照してください。

Power BI サービスからゲートウェイをダウンロードし、インストールできます。

  1. PowerBI.com にログインします。
  2. 「Download」メニューをクリックし、「Data Gateway」をクリックします。 Download the Data Gateway
  3. インストールの手順に従ってゲートウェイの名前をメモします。

Kafka をデータソースとしてPower BI サービスに追加

データゲートウェイをインストールしたら、Connect Server をデータソースとしてPower BI サービスに追加します。

  1. PowerBI.com にログインします。
  2. 「Settings」メニューをクリックして「Manage gateways」をクリックします。 Settings -> Manage gateways
  3. 「ADD DATA SOURCE」をクリックしてConnect Server への接続を構成します。

    • Data Source Name をConnect_ApacheKafka に設定します。
    • Data Source Type としてSQL Server を選択します。
    • Server をConnect Server インスタンスのアドレスに設定します。(例:CONNECT_SERVER_URL
    • Database を仮想Kafka のデータベースの名前に設定します。(例:kafkadb
    • Authentication Method をBasic に設定します。
    • UsernamePassword をConnect Server 資格情報に設定します。

Power BI デスクトップから、データセットを公開

ゲートウェイをインストールし、Connect Server をデータソースとしてPower BI サービスに追加すると、Power BI Desktop からサービスにデータセットを公開できます。

  1. Power BIを開いて「Get Data」->「More」とクリックし、SQL Server データベースを選択して「Connect」をクリックします。
  2. Create a new connection in Power BI
  3. 接続プロパティを設定設定し、「OK」をクリックします。
    • Server をConnect Server インスタンスのアドレスに設定します。(例:CONNECT_SERVER_URL
    • Database を仮想Kafka のデータベースの名前に設定します。(例:kafkadb
    • Data Connectivity mode をDirectQuery* に設定します。
    Connect to CData Connect Server instance * DirectQuery は、Kafka のデータのライブクエリ処理とリアルタイムのビジュアライゼーションを可能にします。
  4. 「authentication」ウィザードで「Database」を選択してUser namePassword のプロパティを設定し、「Connect」をクリックします。
  5. Authenticate the connection
  6. 「Navigator」ダイアログでテーブルを選択し、ビジュアライズします。
  7. 「Query Editor」では、Kafka カラムをフィルタリング、並べ替え、要約することでデータセットをカスタマイズできます。「Edit」をクリックしてクエリエディタを開きます。行をフィルターするには、行を右クリックします。カラムヘッダーを右クリックして、次のようなアクションを実行します。

    • カラムのデータタイプを変更
    • カラムの削除
    • カラムをグループ化

    Power BI は、Connect Server によって報告されたKafka メタデータから、各カラムのデータタイプを検出します。

    Power BI は、クエリへの変更を「Applied Steps」セクションに記録し、リモートKafka のデータに対して実行される、基礎となるデータ取得クエリを調整します。「Close and Apply」をクリックすると、Power BI はデータ取得クエリを実行します。

    もしくは、「Load」をクリックしてデータをPower BI にプルします。

  8. 「Relationships」タブで選択したエンティティ間の関係性を定義します。
  9. 「Home」メニューから「Publish」をクリックして「Workspace」を選択します。

Power BI Service のKafka のデータでレポートとダッシュボードを作成

Power BI サービスにデータセットを公開したので、公開されたデータに基づいて新しいレポートとダッシュボードを作成できます。

  1. PowerBI.com にログインします。
  2. 「Workspaces」をクリックし、ワークスペースを選択します。
  3. 「Create」をクリックし、「Report」を選択します。
  4. レポートに使用する公開済みデータセットを選択します。 Select a dataset
  5. フィールドとビジュアライゼーションを選択してレポートを追加します。 Visualizing Kafka データ in the Power BI service

アプリケーションからKafka のデータへSQL アクセス

Power BI サービスからリアルタイムKafka のデータへの直接接続ができるようになりました。これで、Kafka を複製せずにより多くのデータソースや新しいビジュアライゼーション、レポートを作成することができます。

アプリケーションから直接250+ SaaS 、Big Data 、NoSQL ソースへのSQL データアクセスを取得するには、CData Connect Server を参照してください。

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

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