14
13

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 1 year has passed since last update.

Contosoのサンプルデータを読み込もう✨

Last updated at Posted at 2022-06-13

はじめに

サンプルデータがあると、Demoを作成したり、技術検証を行うときに便利ですよね。

Contoso サンプルデータをSQL serverのローカルインスタンスに読込み、オンプレミスデータゲートウェイを介してPower BI Serviceに取り込むまでをやってみます。

SQL serverに入っているデータなので、ローカルインスタンスに読み込めばその他BIサービスでもサンプルデータでも使える(はず)!

サンプルデータに困っている方はぜひお試しください~🤣

Contosoとは

ContosoはMicrosoftがサンプルやドキュメントのDEMOなどで使用している架空の会社名です。Microsoft製品を少しでも勉強したことがある人にとっては非常になじみ深い会社名だと思います。

以下、Wikiより引用。

コントソ (Contoso) は、マイクロソフトがサンプル用に使う仮想上の会社またはドメインである。取締役会は業界関係者からなり、ダン・ジャンプCEOが率いている。2011年4月1日のエイプリルフールに、Googleは「コントソはマイクロソフトの技術を諦めて、Google Appsを選んだ」というジョークを飛ばした。

事前インストールが必要なもの

SQL server とその更新プログラムをインストールします。
SQL serverは開発者エディションを選択すると無料でインストールできます。
その後、SQL serverの管理ツールSSMS (Sql Server Management Studio)もインストールします。

image.png

bakファイルをDL

SQLBIがバックアップファイルを配布してくれています。必要なデータ量に応じて使い分けてください。最大でSalesテーブルに1000万行あるデータを下記GithubからDLすることができます。

  • Contoso 10K.bak
  • Contoso 100K.bak
  • Contoso 1M.bak
  • Contoso 10M.bak

いざ実践!

SQL Server のインスタンスを作成

まずはSQL Server のインスタンスを作成します。SQL Server インストールセンターを開きます。

image.png

あとはインスタンス機能はデータベースエンジンサービスを選択してください。
サーバー名などは任意に設定し、インスタンスの作成は終了です。
セットアップが終わると、自動的にServerは立ち上がった状態になっています。

image.png

SSMSでPC内で起動しているSQL serverインスタンスに接続

image.png

Databaseのところで右クリックをして、Restore Databaseを選択。

image.png

開いたWindowでDeviceを選択する。

image.png

ファイルを選択する画面は、フォルダの選択画面が分かりにくいので、今回はCドライブ直下に置いておきました。

image.png

あとはOKボタンをポチポチしていると読み込みが完了するはずです。
ここまでくると完成です。
自分のPCでたちあがっているSQL serverインスタンス上にContosoデータベースが展開されました。

image.png

Viewsで右クリックすると、上位1,000行を出力するSQL文を簡単に記述・実行できます。

image.png

データが入っていることを確認🎉

image.png

Power BI Desktop から接続する

さて、この、ローカルにあるSQL serverにPower BI Desktopからアクセスをしてみます。
データを取得からSQL serverを選択します。

サーバー名のところにlocalhost\サーバー名を入力します。
今回の場合はlocalhost\TABULAR2022と入力。
資格情報を適宜入力してOKを押します。

image.png

image.png

image.png

読み込みボタンを押すとデータのロードがはじまります。Salesが1,000万行あることが確認できます。

image.png

リレーションを作成すれば、DEMOデータの完成🎉

image.png

ビジュアライズももちろん可能です。

image.png

Power BI Dataflow / Datamart から接続する

Power BI Serviceから接続する場合も考えます。
いずれの場合もデータはオンプレミス(今回は自分のPC)にあるので、オンプレミスデータゲートウェイのインストールが必要です。データゲートウェイは下記のURLよりDL→インストールをしてください。

インストールの流れは @yugoes1021 さんのスライドを参考に行いました。

今回は新機能Datamartに読み込ませてみます。画面はDatamartを使用して解説しますが、Dataflowでもデータ読み込みまでの流れは同じです。

ワークスペースの新規をクリックしてデータマートを選択。
別ソースからデータを取得を選択。

image.png

Azure SQL serverSQL Server データベースは別物なのでご注意ください。前者はクラウドサービスAzure上にたてられたSQL serverで、後者が今回のターゲットとなるオンプレミスのSQL serverです。

image.png

SQL Server データベースをクリックしたら、一度SSMSに戻ります。今回取り込みたいデータベース名の上で右クリックをして、プロパティを選択。

image.png

そこで出てくる情報をもとに、データソースの設定画面に入力していきます。基本はPower BI Desktop上で行う作業と同じですが、サーバー名などに先ほどはlocalhostを使用していたのですが、今回はそれではうまくいきません。SSMSで確認できるサーバー名を使用してください。Windows認証のユーザー名も、自PCにログインしているユーザー名そのままではうまくつながりません。SSMSに表示されているユーザー名を使用のうえ、パスワードを入力してください。

オンプレミスゲートウェイインストール時に設定する「回復キー」はログイン時には使用しません。Windows認証の際は自PCログイン時に使用しているパスワードを記入します。

image.png

設定をすればあとは読込をするだけです。
Power BIにデータベースを読み込ませる際は、Viewを読み込ませるのがベストプラクティスです。
今回は更新されないサンプルデータなのであまり関係ないですが、データをきれいに結合したりしてくれているので、Viewを読み込みます。

PowerQueryの練習をするならViewを読み込まずに、生のテーブルからデータをETLするのもいいかも😊

image.png

Contoso 10Mを読み込んでいるので、Salesテーブルが1,000万行あることが確認できます。

image.png

DatamartはWeb上でリレーションも作成できます。
先ほどと同じデータモデルを作成することができました🎉

image.png

ローカルServerを停止する

普段SQL Serverを使用する必要がない方は、SQL Serverを停止しておきましょう。
スタート画面から、構成マネージャーを立ち上げます。
動いているServerをクリックして「停止」を選択。これで完了です。

image.png

image.png

まとめ

最初はすこーしめんどくさいですが、更新されるデータではないため、DatamartやDataflowに一度読み込んでおけばあとはいつでも使える スタースキーマのサンプルデータとなります。オンプレミスデータゲートウェイやSSMSなどに普段触る機会が少ない方もぜひチャレンジしてみてください👍

参考リンク

14
13
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
14
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?