取得 Python 資訊
適用於:SQL Server 2016 (13.x) 和更新版本 Azure SQL 受控執行個體
此文章描述如何取得在 SQL Server 上的機器學習服務 (部分機器翻譯) 與 SQL Server 2019 巨量資料叢集 (部分機器翻譯) 上所安裝之 R 套件的相關資訊。 範例 R 指令碼會示範如何列出套件資訊,例如安裝路徑與版本。
本文描述如何取得 SQL Server 機器學習服務上所安裝 R 套件的資訊。 範例 R 指令碼會示範如何列出套件資訊,例如安裝路徑與版本。
本文描述如何取得 Azure SQL 受控執行個體機器學習服務上所安裝 R 套件的資訊。 範例 R 指令碼會示範如何列出套件資訊,例如安裝路徑與版本。
注意
功能和安裝選項會因 SQL Server 的版本而異。 使用版本選取器下拉式清單來選擇適當的 SQL Server 版本。
預設 R 程式庫位置
搭配 SQL Server 安裝機器學習時,會針對您安裝的每個語言在執行個體層次建立單一套件程式庫。 在 Windows 上,執行個體程式庫是一個向 SQL Server 註冊的受保護資料夾。
所有在 SQL Server 上資料庫內執行的指令碼都必須從執行個體程式庫載入函式。 SQL Server 無法存取安裝至其他程式庫的套件。 這也適用於遠端用戶端:任何在伺服器計算內容中執行的 R 指令碼都只能使用安裝在執行個體程式庫中的套件。 為了保護伺服器資產,只有電腦系統管理員才能修改預設執行個體程式庫。
R 的二進位檔預設路徑是:
C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\R_SERVICES\library
這會假設預設 SQL 執行個體 MSSQLSERVER。 如果將 SQL Server 安裝成使用者定義的具名執行個體,則會改用指定的名稱。
R 的二進位檔預設路徑是:
C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\R_SERVICES\library
這會假設預設 SQL 執行個體 MSSQLSERVER。 如果將 SQL Server 安裝成使用者定義的具名執行個體,則會改用指定的名稱。
R 的二進位檔預設路徑是:
C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\R_SERVICES\library
這會假設預設 SQL 執行個體 MSSQLSERVER。 如果將 SQL Server 安裝成使用者定義的具名執行個體,則會改用指定的名稱。
執行下列陳述式來確認目前執行個體的預設 R 套件程式庫:
EXECUTE sp_execute_external_script
@language = N'R',
@script = N'OutputDataSet <- data.frame(.libPaths());'
WITH RESULT SETS (([DefaultLibraryName] VARCHAR(MAX) NOT NULL));
GO
預設 Microsoft R 套件
以下是與 SQL Server R Services 一起安裝的 Microsoft R 套件。
Packages | 版本 | 描述 |
---|---|---|
RevoScaleR | 8.0.3 | 用於遠端計算內容、串流、平行執行 rx 函式以進行資料匯入與轉換、模型化、視覺化,以及分析。 |
sqlrutils | 1.0.0 | 用於將 R 指令碼包含在預存程序中。 |
預設 Microsoft R 套件
以下是您在安裝期間選取 R 功能時,與 SQL Server 機器學習服務一起安裝的 Microsoft R 套件。
Packages | 版本 | 描述 |
---|---|---|
RevoScaleR | 9.2 | 用於遠端計算內容、串流、平行執行 rx 函式以進行資料匯入與轉換、模型化、視覺化,以及分析。 |
sqlrutils | 1.0.0 | 用於將 R 指令碼包含在預存程序中。 |
MicrosoftML | 1.4.0 | 在 R 中新增機器學習演算法。 |
olapR | 1.0.0 | 用於在 R 中撰寫 MDX 陳述式。 |
預設 Microsoft R 套件
以下是您在安裝期間選取 R 功能時,與 SQL Server 機器學習服務一起安裝的 Microsoft R 套件。
Packages | 版本 | 描述 |
---|---|---|
RevoScaleR | 9.4.7 | 用於遠端計算內容、串流、平行執行 rx 函式以進行資料匯入與轉換、模型化、視覺化,以及分析。 |
sqlrutils | 1.0.0 | 用於將 R 指令碼包含在預存程序中。 |
MicrosoftML | 9.4.7 | 在 R 中新增機器學習演算法。 |
olapR | 1.0.0 | 用於在 R 中撰寫 MDX 陳述式。 |
元件升級
預設會透過 Service Pack 和累積更新重新整理 R 套件。 額外套件與核心 R 元件的完整版本升級只有透過產品升級才可能實現。
此外,您也可以透過元件升級將 MicrosoftML 和 olapR 套件新增至 SQL Server 執行個體。
預設的開放原始碼 R 套件
R 支援包括開放原始碼 R,因此您可以呼叫基底 R 函式及安裝額外的開放原始碼和協力廠商套件。 R 語言支援包括「基底」、「統計資料」、「公用程式」等核心功能。 R 的基礎安裝也包括眾多範例資料集和標準 R 工具,例如 RGui (輕量型互動式編輯器) 和 RTerm (R 命令提示字元)。
如需每個 SQL Server 版本隨附的 R 版本相關資訊,請參閱 Python 和 R 版本。
重要
您一律不應手動以 Web 上較新的版本覆寫 SQL Server 安裝程式所安裝的 R 版本。 Microsoft R 套件以特定 R 版本為基礎。修改安裝可能使其變得不穩定。
列出所有已安裝的 R 套件
下列範例使用 Transact-SQL 預存程序中的 R 函式 installed.packages()
,來顯示已在目前 SQL 執行個體的 R_SERVICES 程式庫中安裝的 R 套件清單。 此指令碼會傳回 DESCRIPTION 檔案中的套件名稱和版本欄位。
EXECUTE sp_execute_external_script
@language=N'R',
@script = N'str(OutputDataSet);
packagematrix <- installed.packages();
Name <- packagematrix[,1];
Version <- packagematrix[,3];
OutputDataSet <- data.frame(Name, Version);',
@input_data_1 = N'
'
WITH RESULT SETS ((PackageName nvarchar(250), PackageVersion nvarchar(max) ))
如需有關 R 套件 DESCRIPTION 欄位中選擇性欄位與預設欄位的詳細資訊,請參閱 https://cran.r-project.org \(英文\)。
尋找單一 R 套件
如果您已安裝 R 套件並想確定特定 SQL Server 執行個體能夠使用它,您可以執行預存程序來載入套件並傳回訊息。
例如,下列陳述式會尋找並載入 glue 套件 (如果可供使用)。 如果找不到或無法載入套件,您會收到錯誤。
EXECUTE sp_execute_external_script
@language =N'R',
@script=N'
require("glue")
'
若要查看有關此套件的詳細資訊,請檢視 packageDescription
。
下列陳述式會傳回 MicrosoftML 套件的資訊。
EXECUTE sp_execute_external_script
@language = N'R',
@script = N'
print(packageDescription("MicrosoftML"))
'