15
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Power BIでファイルサーバーの利用状況を確認する-前編-

Last updated at Posted at 2019-01-17

社内ファイルサーバーをPower BIで確認する話をTwitterで呟いた結果、どう作ったかを書く事にしました。
因みに筆者のインフラ系知識はド素人。
故に他所のファイルサーバーでも同じ仕組みが使えるかは分からないです。

長くなりそうなので前後編に分けて投稿。

Power BIの細かい操作手順はある程度省いて書いていきます。

今回接続するファイルサーバー

今回、Power BIから読み出すファイルサーバーはこういう風に表示されるタイプ。
ネットワークドライブって言うんですかね。
エクスプローラーからG:\フォルダ名みたいなアドレスで到達できるファイルサーバーに接続します。
image.png

Power BIで使えるファイルサーバーに接続できるコネクター

image.png
1. フォルダー

今回のコネクターはフォルダー1つだけです。
ローカル上のフォルダーと同じように扱えるので、Power Query上での面倒な設定はありません。

フォルダーコネクター

ファイルサーバーと接続する

フォルダーコネクターを利用するには必ずフォルダーパスを入力する必要があります。
image.png
このコネクターで接続すると、接続したフォルダーの下位フォルダを含む全ファイルが一覧表示されます。
image.png

各列の説明

  • Content
    • Binary(ファイルの中身)
  • Name
    • ファイル名
  • Extension
    • ファイル拡張子
  • Date accessed
    • ファイルへの最終アクセス日時
  • Date modified
    • ファイルの最終更新日時
  • Date created
    • ファイルの作成日時
  • Attributes
    • ファイルサイズ、コンテンツタイプ、ファイルの種類etc...
  • Folder Path
    • ファイルが存在するフォルダーのパス

Power Queryで取り込む前準備

今回はファイルサーバーの利用状況確認が目的なので、ファイルそのものは必要ありません。
Content列削除してしまいましょう。
image.png

次にAttributes列ファイルサイズがSizeとして格納されているので展開します。
image.png

これだけだと個別のファイルを識別する一意の値が存在しないので、列の追加タブからインデックス列追加します。
この手順が結構重要で、忘れると後で泣きます。
image.png

部署ごとに割り当てたフォルダの内訳を分析したい場合は、Folder Path列を区切り記号で分割して必要なフォルダを切り出します。
image.png

これでPower Queryでの前準備は終わりです。

Power BIで分析

最終的に、このようなマトリックスやテーブルを基に利用状況を確認するのが今回のゴールです。
image.png

しかし今回はデータを扱う際にあたり、気を付けなければならない点が2つあります。

1. ファイルサイズのキロ、メガ、ギガ、テラ換算
2. ファイルサイズ等のランキングを作成するRANKX関数の挙動

順番に解説していきます。

ファイルサイズのキロ、メガ、ギガ、テラ換算

個々のファイルサイズはSize列に格納されていますが、全て1byte単位です。
image.png
このままだと正確なファイルサイズを把握することが難しいので、以下の式を使って扱いやすい単位に変換します。
= DIVIDE(SUM([Size]),2^[バイト単位変換値])
**[バイト換算単位変換値]**は以下の表の値を代入することで、それぞれの単位に変換できます。

バイト単位変換値 換算後単位
10 KB
20 MB
30 GB
40 TB

What-Ifパラメーターを使ってみる

状況に応じて自由に単位を変換したい場合はモデリングタブWhat-Ifを使うと良いでしょう。
image.png
What-Ifパラメーターの設定はこんな感じです。
image.png

スライサーの設定

このページにスライサーを追加するにチェックを入れておくとスライサーが追加されるので、右上の∨から一覧を選択する。
image.png
表示が変わり、するとチェックボックスから選択できるようになる。
image.png
更に視覚化ウィンドウ書式タブから方向に変えると、表示をボタン風に出来ます。
image.pngimage.png

ファイルサイズ等のランキングを作成するRANKX関数の挙動

ファイルサイズのランキングはこの手の利用状況確認では必須と言えるでしょう。

Power BIでそれを作ろうとした場合、多くの人は最初にこのようなDAX式を書くのではないでしょうか?
容量ランキング = RANKX(ALL('取り込んだファイルサーバーテーブル'),SUM([Size]))
このDAX式は、視覚化でテーブルを選んだ場合正しく動作します。
image.png
しかしマトリックスの場合は正しく動作しません。
image.png
このランキングをマトリックスで正しく動作させる方法を後編で書いていきたいと思います。

後編に続く

書いてる途中で内容の8割がRANKXの話になりそうだった。
急遽分割する事にした筆者を許しておくれ…_(:3」∠)_

15
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?