SQL Server Machine Learning Services (Python と R) とは

適用対象: SQL Server 2017 (14.x) 以降 Azure SQL Managed Instance

Machine Learning Services は、リレーショナル データを使用して Python および R スクリプトを実行できるようになる SQL Server の機能です。 オープンソースのパッケージとフレームワーク、および予測分析と機械学習用の Microsoft Python および R パッケージを使用できます。 スクリプトは、SQL Server の外部またはネットワーク経由でデータを移動することなく、データベース内で実行されます。 この記事では、SQL Server Machine Learning Services の基本と開始方法について説明します。

注意

Machine Learning Services は、Azure SQL Managed Instance でもご利用いただけます。 他の SQL プラットフォームの機械学習については、SQL 機械学習のドキュメントを参照してください。

注意

Machine Learning Services は、Azure SQL Managed Instance でもご利用いただけます。 他の SQL プラットフォームの機械学習については、SQL 機械学習のドキュメントを参照してください。

SQL Server で Java を実行する方法については、Java 言語拡張のドキュメントを参照してください。

SQL Server で C# を実行する方法については、C# 言語拡張のドキュメントを参照してください。

SQL Server で Python および R スクリプトを実行する

SQL Server Machine Learning Services では、データベース内で Python および R スクリプトを実行できます。 この機能を使用して、データの準備とクリーンアップ、特徴エンジニアリング、およびデータベース内での機械学習モデルのトレーニング、評価、およびデプロイを行うことができます。 この機能により、データが存在する場所でスクリプトが実行され、ネットワークを介して別のサーバーにデータが転送されなくなります。

ストアド プロシージャ sp_execute_external_script を使用して、SQL Server インスタンスで Python および R のスクリプトを実行できます。

Python と R のベース ディストリビューションは Machine Learning Services に含まれています。 Microsoft パッケージに加え、PyTorch、TensorFlow、scikit-learn などのオープンソースのパッケージとフレームワークをインストールして使用できます。

Machine Learning Services では、SQL Server での Python および R スクリプトの実行に拡張フレーム ワークを使用します。 このしくみについては以下を参照してください。

Machine Learning Services の概要

  1. Linuxまたは Windows に SQL Server Machine Learning Services をインストールする。 また、ビッグ データ クラスターで Machine Learning Services を使用したり、Azure SQL Managed Instance で Machine Learning Services を使用したりすることもできます。

  2. 開発ツールを構成します。 「Azure Data Studio のノートブックで Python スクリプトと R スクリプトを実行する」を使用できます。 Azure Data Studio で T-SQL を実行することもできます。

  3. 初めての Python または R スクリプトを作成する。

Python および R のバージョン

以下に、Machine Learning Services に含まれる Python および R のバージョンの一覧を示します。

SQL Server のバージョン 累積的な更新プログラム Python ランタイムのバージョン R ランタイムのバージョン
SQL Server 2022* RTM 以降 3.10.2 4.2.0
SQL Server 2019 RTM 以降 3.7.1 3.5.2
SQL Server 2017 CU22 以降 3.5.2 および 3.7.2 3.3.3 および 3.5.2
SQL Server 2017 RTM - CU21 3.5.2 3.3.3
SQL Server 2016 R バージョン」を参照してください。

* サポートされているバージョンの R および Python と、RevoScaleR および revoscalepy パッケージについては、Windows で SQL Server 2022 Machine Learning Services (Python と R) をインストールする方法に関するページまたは Linux で SQL Server Machine Learning Services (Python と R) をインストールする方法に関するページを参照してください。

Python および R パッケージ

Microsoft のエンタープライズ パッケージに加えて、オープンソース パッケージとフレームワークを使用できます。 最も一般的なオープンソースの Python および R パッケージは、Machine Learning Services にプレインストールされています。

注意

SQL Server 2022 (16.x) 以降、R、Python、Java のランタイムは SQL セットアップでインストールされなくなりました。 代わりに、R または Python のカスタム ランタイムとパッケージをインストールします。 詳細については、Windows で SQL Server 2022 Machine Learning Services をインストールする方法に関するページまたは Linux で SQL Server Machine Learning Services (Python と R) をインストールする方法に関するページを参照してください。

インストール時、Microsoft の次の Python および R パッケージも含まれています。

Language Package 説明
Python revoscalepy スケーラブルな Python 用のプライマリ パッケージ。 データの変換と操作、統計の概要、視覚化、および多くの形式のモデリング。 さらに、このパッケージの関数により、並列処理に使用できるコア全体にワークロードが自動的に分散されます。
Python microsoftml SQL Server 2016、SQL Server 2017、SQL Server 2019 にのみ適用されます。 テキスト分析、画像分析、感情分析のカスタム モデルを作成する機械学習アルゴリズムを追加します。
R RevoScaleR スケーラブルな R の主要パッケージ。データの変換と操作、統計の概要、視覚化、多くの形式のモデリング。 さらに、このパッケージの関数により、並列処理に使用できるコア全体にワークロードが自動的に分散されます。
R MicrosoftML (R) SQL Server 2016、SQL Server 2017、SQL Server 2019 にのみ適用されます。 テキスト分析、画像分析、感情分析のカスタム モデルを作成する機械学習アルゴリズムを追加します。
R olapR SQL Server 2016、SQL Server 2017、SQL Server 2019 にのみ適用されます。 SQL Server Analysis Services OLAP キューブに対する MDX クエリに使用される R 関数。
R sqlrutils SQL Server 2016、SQL Server 2017、SQL Server 2019 にのみ適用されます。 T-SQL ストアド プロシージャで R スクリプトを使用し、そのストアド プロシージャをデータベースに登録し、R 開発環境からストアド プロシージャを実行するメカニズム。
R Microsoft R Open (廃止) 適用先: SQL Server 2016、SQL Server 2017、SQL Server 2019。

Microsoft R Open (MRO) は、Microsoft の R の拡張ディストリビューションでした。

Machine Learning Services と共にインストールされるパッケージと、他のパッケージをインストールする方法の詳細については、以下を参照してください。

次のステップ