インポート モデルを開発するタイミングを決定する
インポート モデルは、ストレージ モード プロパティが Import に設定されているテーブルで構成されます。 これには、DAX 式で定義する計算テーブルも含まれます。
インポート モデルの利点
インポート モデルは、多くの利点があるため、最も頻繁に開発されるモデル フレームワークです。 インポート モデル:
- データベース、ファイル、フィード、Web ページ、データフローなど、Power BI データ ソースのすべての種類をサポートします。
- ソース データを統合できます。 たとえば、あるテーブルのソースがリレーショナル データベースで、関連するテーブルのソースが Web ページです。
- すべての DAX および Power Query (M) 機能をサポートします。
- 計算テーブルをサポートします。
- 最適なクエリ パフォーマンスを提供します。 これは、モデルにキャッシュされたデータが、分析クエリ (フィルター処理、グループ化、集計) のために最適化されており、モデルが完全にメモリに格納されるためです。
要するに、インポート モデルは、最も多くのオプションと設計の柔軟性を備え、高速なパフォーマンスを提供します。 このため、Power BI Desktop では、既定で "データの取得" 時にインポート ストレージ モードが使用されます。
インポート モデルの制限事項
多くの魅力的な利点がありますが、インポート モデルには制限事項があり、考慮する必要があります。 制限事項は、モデルのサイズとデータ更新に関連します。
モデルのサイズ
Power BI にはデータセット サイズの制限があり、これによってモデルのサイズが制限されます。 共有された容量にモデルを発行する場合、データセットごとに 1 GB の制限があります。 このサイズ制限を超えると、データセットの更新に失敗します。 モデルを専用の容量 (Premium 容量とも呼ばれる) に発行する場合、容量について大規模データセット ストレージ形式設定を有効にしていれば、10 GB を超えて拡張できます。
テーブルに格納されるデータの量を減らすように常に努める必要があります。 この戦略は、モデル更新にかかる時間の短縮と、モデル クエリの高速化に役立ちます。 次のような多数のデータ削減手法を適用できます。
- 不要な列を削除する
- 不要な行を削除する
- グループ化と集計を行ってファクト テーブルの粒度を上げる
- 数値データを優先して列データ型を最適化する
- モデル内の計算列ではなく、Power Query のカスタム列を優先する
- Power Query クエリの読み込みを無効にする
- 自動の日付/時刻を無効にする
- DirectQuery テーブル ストレージを使用する (このモジュールの後のユニットを参照)。
詳細については、「インポート モデリングのデータ削減手法」を参照してください。
注意
データセットあたりの 1 GB の制限は、ソース システムから収集されるデータの量ではなく、Power BI モデルの圧縮サイズを指します。
データ更新
インポートされたデータは定期的に更新する必要があります。 データセット データが最新であるのは、最後にデータ更新が成功した時点のみです。 データを最新の状態に保つために、ユーザーがスケジュール済みデータ更新を設定するか、レポート コンシューマーがオンデマンド更新を実行できます。
Power BI は、スケジュールされた更新処理の実行頻度に制限を課します。 共有された容量では 1 日あたり最大 8 回、専用容量では 1 日あたり最大 48 回です。
この程度の待機時間を許容できるかどうかを判断する必要があります。 多くの場合、これはデータの速度 (すなわちボラティリティ) と、ユーザーがデータの最新状態を把握できるようにする緊急性によって異なります。 スケジュールされた更新の制限を受け入れられない場合は、DirectQuery ストレージ テーブルを使用するか、ハイブリッド テーブルを作成することを検討してください。 または、別のアプローチを取り、代わりにリアルタイム データセットを作成します。
ヒント
ハイブリッド テーブルについては、ユニット 4 で説明します。 リアルタイム データセットの詳細については、Power BI を使用したリアルタイムでのデータの監視に関するモジュールを参照してください。
また、更新のワークロードと期間も考慮する必要があります。 既定では、テーブルを更新するために Power BI がすべてのデータを削除して再度読み込みます。 このような操作により、特に大規模なファクト テーブルの場合には、許容できない負荷をソース システムにもたらす可能性があります。 この負荷を減らすために、増分更新機能を設定できます。 増分更新により、期間パーティションの作成と管理が自動化され、更新が必要なパーティションのみがインテリジェントに更新されます。
データ ソースで増分更新がサポートされると、更新の速度と信頼性が向上し、Power BI とソース システムによるリソース消費量が削減される可能性があります。
高度なデータ モデラーでは、独自のパーティション分割戦略をカスタマイズできます。 オートメーション スクリプトによって、テーブル パーティションを作成、管理、更新できます。 詳細については、「Power BI 使用シナリオ: 高度なデータ モデル管理」を参照してください。 この使用シナリオでは、Power BI Premium で使用できる XMLA エンドポイントの使用について説明します。