Fabric のワークスペース一覧を PowerShell で取得してExcelに出力する方法

Microsoft Fabric を使い始めると、ワークスペースが増えてきます。そうすると、下記のような情報を「一覧」で把握したくなる場面が増えてきます。

  • ワークスペースがいくつあるのか
  • どの容量を利用しているか

この記事では、Fabric のワークスペース一覧を PowerShell で取得する手順を紹介します。あわせて、Excel で開ける形式(CSV)に出力する方法も、なるべくシンプルに解説します。

Microsoft Fabricとは

Microsoft Fabricとは、Microsoftが提供する統合型データ分析プラットフォームで、企業のデータ活用をより効率的かつ柔軟にするために設計されています。

Power BI、Azure Synapse、Data Factoryなどの既存サービスを統合し、データの収集・加工・分析・可視化までを一貫して実施可能です。

前提

この記事の手順を実行するための前提条件を整理します。

  • 権限(いずれか一つ)
    • Power BI 管理者
    • Fabric容量管理者
  • 環境
    • Windows 環境で PowerShell が利用可能であること
    • インターネット経由でMicrosoft Fabricに接続できること

手順

手順は以下の通りです。

モジュールのインストール

以下のコマンドを実行し、Power BIモジュールをインストールします。

※ 初回のみ実施します。なお、モジュールのインストールは管理者として実行する必要があります

# Power BI 管理モジュールのインストール
Install-Module -Name MicrosoftPowerBIMgmt -Scope CurrentUser -AllowClobber -Force
Install-Module -Name MicrosoftPowerBIMgmt.Admin -Scope CurrentUser -AllowClobber -Force

モジュールのインポート

以下のコマンドを実行し、Power BIモジュールをインポートします。

Import-Module MicrosoftPowerBIMgmt
Import-Module MicrosoftPowerBIMgmt.Admin

Power BIサービスにサインイン

以下のコマンドを実行し、Power BIサービスにサインインします。

※前提条件に記載の権限が付与されているユーザーでサインインします。

Connect-PowerBIServiceAccount

ワークスペース情報の取得

以下のコマンドを実行し、ワークスペースの情報を取得します。

$myWorkspaces = Get-PowerBIWorkspace -Scope Individual -All

# 出力したいプロパティだけ選んで整形
$wsForExport = $myWorkspaces | Select-Object `
    Id,
    Name,
    Type,
    IsOnDedicatedCapacity,
    CapacityId

CSVに出力する

以下のコマンドを実行し、CSVに情報を出力します。

# 出力先パス(お好みで変更してください)
$exportPath = "C:\Users\XXXXX\Desktop\\FabricWorkspaces.csv" # CSV として出力
$wsForExport | Export-Csv -Path $exportPath -NoTypeInformation -Encoding UTF8 Write-Host "ワークスペース一覧を出力しました: $exportPath"

CSVファイルを確認する

出力先に指定したパスに移動し、出力されたCSVファイルを確認します。

スクリプト

スクリプト全体は以下の通りです。

# Power BI 管理モジュールのインストール(初回のみ)
Install-Module -Name MicrosoftPowerBIMgmt -Scope CurrentUser -AllowClobber -Force
Install-Module -Name MicrosoftPowerBIMgmt.Admin -Scope CurrentUser -AllowClobber -Force # Power BI モジュールのインポート Import-Module MicrosoftPowerBIMgmt
Import-Module MicrosoftPowerBIMgmt.Admin # Power BI サービスにサインイン
Connect-PowerBIServiceAccount $myWorkspaces = Get-PowerBIWorkspace -Scope Individual -All # 出力したいプロパティだけ選んで整形
$wsForExport = $myWorkspaces | Select-Object `
    Id,
    Name,
    Type,
    IsOnDedicatedCapacity,
    CapacityId # 出力先パス(お好みで変更してください)
$exportPath = "C:\Users\xxxxxx\Desktop\\FabricWorkspaces.csv" # CSV として出力
$wsForExport | Export-Csv -Path $exportPath -NoTypeInformation -Encoding UTF8 Write-Host "ワークスペース一覧を出力しました: $exportPath"

最後に

この記事では、Fabric のワークスペース一覧を PowerShell で取得し、Excel で扱える CSV 形式に出力する手順を紹介しました。

流れを振り返ると、以下の通りです。

  1. Power BI 管理モジュールを入れる
  2. 管理者アカウントで Power BI(Fabric)にサインイン
  3. Get-PowerBIWorkspace でワークスペース一覧を取得
  4. 必要な項目だけ選んで CSV に出力
  5. (必要に応じて)容量情報も紐付け

一度スクリプトを作成することで定期的なワークスペース棚卸しや容量ごとのワークスペース分布の確認などに繰り返し使うことができます。

Azure Automation やタスクスケジューラと組み合わせれば、日次・週次で自動出力することも可能です。

執筆担当者プロフィール
和田 剣斗

和田 剣斗(日本ビジネスシステムズ株式会社)

業務では主にAzureに携わっています。趣味はサウナや資産運用です。最近はテントサウナにはまっています。

担当記事一覧