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í pro: SQL Server 2017 (14.x) a novější verze
V tomto tutoriálu pro datové vědce se naučíte, jak vytvořit komplexní řešení pro prediktivní modelování založené na podpoře funkcí R v SQL Server 2017. Tento tutoriál využívá demo databázi NYC Taxi na SQL Server.
Pomocí kombinace kódu R, dat SQL Serveru a vlastních funkcí SQL sestavíte klasifikační model, který označuje pravděpodobnost, že řidič může získat tip na konkrétní jízdu taxíkem. Model R také nasadíte na SQL Server a použijete data serveru k vygenerování skóre na základě modelu.
Tento příklad můžete rozšířit na různé reálné problémy, například na předpovídání reakcí zákazníků na prodejní kampaně nebo předpovídání výdajů či účasti na akcích. Protože můžete model volat z uložené procedury, můžete jej snadno vložit do aplikace.
Protože průvodce je navržen tak, aby R vývojářům představil R služby (In-Database), používá se tam, kde je to možné. To však neznamená, že R je nutně nejlepší nástroj pro každý úkol. V mnoha případech může SQL Server poskytovat lepší výkon, zejména pro úlohy, jako je agregace dat a příprava funkcí. Tyto úlohy můžou zvlášť těžit z nových funkcí SQL Serveru, jako jsou indexy columnstore optimalizované pro paměť. Snažíme se na cestě poukázat na možné optimalizace.
Požadavky
Oprávnění k databázi udělená uživateli databáze namapovaná na přihlášení k SQL Serveru
Integrované vývojové prostředí R, jako je RStudio nebo integrovaný nástroj RGUI, který je součástí jazyka R
Doporučujeme provést tento návod na pracovní stanici klienta. Musíte být schopni se připojit na stejnou síť k počítači s povoleným jazykem R a SQL Serverem. Návody k konfiguraci pracovních stanic najdete v článku Nastavit klienta datové vědy pro vývoj v R na SQL Server.
Případně můžete spustit návod na počítači, který má SQL Server i vývojové prostředí R, ale nedoporučujeme tuto konfiguraci pro produkční prostředí. Pokud potřebujete umístit klienta a server na stejný počítač, nezapomeňte nainstalovat druhou sadu knihoven Microsoft R pro odesílání skriptu R ze vzdáleného klienta. Nepoužívej knihovny R, které jsou nainstalované v programových souborech instance SQL Server. Konkrétně, pokud používáte jeden počítač, potřebujete knihovnu RevoScaleR na obou těchto místech pro podporu klientských a serverových operací.
- C:\Program Files\Microsoft\R Client\R_SERVER\library\RevoScaleR
- C:\Program Files\Microsoft SQL Server\MSSQL14. MSSQLSERVER\R_SERVICES\library\RevoScaleR
Další balíčky R
Tento průvodce vyžaduje několik R knihoven, které nejsou ve výchozím nastavení instalovány jako součást R služeb (In-Database). Balíčky musíte nainstalovat na klienta, na kterém řešení vyvíjíte, i na počítač s SQL Serverem, na kterém řešení nasazujete.
Na klientské pracovní stanici
V prostředí R zkopírujte následující řádky a spusťte kód v okně konzoly (Rgui nebo integrované vývojové prostředí). Některé balíčky také instalují požadované balíčky. Ve všech je nainstalovaných asi 32 balíčků. K dokončení tohoto kroku musíte mít připojení k internetu.
# Install required R libraries, if they are not already installed.
if (!('ggmap' %in% rownames(installed.packages()))){install.packages('ggmap')}
if (!('mapproj' %in% rownames(installed.packages()))){install.packages('mapproj')}
if (!('ROCR' %in% rownames(installed.packages()))){install.packages('ROCR')}
if (!('RODBC' %in% rownames(installed.packages()))){install.packages('RODBC')}
Na serveru
Máte několik možností instalace balíčků na SQL Server. Například SQL Server poskytuje funkci Instalace balíčků R pomocí sqlmlutils, která správcům databází umožňuje vytvářet repozitář balíčků a udělovat uživatelům oprávnění k instalaci vlastních balíčků. Pokud jste ale administrátor na počítači, můžete nové balíčky instalovat pomocí R, pokud instalujete do správné knihovny.
Poznámka:
Na serveru neinstalujte do uživatelské knihovny, i když k tomu budete vyzváni. Pokud instalujete do uživatelské knihovny, instance SQL Server nemůže balíčky najít ani spustit. Další informace naleznete v tématu Instalace balíčků R pomocí sqlmlutils.
Na počítači s SQL Serverem otevřete RGui.exe jako správce. Pokud nainstalujete SQL Server R Services s výchozím nastavením, najdete RGui.exe v
C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\R_SERVICES\bin\x64.Na příkazovém řádku jazyka R spusťte následující příkazy jazyka R:
install.packages("ggmap", lib=grep("Program Files", .libPaths(), value=TRUE)[1])
install.packages("mapproj", lib=grep("Program Files", .libPaths(), value=TRUE)[1])
install.packages("ROCR", lib=grep("Program Files", .libPaths(), value=TRUE)[1])
install.packages("RODBC", lib=grep("Program Files", .libPaths(), value=TRUE)[1])
Tento příklad používá funkci grep jazyka R k vyhledání vektoru dostupných cest a vyhledání cesty, která obsahuje "Program Files". Další informace naleznete v tématu RDocumentation pro základní balíček.
Pokud si myslíte, že balíčky jsou již nainstalovány, zkontrolujte seznam nainstalovaných balíčků spuštěním installed.packages().