SQL Server R Services を初めて使う人のための Tips 集 (可視化編)

Microsoft Japan Data Platform Tech Sales Team

倉重 秀昭 / Hideaki Kurashige

 

前回の記事に続き、今回も 米国本社の CAT チームの記事を基に、SQL Server R Services を初めて使う人のための Tips について書いていきたいと思います。

R を使う理由の一つに、データを様々なグラフを使って可視化するためのライブラリが豊富にそろっていることがあると思います。SQL Server R Services を使うと T-SQL を使って R のコードを実行することができますが、この場合 R のグラフィックデバイスを使ったグラフ等の表示ができない為、 データの可視化には工夫が必要になります。

今回は T-SQL をつかって R を実行した場合のデータ可視化手法の内、代表的な手法を3つ紹介させていただきたいと思います。

 

(1) グラフの画像を ファイルとして出力する方法

 

R の Plot 関数等を使って生成したグラフは、JPG など画像ファイルとしてローカルファイルシステム上に保存する事が可能です。

実現方法としては、以下の2つがあります。

 

① ストアドプロシージャ― + BCP コマンドを利用する方法

グラフの画像データを varbinary 形式で 出力するストアドプロシージャ―を作成。BCP コマンドから、そのストアドプロシージャーを実行して出力結果を画像ファイルとして保存する方法です。

※以下のサイトの「Storing plots as varbinary data type」に詳細な手順がサンプルスクリプト付きで紹介されています。

https://msdn.microsoft.com/en-us/library/mt683486.aspx

 

② ストアドプロシージャ―のみを用いる方法

①では、グラフデータを画像として保存するために BCP を利用していますが、こちらは BCP を使わずにすべて T-SQL で記述する方法です。

※こちらにつきましても、以下のサイトの「Saving plots in files (jpg, pdf) on the server」にサンプルコード付きで詳細手順が記載されています。

https://msdn.microsoft.com/en-us/library/mt683486.aspx

 

(2) SQL Server Reporting Services を利用する方法

R の Plot 関数等を使って生成したグラフは、SQL Server Reporting Services(SSRS) の定型レポートの中に埋め込む事も可能です。

実装方法としては、グラフのバイナリデータを SQL Server のテーブル内に格納し、そのデータを SSRS から読みだしてレポートの中に組み込む方式になります。

詳細な実装方法については、以下のページ(※弊社外HPですので内容についてはご自身で精査ください)にサンプルコード付きで詳細が記載されています。

https://www.mssqltips.com/sqlservertip/4127/sql-server-2016-r-services-display-r-plots-in-reporting-services/

 

※ SQL Server Reporting Services を利用する方法としては、Custom Report Item を利用して Reporting Services に R グラフィックデバイスを実装する方法もあります。

この方法は、Reporting Services の設定変更が必要になり、すこし大がかりになってしまいますが、以下のページの最下部にサンプルコード付きで詳細が記載されています。

https://msdn.microsoft.com/en-us/library/mt590871.aspx

 

(3) Power BI Desktop を利用する方法

Power BI Desktop には、R ビジュアルという機能が備わっており、R を使って作成したグラフをレポートに組み込むことができるようになっています。

この方法は、上記2つとは異なり、Plot 関数等のグラフ処理を SQL Server R Services で実施するのではなく、Power BI Desktop がインストールされたクライアントマシン側で行います。

Power BI Desktop の R ビジュアルの機能については、詳細が以下のページに紹介されています。

https://powerbi.microsoft.com/ja-jp/documentation/powerbi-desktop-r-visuals/

 

今回は、SQL Server R Services を初めて使う人のための Tips として、T-SQL を利用して R コードを実行した際の可視化手法についてご紹介させていただきました。

ご興味がある方は、ぜひこれらの機能を試してみていただければと思います。