Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí na: SQL Server 2019 (15.x) a novější verze
Azure SQL Managed Instance
Tento článek popisuje, jak používat funkce v balíčku sqlmlutils k instalaci balíčků R do instance služby Machine Learning Services na SQL Serveru a v clusterech s velkými objemy dat. Balíčky, které nainstalujete, je možné použít ve skriptech jazyka R spuštěných v databázi pomocí příkazu sp_execute_external_script T-SQL.
Poznámka:
Balíček sqlmlutils popsaný v tomto článku slouží k přidání balíčků R do SQL Serveru 2019 nebo novějšího. Informace o SQL Serveru 2017 a starších verzích najdete v tématu Instalace balíčků pomocí nástrojů jazyka R.
Tento článek popisuje, jak používat funkce v balíčku sqlmlutils k instalaci balíčků R do instance služby Azure SQL Managed Instance Machine Learning Services. Balíčky, které nainstalujete, je možné použít ve skriptech jazyka R spuštěných v databázi pomocí příkazu sp_execute_external_script T-SQL.
Poznámka:
Balíčky, které byly předinstalované v instanci služby SQL Managed Instance Machine Learning Services, nelze aktualizovat ani odinstalovat. Pokud chcete zobrazit seznam aktuálně nainstalovaných balíčků, podívejte se na seznam všech nainstalovaných balíčků R.
Požadavky
Nainstalujte R a RStudio Desktop na klientský počítač, který používáte pro připojení k SQL Serveru. Pro spouštění skriptů můžete použít libovolné prostředí IDE jazyka R, ale tento článek předpokládá jazyk RStudio.
Verze R na klientském počítači musí odpovídat verzi jazyka R na serveru a balíčky, které nainstalujete, musí odpovídat verzi jazyka R, kterou máte. Informace o tom, která verze jazyka R je součástí každé verze SQL Serveru, najdete v tématu Python a verze jazyka R.
Pokud chcete ověřit verzi jazyka R na konkrétním SQL Serveru, použijte následující příkaz T-SQL.
EXECUTE sp_execute_external_script @language = N'R' , @script = N'print(R.version)'Nainstalujte Azure Data Studio na klientský počítač, který používáte pro připojení k SQL Serveru. Můžete použít jiné nástroje pro správu databáze nebo dotazy, ale tento článek předpokládá Azure Data Studio.
Ostatní úvahy
Instalace balíčku je specifická pro instanci SQL, databázi a uživatele, které zadáte v informacích o připojení, které zadáte nástroji sqlmlutils. Pokud chcete balíček použít ve více instancích NEBO databázích SQL nebo pro různé uživatele, budete muset balíček nainstalovat pro každý z nich. Výjimkou je, že pokud je balíček nainstalován členem
dbo, balíček je veřejný a je sdílen se všemi uživateli. Pokud uživatel nainstaluje novější verzi veřejného balíčku, nebude to mít vliv na veřejný balíček, ale tento uživatel bude mít přístup k novější verzi.Skript jazyka R spuštěný na SQL Serveru může používat pouze balíčky nainstalované ve výchozí knihovně instancí. SQL Server nemůže načíst balíčky z externích knihoven, i když je tato knihovna na stejném počítači. To zahrnuje knihovny R nainstalované s jinými produkty Microsoftu.
V zajištěném prostředí SQL Serveru se můžete chtít vyhnout následujícímu:
- Balíčky, které vyžadují síťový přístup
- Balíčky, které vyžadují přístup systému souborů se zvýšenými oprávněními
- Balíčky používané pro vývoj webu nebo jiné úlohy, které nemají prospěch spuštěním na SQL Serveru
Instalace nástroje sqlmlutils do klientského počítače
Pokud chcete použít sqlmlutils, musíte ho nejprve nainstalovat do klientského počítače, který používáte pro připojení k SQL Serveru.
Balíček sqlmlutils závisí na balíčku odbc a odbc závisí na řadě dalších balíčků. Následující postupy nainstalují všechny tyto balíčky ve správném pořadí.
Online instalace nástrojů sqlmlutils
Pokud má klientský počítač přístup k internetu, můžete stáhnout a nainstalovat sqlmlutils a jeho závislé balíčky online.
Stáhněte si nejnovější soubor sqlmlutils (
.zippro Windows,.tar.gzpro Linux) z https://github.com/microsoft/sqlmlutils/releases klientského počítače. Nerozbalujte soubor.Otevřete příkazový řádek a spuštěním následujících příkazů nainstalujte balíčky ODBC a sqlmlutils. Nahraďte cestu k souboru sqlmlutils , který jste stáhli. Balíček ODBC je online a nainstalován.
R.exe -e "install.packages('odbc', type='binary')" R.exe CMD INSTALL sqlmlutils_1.0.0.zipR.exe -e "install.packages('odbc')" R.exe CMD INSTALL sqlmlutils_1.0.0.tar.gz
Instalace nástrojů sqlmlutils offline
Pokud klientský počítač nemá připojení k internetu, musíte si předem stáhnout balíčky ODBC a sqlmlutils pomocí počítače, který má přístup k internetu. Soubory pak můžete zkopírovat do složky v klientském počítači a nainstalovat balíčky offline.
Balíček odbc má řadu závislých balíčků a identifikace všech závislostí balíčku je složitá. Doporučujeme použít miniCRAN k vytvoření místní složky úložiště pro balíček, který obsahuje všechny závislé balíčky. Další informace najdete v tématu Vytvoření místního úložiště balíčků R pomocí miniCRAN.
Balíček sqlmlutils se skládá z jednoho souboru, který můžete zkopírovat do klientského počítače a nainstalovat.
Na počítači s přístupem k internetu:
Nainstalujte miniCRAN. Podrobnosti najdete v tématu Instalace miniCRAN .
V RStudio spusťte následující skript jazyka R, který vytvoří místní úložiště odbc balíčku. Tento příklad předpokládá, že úložiště se vytvoří ve složce
odbc.library("miniCRAN") CRAN_mirror <- c(CRAN = "https://cran.microsoft.com") local_repo <- "odbc" pkgs_needed <- "odbc" pkgs_expanded <- pkgDep(pkgs_needed, repos = CRAN_mirror); makeRepo(pkgs_expanded, path = local_repo, repos = CRAN_mirror, type = "win.binary", Rversion = "3.5");library("miniCRAN") CRAN_mirror <- c(CRAN = "https://cran.microsoft.com") local_repo <- "odbc" pkgs_needed <- "odbc" pkgs_expanded <- pkgDep(pkgs_needed, repos = CRAN_mirror); makeRepo(pkgs_expanded, path = local_repo, repos = CRAN_mirror, type = "source", Rversion = "3.5");RversionPro hodnotu použijte verzi jazyka R nainstalovanou na SQL Serveru. Pokud chcete ověřit nainstalovanou verzi, použijte následující příkaz T-SQL.EXECUTE sp_execute_external_script @language = N'R' , @script = N'print(R.version)'Stáhněte si nejnovější soubor sqlmlutils (
.zippro Windows,.tar.gzpro Linux) z https://github.com/microsoft/sqlmlutils/releases. Nerozbalujte soubor.Zkopírujte celou složku úložiště ODBC a soubor sqlmlutils do klientského počítače.
Na klientském počítači, který používáte pro připojení k SQL Serveru:
Otevřete příkazový řádek.
Spuštěním následujících příkazů nainstalujte odbc a potom sqlmlutils. Nahraďte úplné cesty ke složce úložiště odbc a souboru sqlmlutils , který jste zkopírovali do tohoto počítače.
R.exe -e "install.packages('odbc', repos='odbc')" R.exe CMD INSTALL sqlmlutils_1.0.0.zipR.exe -e "install.packages('odbc', repos='odbc')" R.exe CMD INSTALL sqlmlutils_1.0.0.tar.gz
Přidání balíčku R na SQL Serveru
V následujícím příkladu přidáte balíček glue do SQL Serveru.
Přidání balíčku online
Pokud má klientský počítač, který používáte pro připojení k SQL Serveru, přístup k internetu, můžete použít nástroj sqlmlutils k vyhledání balíčku glue a všech závislostí online a poté nainstalovat balíček do instance SQL Serveru vzdáleně.
Na klientském počítači otevřete RStudio a vytvořte nový soubor skriptu jazyka R .
Pomocí následujícího skriptu jazyka R nainstalujte balíček připevnění pomocí sqlmlutils. Nahraďte vlastní informace o připojení k databázi SQL Serveru.
library(sqlmlutils) connection <- connectionInfo( server = "server", database = "database", uid = "username", pwd = "password") sql_install.packages(connectionString = connection, pkgs = "glue", verbose = TRUE, scope = "PUBLIC")Návod
Obor může být veřejný nebo soukromý. Veřejný obor je užitečný pro správce databáze k instalaci balíčků, které můžou používat všichni uživatelé. Privátní obor zpřístupňuje balíček jenom uživateli, který ho nainstaluje. Pokud obor nezadáte, výchozí obor je PRIVÁTNÍ.
Přidejte balíček offline
Pokud klientský počítač nemá připojení k internetu, můžete pomocí nástroje miniCRAN stáhnout balíček připevnění pomocí počítače, který má přístup k internetu. Potom balíček zkopírujete do klientského počítače, kde můžete balíček nainstalovat offline. Informace o instalaci miniCRAN najdete v tématu Instalace miniCRAN.
Na počítači s přístupem k internetu:
Spuštěním následujícího skriptu jazyka R vytvořte místní úložiště pro připevnění. Tento příklad vytvoří složku úložiště v souboru
c:\downloads\glue.library("miniCRAN") CRAN_mirror <- c(CRAN = "https://cran.microsoft.com") local_repo <- "c:/downloads/glue" pkgs_needed <- "glue" pkgs_expanded <- pkgDep(pkgs_needed, repos = CRAN_mirror); makeRepo(pkgs_expanded, path = local_repo, repos = CRAN_mirror, type = "win.binary", Rversion = "3.5");library("miniCRAN") CRAN_mirror <- c(CRAN = "https://cran.microsoft.com") local_repo <- "c:/downloads/glue" pkgs_needed <- "glue" pkgs_expanded <- pkgDep(pkgs_needed, repos = CRAN_mirror); makeRepo(pkgs_expanded, path = local_repo, repos = CRAN_mirror, type = "source", Rversion = "3.5");RversionPro hodnotu použijte verzi jazyka R nainstalovanou na SQL Serveru. Pokud chcete ověřit nainstalovanou verzi, použijte následující příkaz T-SQL.EXECUTE sp_execute_external_script @language = N'R' , @script = N'print(R.version)'Zkopírujte celou složku úložiště lepidla (
c:\downloads\glue) do klientského počítače. Zkopírujte ho například do složkyc:\temp\packages\glue.
Na klientském počítači:
Otevřete RStudio a vytvořte nový soubor skriptu jazyka R .
Pomocí následujícího skriptu jazyka R nainstalujte balíček připevnění pomocí sqlmlutils. Nahraďte vlastní informace o připojení k databázi SQL Serveru (pokud nepoužíváte ověřování systému Windows, přidejte
uidapwdparametry).library(sqlmlutils) connection <- connectionInfo( server= "yourserver", database = "yourdatabase") localRepo = "c:/temp/packages/glue" sql_install.packages(connectionString = connection, pkgs = "glue", verbose = TRUE, scope = "PUBLIC", repos=paste0("file:///",localRepo))Návod
Obor může být veřejný nebo soukromý. Veřejný obor je užitečný pro správce databáze k instalaci balíčků, které můžou používat všichni uživatelé. Privátní obor zpřístupňuje balíček jenom uživateli, který ho nainstaluje. Pokud obor nezadáte, výchozí obor je PRIVÁTNÍ.
Použijte balíček
Jakmile je balíček připevnění nainstalovaný, můžete ho použít ve skriptu R na SQL Serveru pomocí příkazu T-SQL sp_execute_external_script .
Otevřete Azure Data Studio a připojte se k databázi SQL Serveru.
Spusťte následující příkaz:
EXECUTE sp_execute_external_script @language = N'R' , @script = N' library(glue) name <- "Fred" birthday <- as.Date("2020-06-14") text <- glue(''My name is {name} '', ''and my birthday is {format(birthday, "%A, %B %d, %Y")}.'') print(text) ';Results
My name is Fred and my birthday is Sunday, June 14, 2020.
Odebrání balíčku
Pokud chcete balíček připevnění odebrat, spusťte následující skript jazyka R. Použijte stejnou proměnnou připojení , kterou jste definovali dříve.
sql_remove.packages(connectionString = connection, pkgs = "glue", scope = "PUBLIC")
Další funkce sqlmlutils
Balíček sqlmlutils obsahuje řadu funkcí pro správu balíčků R a pro vytváření, správu a spouštění uložených procedur a dotazů v SQL Serveru. Podrobnosti najdete v souboru SQLmlutils R README.
Informace o libovolné funkci sqlmlutils naleznete pomocí funkce nápovědy jazyka R nebo operátoru ? . Například:
library(sqlmlutils)
help("sql_install.packages")
Další kroky
- Informace o nainstalovaných balíčcích R najdete v tématu Získání informací o balíčku jazyka R.
- Nápovědu k práci s balíčky R najdete v tématu Tipy k používání balíčků R.
- Informace o instalaci balíčků Pythonu najdete v tématu Instalace balíčků Pythonu pomocí nástroje pip.
- Další informace o službě SQL Server Machine Learning Services najdete v tématu Co je SQL Server Machine Learning Services (Python a R)?