SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

Archive for the ‘SQL Server’ tag

ML Services 向けのストアドプロシージャを VS Code で開発する際の覚書

leave a comment

ML Services 向けのストアドプロシージャは、sp_execute_external_script (Transact-SQL) で実行するのですが、@script には、R / Python のスクリプトを直に書く必要があります。

SSMS でスクリプトを書いてもインテリセンスが効かず、デバッグ実行もできないので、データサイエンスの匠でないと、これだけで開発は難しいかと…。

ということで、SQL Server 2017 RC2 Express Edition + VS Code で開発した方がいいのかなと。

SQL Server 2017 Express Edition with Advanced Services の無償環境でも ML Services は使用できるのですが、In-Database 限定となっています。

https://docs.microsoft.com/ja-jp/sql/sql-server/editions-and-components-of-sql-server-2017

image

この環境ですと「python.exe」に対してパスが通っていない状態となりますので、VS Code 側でパスを指定することで、RevoscalePy を使用した開発が VS Code でできるようになります。

VS Code に Python の拡張機能をインストールした後に、基本設定の設定を開いて、

image

ユーザー設定に、次のように、ML Services で使用される Python のパスを指定することで、ML Services 向けの Python 開発が実行できるようになります。

{
    "python.pythonPath": "C:\\Program Files\\Microsoft SQL Server\\MSSQL14.SQLEXPRESS\\PYTHON_SERVICES"
}

Written by masayuki.ozawa

9月 22nd, 2017 at 8:41 am

Posted in SQL Server

Tagged with ,

SQL Server 2017 における GPU の利用 (ML Services の GPU 利用) について

leave a comment

SQL Server 2017 の GPU サポートについて、まとめておきたいと思います。

https://gist.github.com/MasayukiOzawa/7965ffce226a8f94ba457671dd844b92 に今回勉強をする中で使用したサンプルを置いてあります。

情報については Linux/Docker 版も登場! Microsoft SQL Server 2017 の情報まとめ【5/1 更新】 を確認していただくとよいかと考えていますが、SQL Server 2017 の GPU の対応については次のような記載となっています。

NVIDIA GPU アクセラレーションの実現: R/Python を利用して GPU による高速計算での機械学習も実現、1 秒あたり100 万件の予測処理が可能です。

SQL Server 2017 が GPU を使用可能になっている範囲ですが「Machine Learning Services で GPU 対応のパッケージ (処理) を使用」した場合に、GPU を使用できるという理解でいます。

そのため、SQL Server の通常のクエリプロセッシングで GPU が使われるのではなく、ML Services で R または Python のスクリプトを実行する際に、GPU 対応したパッケージを介して、GPU を使用する処理を実施している場合のみ、SQL Server で GPU が使用できる形になるのではないでしょうか。

Read the rest of this entry »

Written by masayuki.ozawa

9月 20th, 2017 at 12:07 am

SQL Server の累積修正プログラムと OS 標準の Windows Update の関係

leave a comment

以前、2016/7 時点の SQL Server の修正プログラムの入手方法について という投稿で、SQL Server の累積修正プログラムについて書いたのですが、その次の内容を書いていなかったことに気づいたので書いておきたいと思います。 Read the rest of this entry »

Written by masayuki.ozawa

9月 17th, 2017 at 10:08 pm

Posted in SQL Server

Tagged with

db tech showcase Tokyo 2017 で登壇させていただきました

leave a comment

先週の話になりますが、db tech showcase Tokyo 2017Linux 対応だけじゃない!! SQL Server 2017 こんな機能が追加されています。 という内容で登壇をさせていただきました。

イベント内で、SQL Server on Linux / Machine Learning Services についてのセッションがるようでしたので、私の方では、他の方が触れていなさそうな機能をピックアップしてお話をさせていただきました。

参考になるようでしたら、公開資料をご利用いただければと。

Written by masayuki.ozawa

9月 10th, 2017 at 9:03 pm

Posted in SQL Server

Tagged with ,

SQL Server 2017 の PREDICT を使用した学習済みモデルの利用

leave a comment

SQL Server 2017 では、PREDICT という構文が追加されています。
PREDICT (Transact-SQL)

