次の方法で共有


データを取得する

適用対象:SQL Server 2019 以降の Analysis Services Azure Analysis Services Fabric/Power BI Premium

このレッスンでは、 データの取得 を使用して AdventureWorksDW サンプル データベースに接続し、データの選択、プレビューとフィルター処理、モデル ワークスペースへのインポートを行います。

内部では、データの取得はPower Queryであり、モデリングと分析のためにデータに接続して再シェイプするための膨大なツールを提供します。 詳細については、「Power Query ドキュメント」を参照してください

注意

このチュートリアルのタスクと画像は、Azure Synapse Analytics リソース上の AdventureWorksDW データベースへの接続を示しています。 場合によっては、SQL Server Data Warehouse上の AdventureWorksDW データベースに異なるオブジェクトが表示されることがありますが、基本的には同じです。

このレッスンの推定所要時間: 10 分

前提条件

この記事は、表形式モデルのチュートリアルの一部であり、チュートリアルでの順番に従って実行する必要があります。 このレッスンのタスクを実行する前に、前のレッスン「 レッスン 1: 新しい表形式モデル プロジェクトを作成する」を完了している必要があります。

接続の作成

AdventureWorksDW データベースへの接続を作成するには

  1. [表形式モデル] エクスプローラーで、[データ ソース] [データ ソース>からインポート] を右クリックします。

    これにより、 データの取得が開始され、データ ソースへの接続がガイドされます。 Tabular Model Explorer が表示されない場合は、Solution ExplorerModel.bim ダブルクリックすることでデザイナにモデルを表示します。

    [データの取得] ダイアログ ボックスのスクリーンショット。Azure オプションと Azure SQL Data Warehouse オプションが強調表示され、選択されています。

  2. [データの取得] で、[Azure>Azure SQL Data Warehouse] をクリックし、[接続] をクリックします。

  3. [データベースのSQL Server] ダイアログの [サーバー] で、AdventureWorksDW データベースをインストールしたサーバーの名前を入力するか貼り付け、[接続] をクリックします。

    AdventureWorksDW サンプル データベースでAzure SQL Data Warehouseを作成した場合は、Azure portalの [概要] ページからサーバー名をコピーできます。

  4. 資格情報の入力を求められたら、データのインポートと処理を行う際、データ ソースへの接続にAnalysis Services が使用する資格情報を指定する必要があります。 [ Microsoft アカウント] を選択し、[ サインイン] をクリックします。 画面の指示に従います。 サインインしたら、[ 接続] をクリックします。

    [SQL Server データベース] ダイアログ ボックスのスクリーンショット。Microsoft アカウント オプションが強調表示され、選択されています。

    データソースがオンプレミスまたは VM SQL Server Data Warehouseの場合は、[WindowsImpersonate Account]\(Windows> の偽装アカウント\) を選択し、アカウント名とパスワードを入力します。

  5. [ナビゲーター] で AdventureWorksDW データベースを選択し、[OK] をクリック します。 これにより、データベースへの接続が作成されます。

  6. ナビゲータで、次の表のチェックボックスを選択します。 DimCustomerDimDateDimGeographyDimProductDimProductCategoryDimProductSubcategory、およびFactInternetSales。 テーブルを選択したら、[データの 変換] をクリックします。

    [NAvigator] ダイアログ ボックスのスクリーンショット。[表示オプション] セクションと [データの変換] オプションが強調表示されています。

[データの変換] をクリックすると、Power Query エディターが開きます。 次のセクションでは、インポートするデータのみを選択します。

テーブルのデータをフィルターする

AdventureWorksDW サンプル データベース内のテーブルには、モデルに含める必要がないデータがあります。 可能であれば、不要なデータをフィルターで除外して、モデルが使用するインメモリー空間を確保します。 フィルターで列の一部をテーブルから除外し、ワークスペース データベースやデプロイ後のモデル データベースにインポートされないようにします。

インポートの前にテーブル データをフィルターする

  1. [Power Query エディター >クエリ] でDimCustomer テーブルを選択します。 データソース (AdventureWorksDW サンプル データベース) の DimCustomer テーブルのビューが表示されます。

  2. Ctrl を押しながら、SpanishEducationFrenchEducationSpanishOccupation、および FrenchOccupation をクリックし (複数項目の選択)、右クリックして、[Remove Columns] をクリックします。

    SpanishEducation、FrenchEducation、SpanishOccupation、FrenchOccupation 列が選択され、[列の削除] オプションが強調表示されているPower Query エディターのスクリーンショット。

    これらの列の値はインターネット売上分析と関連がないので、これらの列をインポートする必要はありません。 不要な列を排除することで、モデルは小さくなり、効率的になります。

    ヒント

    間違えた場合は、[適用したステップ] でステップを削除することで取り消すことができます。

    [削除された列] オプションが強調表示され、強調表示されている [クエリ設定] ダイアログ ボックスのスクリーンショット。

  3. 各テーブルで次の列を削除することによって残りのテーブルをフィルターします。

    DimDate

    SpanishDayNameOfWeek
    FrenchDayNameOfWeek
    SpanishMonthName
    FrenchMonthName

    DimGeography

    SpanishCountryRegionName
    FrenchCountryRegionName

    DimProduct

    SpanishProductName
    FrenchProductName
    FrenchDescription
    ChineseDescription
    ArabicDescription
    HebrewDescription
    ThaiDescription
    GermanDescription
    JapaneseDescription
    TurkishDescription

    DimProductCategory

    SpanishProductCategoryName
    FrenchProductCategoryName

    DimProductSubcategory

    SpanishProductSubcategoryName
    FrenchProductSubcategoryName

    FactInternetSales

    列は削除されません。

Import the selected tables and column data

プレビューして、不要なデータを排除すると、必要となる残りのデータをインポートできます。 ウィザードでは、テーブル データと、各テーブル間のリレーションシップがインポートされます。 モデルに新しいテーブルと列が作成され、フィルターで除外したデータはインポートされません。

選択したテーブルと列のデータをインポートする

  1. 選択内容を確認します。 問題がなければ、[インポート] をクリックします。 [Data Processing] ダイアログ ボックスにデータソースからワークスペース データベースへのデータのインポート状況が表示されます。

    [成功] を示す [データ処理] ダイアログ ボックスのスクリーンショット。

  2. [閉じる] をクリックします。

モデル プロジェクトを保存します。

モデル プロジェクトは頻繁に保存してください。

モデル プロジェクトを保存する

  • [ファイル][すべて保存] の>順にクリックします。

次のステップ

レッスン 3: 日付テーブルとしてマークする