- Power BI Desktop: ダッシュボードやビジュアライゼーションを作成するための Windows デスクトップアプリケーション
- Power BI サービス: Azure で利用できる SaaS で、Power BI Desktop で作成したダッシュボードをホストします
- ClickHouse ODBC ドライバのインストール
- Power BI Desktop への ClickHouse Power BI Connector のインストール
- Power BI Desktop で可視化するための ClickHouse データのクエリ
- Power BI サービス用のオンプレミス データ ゲートウェイの設定
前提条件
Power BI のインストール
2.137.751.0 以降でデフォルトで利用できます。
ClickHouseの接続情報を確認する
- ホスト名 - ClickHouseのホスト名
- ユーザー名 - ユーザー認証情報のユーザー名
- パスワード - ユーザーのパスワード
- データベース - 接続先のインスタンス上のデータベース名
Power BI デスクトップ
- ClickHouse ODBC ドライバをインストールする
- ClickHouse Connector を見つける
- ClickHouse に接続する
- データをクエリして可視化する
ODBC ドライバをインストールする
.msi インストーラーを実行し、ウィザードの指示に従います。
Debug symbols は任意で、必須ではありませんODBC ドライバを確認する
ClickHouse Driver が一覧に表示されていることを確認します。
ClickHouse Connector を探す
Power BI Desktop のバージョン
2.137.751.0 で利用できます「ClickHouse」を検索します
ClickHouse に接続する
- Host (必須) - インスタンスのドメインまたはアドレスです。プレフィックスや接尾辞は付けずに入力してください。
- Port (必須) - インスタンスのポートです。
- Database - データベース名です。
- Options - ClickHouse ODBC GitHub Page に記載されている任意の ODBC オプションです
- Data Connectivity mode - DirectQuery
ClickHouse に直接クエリする場合は、DirectQuery を選択することを推奨します。データ量が少ないユースケースでは、インポート モードを選択することもでき、その場合はデータ全体が Power BI に読み込まれます。
- ユーザー名とパスワードを指定します
データをクエリして可視化する
インポートが完了すると、通常どおり Power BI で ClickHouse のデータにアクセスできるようになります。
Power BI サービス
ODBC ドライバ (インポートのみ)
新しい User DSN を作成する
ここで新しい User DSN を追加します。左側の「Add」ボタンをクリックしてください。
ODBC ドライバの Unicode 版を選択します。
connection details を入力します。
SSL が有効なデプロイメント (例: ClickHouse Cloud またはセルフマネージドのインスタンス) を使用している場合は、
SSLMode フィールドに require を指定してください。Hostには、プロトコル (http://またはhttps://) を含めないでください。Timeoutは秒数を表す整数です。デフォルト値:30 seconds。
Power BI にデータを取り込む
“Other” -> “ODBC” を選択します。
一覧から、先ほど作成したデータソースを選択します。
データソースの作成時に認証情報を指定しなかった場合は、ユーザー名とパスワードの入力を求められます。
最後に、Navigator ビューにデータベースとテーブルが表示されます。目的のテーブルを選択し、“Load” をクリックして ClickHouse からデータをインポートします。
インポートが完了すると、通常どおり Power BI で ClickHouse のデータにアクセスできるようになります。
大規模データセットの扱いを最適化する
materialized views を ClickHouse に作成してください。これにより、次の利点が得られます。
- データ量に関係なく一貫した高速パフォーマンス
- ClickHouse クラスターへの負荷を軽減
- コストの予測がしやすくなる
実装時のベストプラクティス
事前集計の戦略
- 直近の詳細なダッシュボード向けの時間単位の集計
- 過去の傾向分析向けの日単位の集計
- 長期的なレポート向けの月単位のロールアップ
- アドホック分析に備えて、適切な有効期限 (TTL) を設定した生データを保持する
データモデリングの最適化
- クエリパターンに合った
ORDER BYキーを定義する - 時系列データにはパーティション化を利用する
- 効率的なルックアップのために、小規模なディメンションテーブルをディクショナリに変換する
- さらなるクエリ最適化のためにプロジェクションを活用する
既知の制限事項
UInt64
データを正しくインポートするには、Navigator で “Load” ボタンをクリックする前に、まず “Transform Data” をクリックしてください。
pageviews テーブルには UInt64 のカラムがあり、デフォルトでは “Binary” と認識されます。
“Transform Data” をクリックすると Power Query Editor が開き、そこでカラムの型を再設定できます。たとえば、
Text
に設定できます。
完了したら、左上の “Close & Apply” をクリックして、データの読み込みに進んでください。