0
Help us understand the problem. What are the problem?

posted at

updated at

Power Query workout - PowerPlatform.Dataflows

Docs にないけどね。Excel でも試せるようになっていたので。

Excel では [Power BI Dataflows] となっているけど、PowerPlatform.Dataflows 関数(Power Query) を利用することになる。Excel の Power Query エディタ では [Dataflows]
image.png
たとえば、Power BI Desktop であれば [Dataflows]
image.png

PowerPlatform.Dataflows (Power Query)
PowerPlatform.Dataflows(optional options as nullable record) as table

Import data from a dataflow
Connect to all the dataflows you have access to, and choose the entities you'd like to use

Power BI データフロー / Power Platform データフロー(分析) で準備されたデータにアクセスすることができる。

データフローでどこまでデータを準備しておくかというはそれぞれだ。データマートのように使うこともできるので、特に Excel でも利用できるようになることはとても素晴らしいことだ。机並べて同じクエリを実行する必要なくなるでしょってことだし、組織やチームで利用するデータはあらかじめ準備しておけばいい。みんながみんな 超絶 Power Query 術が必須じゃぁなくなるってこと。安易にデータを複製することが減るわけだから、集計されたデータの信頼性が自然とよくなるはず。

PowerPlatform.Dataflows 関数の動作

Power BI データフロー / Power Platform データフロー(分析) の出力先は Azure Data Lake Gen 2 の Blob ストレージ。 CDM (Common Data Model) フォルダになっていて、エンティティなどの定義が含まれる model.json と データ本体の csv で構成されている。

必要なエンティティ情報をAPI経由で取得し、データ本体である csv をダウンロードするのだけど、AzureStorage.BlobContents 関数(Power Query)を利用するので高速でダウンロードできる。BlockSize : 4MB / ConcurrentRequests : 16 既定値の動作なので、大量の行数で効果が大きい。また、Table.FirstN など先頭行からフィルタする行の操作は適切に動作する。

Power BI データフローで、Enhanced compute engine settings : ON であるとき、Value.NativeQuery 関数(Power Query)を使用され、クエリフォールディング、DirectQuery がサポートされる。Excel からの接続したときには、AzureStorage.BlobContents のみ使用されるようだ。

なお、 options 引数により、Value.NativeQuery の使用を制御できる。

PowerPlatform.Dataflows (Power Query)
PowerPlatform.Dataflows(
    [EnableFolding = false]
)

その他

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
0
Help us understand the problem. What are the problem?