この構文を使用することで、次のようなことを実施できるようになります。

  • ストアドプロシージャを使用しない R/Python の学習済みモデルを使用

学習済みのモデルについては、すべてのオブジェクトが使用できるということではなく、次のような制約があります。

For all of these scoring methods, you must use a model that was trained using one of the supported RevoScaleR or MicrosoftML algorithms.

ReoscaleR や、MicrosoftML のパッケージで作成されたモデル (パッケージに含まれているアルゴリズム) をシリアライズしたものしか利用することはできないようですね。

この構文を使用することで RC2 時点では Machine Learning サービス (ML Services) がサポートされていない、SQL Server on Linux でも、機械学習のモデルを使用することができます。

The PREDICT function is supported in all editions of SQL Server, including Linux.

 

簡単なもので、一通り動作するところまでは確認することができたので軽くまとめてみたいと思います。

技術情報としては、Native scoring を確認するとよいかと。

Read the rest of this entry »

Written by masayuki.ozawa

9月 9th, 2017 at 11:07 am

Posted in SQL Server

Tagged with ,

SQL Server 2017 RC2 の ML Services で Python のチュートリアルを実行する場合の注意点

leave a comment

本投稿は、2017/9/3 時点の最新の製品前リリースである SQL Server 2017 RC2 に限定された内容です

In-Database Python Analytics for SQL Developers の内容を SQL Server 2017 RC2 で実行しようとした際の注意点を。
「import pandas」の内容については、フィードバックしたところ把握されている不具合らしく、RC2 限定の内容となるかと。
ドキュメントバグについては、コメントで指摘されているので、後日修正されるかと。

Read the rest of this entry »

Written by masayuki.ozawa

9月 3rd, 2017 at 5:24 pm

SQL Server 2017 の ML Services についてまとめてみる

leave a comment

SQL Server 2017 では、Machine Learning Services (ML Services) という新しいサービスが追加され、この機能についても大きな内容としてアナウンスがされています。
Getting started with machine learning in SQL Server

ML Services は、SQL Server 2016 では、R Services と呼ばれていたものであり、SQL Server 2017 では対応言語として、Python が追加されたことにより、名称が ML Services と変更になりました。
ドキュメント上、R Services と書かれているものは、SQL Server 2016 の時の情報になっていることが多いかと思います。

この機能は、Advanced Analytics (AA : 高度な解析基盤) というようなカテゴリで紹介されることもあり、高度な解析を実施するための機能として提供が行われているものになります。

先日、ML Services についてディスカッションする機会があったのですが、「自分の中できちんと整理できていないな」と感じたので、一度まとめてみたいと思います。

Read the rest of this entry »

Written by masayuki.ozawa

9月 2nd, 2017 at 4:05 pm

Data Migration Assistant (DMA) 3.2 で SQL Database のマイグレーションがサポートされるようになりました

one comment

SQL Server から他のバージョンの SQL Server 、SQL Database に移行を行うための支援ツールである Data Migration Assistant (DMA) の新しいバージョンである 3.2 がリリースされました。

Released: Data Migration Assistant (DMA) v3.2

Microsoft® Data Migration Assistant v3.2  からダウンロードすることができます。

Read the rest of this entry »

Written by masayuki.ozawa

8月 27th, 2017 at 3:39 pm

SQL Server 2016 / 2017 の AlwaysOn 可用性グループのドキュメントで確認をしておきたいもの

leave a comment

資料を作成していて、AlwaysOn 可用性グループに関してのドキュメントが、SQL Server 2016 がリリースされた当時からいろいろと更新されていたようでしたのでメモとして。

Written by masayuki.ozawa

8月 23rd, 2017 at 12:41 am

SQL Server 2017 のクロスプラットフォームの AlwaysOn

leave a comment

SQL Server 2017 では、クロスプラットフォームの AlwaysOn が構築できるようになっています。

Setting up SQL Server High-Availability between Windows and Linux with SQL Server 2017 では分散型可用性グループで構築を行っていたようなのですが、クラスターレス可用性グループで構築することができるのかなと思って試してみました。

Read the rest of this entry »

Written by masayuki.ozawa

8月 17th, 2017 at 10:41 pm