Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőre vonatkozik:: SQL Server 2016 (13.x)
SQL Server 2017 (14.x)
SQL Server 2019 (15.x)
Ez a cikk bemutatja, hogyan telepíthető a SQL Server Machine Learning Services Windowsra. A Machine Learning Services használatával Python- és R-szkripteket futtathat az adatbázisban.
Fontos
Ezek az utasítások a SQL Server 2016 (13.x), SQL Server 2017 (14.x) és SQL Server 2019 (15.x) verziókra vonatkoznak. A SQL Server 2022 (16.x) esetében lásd: SQL Server 2022 Mesterséges Intelligencia Szolgáltatások telepítése Windows rendszeren.
Python és R verzióra vonatkozó referencia
Az alábbi táblázat az egyes SQL Server kiadások Python és R futtatókörnyezeti verzióit mutatja be. Ezzel a táblával meghatározhatja, hogy mely nyelvi verziók érhetők el a SQL Server-példányhoz.
| SQL Server verzió | Python verzió | R-verzió |
|---|---|---|
| SQL Server 2016 (13.x) | N/A (csak R) | 3.2.2 |
| SQL Server 2017 (14.x) RTM – CU21 | 3.5.2 | 3.3.3 |
| SQL Server 2017 (14.x) CU22 és újabb | 3.5.2 és 3.7.2 | 3.3.3 és 3.5.2 |
| SQL Server 2019 (15.x) | 3.7.1 | 3.5.2 |
| SQL Server 2022 (16.x) | 3.10.2 | 4.2.0 |
Megjegyzés:
A 2022-SQL Server (16.x) verziótól kezdve az R, Python és Java futtatókörnyezetei már nem telepíthetők SQL Server telepítővel. Ehelyett telepítse a kívánt egyéni futtatókörnyezeteket és csomagokat. További információ: Install SQL Server 2022 Machine Learning Services on Windows.
További információ az összes támogatott verzióról: Mi az SQL Server Machine Learning Szolgáltatások?
Előtelepítési ellenőrzőlista
Adatbázismotor-példányra van szükség. Nem telepíthet csak Python vagy R szolgáltatásokat, bár növekményesen hozzáadhatja őket egy meglévő különálló példányhoz.
Az üzletmenet-folytonosság érdekében Always On rendelkezésre állási csoportok támogatottak Machine Learning Szolgáltatások esetében. Telepítse a Machine Learning-szolgáltatásokat, és konfigurálja a csomagokat minden csomóponton.
A Machine Learning Services telepítése nem támogatott egy Always On feladatátvételi fürt példányon a SQL Server 2017-ben. Az SQL Server 2019 és az annál újabb verziók támogatottak. A telepítéskor telepítenie kell Machine Learning szolgáltatásokat, és a telepítés után nem vehetők fel funkciók egy meglévő feladatátvevő fürtpéldányra.
Ne telepítse a Machine Learning-szolgáltatásokat tartományvezérlőre. A beállítás Machine Learning-szolgáltatások része sikertelen lesz.
Ne telepítse a Shared Features>Machine Learning Server (önálló) ugyanazon a számítógépen, amely adatbázispéldányt futtat. A különálló kiszolgálók ugyanazokért az erőforrásokért versenyeznek, és csökkentik mindkét telepítés teljesítményét.
A Python és az R más verzióival való párhuzamos telepítés támogatott, de nem javasoljuk. Ez azért támogatott, mert a SQL Server példány a nyílt forráskódú R- és Anaconda-disztribúciók saját példányait használja. Nem javasoljuk, mert a SQL Server kívüli számítógépen Python és R-t használó kód futtatása problémákhoz vezethet:
- Ha egy másik tárat és különböző végrehajtható fájlokat használ, olyan eredményeket hoz létre, amelyek nem összhangban vannak a SQL Server futtatott fájlokkal.
- SQL Server nem tudja kezelni a külső kódtárakban futó R- és Python-szkripteket, ami erőforrás-versengéshez vezet.
Megjegyzés:
Machine Learning szolgáltatások alapértelmezés szerint telepítve vannak a SQL Server Big Data Clusters. Big Data Cluster használata esetén nem kell követnie a cikkben szereplő lépéseket. További információ: Az Machine Learning-szolgáltatások (Python és R) használata Big Data Clusters.
Fontos
A telepítés befejezése után mindenképpen végezze el a cikkben ismertetett konfiguráció utáni lépéseket. Ezek a lépések magukban foglalják a SQL Server külső szkriptek használatát, valamint olyan fiókok hozzáadását, amelyek szükségesek ahhoz, hogy SQL Server R- és Python-feladatokat futtasson az Ön nevében. A konfigurációs módosítások általában a példány újraindítását vagy a Launchpad szolgáltatás újraindítását igénylik.
A telepítési adathordozó lekérése
A SQL Server letöltési helye a kiadástól függ:
SQL Server Enterprise, Standard és Express kiadások. Ezek a kiadások éles használatra vannak licencelve. Az Enterprise és Standard kiadások esetén forduljon a szoftver gyártójához a telepítési adathordozóhoz. A vásárlási információkat és a Microsoft-partnerek címtárát a Microsoft vásárlási webhelyén találja.
Arról, hogy mely SQL Server kiadások támogatják a Python és az R-integrációt a Machine Learning-szolgáltatásokkal, tekintse meg a Editions és a 2017 SQL Server támogatott funkcióit.
További információ arról, hogy mely SQL Server kiadások támogatják a Python és az R-integrációt a Machine Learning-szolgáltatásokkal: Editions and supported features of SQL Server 2019.
A beállítás futtatása
Helyi telepítések esetén rendszergazdaként kell futtatnia a telepítést. Ha távoli megosztásból telepít SQL Server, olyan tartományi fiókot kell használnia, amely olvasási és végrehajtási engedélyekkel rendelkezik a távoli megosztáson.
Indítsa el a beállítási varázslót SQL Server.
A Installation lapon válassza az Új SQL Server önálló telepítés vagy funkciók hozzáadása egy meglevő telepítéshez lehetőséget.
A Funkciókijelölés lapon válassza az alábbi beállításokat:
Database Engine Szolgáltatások
Az R és Python SQL Server való használatához telepítenie kell az adatbázismotor egy példányát. Használhat egy alapértelmezett vagy egy elnevezett példányt is.
Machine Learning Services (In-Database)
Ez a beállítás telepíti az R és Python szkript végrehajtását támogató adatbázis-szolgáltatásokat.
Database Engine Szolgáltatások
Az R vagy Python SQL Server való használatához telepítenie kell az adatbázismotor egy példányát. Használhat egy alapértelmezett vagy egy elnevezett példányt is.
Machine Learning szolgáltatások és nyelvi bővítmény
Ez a beállítás telepíti az R és Python szkript végrehajtását támogató adatbázis-szolgáltatásokat.
R
Ezt a lehetőséget választva hozzáadhatja a Microsoft R-csomagokat, az értelmezőt és a nyílt forráskódú R-t.
Python
Válassza ezt a lehetőséget a Microsoft Python-csomagok, a Python futtatható fájl, valamint az Anaconda-disztribúció választható könyvtárainak hozzáadásához. A SQL Server kiadásban szereplő konkrét Python verzióról lásd a Python és az R verzióra vonatkozó referenciát.
A Java telepítéséről és használatáról további információt a Install SQL Server Java Language Extension on Windows című témakörben talál.
Képernyőkép, amely az R és Python funkcióinak kiválasztását mutatja. Beállítási lehetőségek R-hez és Pythonhoz Megjegyzés:
Ne válassza a Machine Learning Kiszolgáló (önálló) lehetőséget a Shared Features területen. Ez a beállítás egy külön számítógépen való használatra szolgál.
A Microsoft R Open telepítéséhez való hozzájárulás lapon válassza aTovább>.
A licencszerződés a következőket tartalmazza:
- Microsoft R Open.
- Nyílt forráskódú R-alapcsomagok és -eszközök.
- Továbbfejlesztett R-csomagok és kapcsolatszolgáltatók a Microsoft fejlesztői csapatától.
A Hozzájárulás Python telepítéséhez lapon válassza az Elfogad>Tovább lehetőséget. A Python nyílt forráskódú licencszerződés az Anacondára és a kapcsolódó eszközökre, valamint a Microsoft fejlesztői csapatának néhány új Python kódtárára is kiterjed.
Megjegyzés:
Ha a használt számítógép nem rendelkezik internet-hozzáféréssel, akkor ezen a ponton szüneteltetheti a telepítést, hogy külön töltse le a telepítőket. További információ: Gépi tanulási összetevők telepítése internet-hozzáférés nélkül.
A Telepítésre kész lapon ellenőrizze, hogy ezek a beállítások szerepelnek-e, majd válassza a Telepítés elemet:
- Database Engine-szolgáltatások
- Machine Learning szolgáltatások (adatbázison belül)
- R, Python vagy mindkettő
Jegyezze fel a mappa helyét a konfigurációs fájlok tárolási útvonala
..\Setup Bootstrap\Logalatt. Ha a telepítés befejeződött, áttekintheti a telepített összetevőket az összefoglaló fájlban.A telepítés befejezése után, ha a rendszer arra utasítja, hogy indítsa újra a számítógépet, tegye meg. Fontos, hogy a telepítés befejezésekor olvassa el a telepítővarázsló üzenetét. További információ: Nézet és SQL Server beállítási naplófájlok megtekintése.
A Microsoft R Open telepítéséhez való hozzájárulás lapon válassza aTovább>. Ez a licencszerződés a Microsoft R Openre vonatkozik, amely magában foglalja a nyílt forráskódú R alapcsomagok és -eszközök terjesztését. Emellett továbbfejlesztett R-csomagokat és kapcsolódási szolgáltatókat is tartalmaz a Microsoft fejlesztői csapatától.
A Python telepítési beleegyezés lapon válassza az Elfogadás>Tovább lehetőséget. A Python nyílt forráskódú licencszerződés az Anacondára és a kapcsolódó eszközökre, valamint a Microsoft fejlesztői csapatának néhány új Python kódtárára is kiterjed.
A Telepítésre kész lapon ellenőrizze, hogy ezek a beállítások szerepelnek-e, majd válassza a Telepítés elemet:
- Database Engine-szolgáltatások
- Machine Learning szolgáltatások (adatbázison belül)
- R, Python vagy mindkettő
Jegyezze fel a mappa helyét a konfigurációs fájlok tárolási útvonala
..\Setup Bootstrap\Logalatt. Ha a telepítés befejeződött, áttekintheti a telepített összetevőket az összefoglaló fájlban.A telepítés befejezése után, ha a rendszer arra utasítja, hogy indítsa újra a számítógépet, tegye meg. A telepítés befejezésekor fontos elolvasni a telepítővarázsló üzenetét. További információ: Nézet és SQL Server beállítási naplófájlok megtekintése.
Környezeti változók beállítása
Csak az R-funkciók integrációjához állítsa be a környezeti változót, hogy biztosítsa az MKL_CBWR Intel Math Kernel Library (MKL) számításainak konzisztens kimenetét :
A Control Panel válassza a Rendszer és biztonság>System>A rendszerbeállítások>Környezeti változók lehetőséget.
Hozzon létre egy új felhasználót vagy rendszerváltozót:
- Állítsa a változó nevét a következőre
MKL_CBWR: . - Állítsa a változó értékét a következőre
AUTO: .
- Állítsa a változó nevét a következőre
Ehhez a lépéshez újra kell indítani a kiszolgálót. Ha engedélyezni szeretné a szkriptek végrehajtását, az újraindítást mindaddig szüneteltetheti, amíg az összes konfigurációs munka el nem készül.
Szkript végrehajtásának engedélyezése
A SQL Server Management Studio (SSMS) használatával csatlakozzon ahhoz a példányhoz, ahol a SQL Server Machine Learning Servicest telepítette.
Válassza az Új lekérdezés lehetőséget egy lekérdezési ablak megnyitásához, majd futtassa a következő parancsot:
EXEC sp_configureA tulajdonság
external scripts enabledértékének ezen a ponton kell lennie0. A funkció alapértelmezés szerint ki van kapcsolva. Ha r- vagy Python szkriptek futtatásához szeretné bekapcsolni, futtassa a következő utasítást:EXEC sp_configure 'external scripts enabled', 1 RECONFIGURE WITH OVERRIDEHa már engedélyezte a funkciót az R nyelvhez, nem szükséges
RECONFIGUREmásodszor futtatnia a Python. A mögöttes bővíthetőségi platform mindkét nyelvet támogatja.
A szolgáltatás újraindítása
Ha a telepítés befejeződött, indítsa újra az adatbázismotort. A szolgáltatás újraindítása automatikusan újraindítja a kapcsolódó SQL Server Launchpad szolgáltatást is.
A szolgáltatást az alábbi módszerek bármelyikével újraindíthatja:
- Kattintson a jobb gombbal az SSMS Object Explorerben található példányra, majd válassza a Újraindítás parancsot.
- A Szolgáltatások Microsoft Management Console (MMC) eleme a Vezérlőpultban
- SQL Server Configuration Manager
Telepítés ellenőrzése
A következő lépésekkel ellenőrizheti, hogy a külső szkriptek indításához használt összes összetevő fut-e:
A SQL Server Management Studio nyisson meg egy új lekérdezési ablakot, és futtassa a következő parancsot:
EXECUTE sp_configure 'external scripts enabled'Ezután a(z)
run_valuea(z)1-re/-ra van állítva.Nyissa meg a Szolgáltatások vezérlőpultelemet vagy SQL Server Configuration Manager, és ellenőrizze, hogy fut-e a SQL Server Launchpad szolgáltatás. Minden olyan adatbázismotor-példányhoz rendelkeznie kell egy szolgáltatással, amely rendelkezik R vagy Python telepítve. További információ a szolgáltatásról: Az SQL Server Machine Learning Services bővíthetőségi architektúrája.
Ha a Launchpad fut, futtathat egyszerű Python és R-szkripteket annak ellenőrzéséhez, hogy a külső szkriptelési futtatókörnyezetek képesek-e kommunikálni SQL Server.
Nyisson meg egy új Query ablakot SQL Server Management Studio, majd futtasson egy szkriptet, például:
R esetén:
EXEC sp_execute_external_script @language =N'R', @script=N' OutputDataSet <- InputDataSet; ', @input_data_1 =N'SELECT 1 AS hello' WITH RESULT SETS (([hello] int not null)); GOPython esetén:
EXEC sp_execute_external_script @language =N'Python', @script=N' OutputDataSet = InputDataSet; ', @input_data_1 =N'SELECT 1 AS hello' WITH RESULT SETS (([hello] int not null)); GO
A külső szkript futtatókörnyezetének első betöltésekor a szkript futtatása eltarthat egy kicsit. Az eredményeknek a következőhöz hasonlónak kell lenniük:
hello 1
Megjegyzés:
A Python szkriptben használt oszlopok vagy címsorok nem lesznek automatikusan visszaadva. Ha oszlopneveket szeretne hozzáadni a kimenethez, meg kell adnia a visszatérési adatkészlet sémáját. Ehhez használja a WITH RESULTS tárolt eljárás paraméterét, az oszlopok elnevezését és az SQL-adattípus megadását.
Hozzáadhatja például a következő sort egy tetszőleges oszlopnév létrehozásához: WITH RESULT SETS ((Col1 AS int)).
Frissítések alkalmazása
Meglévő telepítés
Ha Machine Learning-szolgáltatásokat adott hozzá egy meglévő SQL Server-példányhoz, és korábban kumulatív frissítést (CU) alkalmazott, előfordulhat, hogy az adatbázismotor és a Machine Learning Szolgáltatások funkció verziója eltérő lehet. Ez a különbség váratlan viselkedést vagy hibákat okozhat, mert launchpad.exesqlservr.exe különböző verziókkal rendelkezik.
Az alábbi lépéseket követve a Machine Learning-szolgáltatásokat az adatbázismotoréval megegyező verzióra hozhatja:
Határozza meg az adatbázismotor kumulatív frissítését. Futtassa ezt a T-SQL-utasítást:
SELECT @@VERSIONÍme egy példa a SQL Server 2019 CU 8-ból származó kimenetre:
Microsoft SQL Server 2019 (RTM-CU8-GDR) (KB4583459) - 15.0.4083.2 (X64) Nov 2 2020 18:35:09 Copyright (C) 2019 Microsoft Corporation Developer Edition (64-bit) on Windows 10 Enterprise 10.0 (X64) (Build 19042: ) (Hypervisor)További információ: Determine a SQL Server és összetevőinek verzióját, kiadását és frissítési szintjét.
Szükség esetén töltse le az adatbázismotorhoz telepített kumulatív frissítést .
Futtassa a kumulatív frissítés telepítését, és kövesse az utasításokat a Machine Learning Services újbóli telepítéséhez. Válassza ki azt a meglévő példányt, amelyben a Machine Learning Services telepítve van. A frissítés állapota hiányosan telepítve jelenik meg a Funkcióválasztás lapon.
Válassza a Tovább lehetőséget, és folytassa a telepítést.
Új telepítés
Ha a Machine Learning-szolgáltatásokat a SQL Server adatbázismotor új telepítésével telepíti, javasoljuk, hogy a legújabb kumulatív frissítést alkalmazza az adatbázismotorra és machine learning összetevőkre is.
Az internetkapcsolattal rendelkező eszközökön a kumulatív frissítéseket általában a Windows Update-en keresztül alkalmazzák. A szabályozott frissítésekhez azonban az alábbi lépéseket is használhatja. Amikor alkalmazza az adatbázismotor frissítését, a telepítő összesítő frissítést kér be az ugyanazon példányra telepített összes Python vagy R szolgáltatáshoz.
A leválasztott kiszolgálók további lépéseket igényelnek. További információ: Telepítés internet-hozzáférés > nélküli számítógépeken Összegző frissítések alkalmazása.
Kezdje egy már telepített alappéldánysal: SQL Server kezdeti kiadás.
Válassza ki a legújabb kumulatív frissítést. A rendszer automatikusan letölt és kinyer egy végrehajtható fájlt.
Futtassa a telepítőt, és fogadja el a licencfeltételeket.
A Funkcióválasztás lapon tekintse át azokat a funkciókat, amelyekhez kumulatív frissítéseket alkalmaz. Az aktuális példányra telepített összes funkciót látnia kell, beleértve a gépi tanulási funkciókat is. A telepítő letölti az összes funkció frissítéséhez szükséges CAB-fájlokat.
Folytassa a varázsló lépésein keresztül. Fogadja el az R és Python disztribúciók licencfeltételeit.
További konfiguráció
Ha a külső szkriptellenőrzési lépés sikeres volt, futtathat R- vagy Python-parancsokat SQL Server Management Studio, Visual Studio Code vagy bármely más ügyfélről, amely T-SQL-utasításokat küldhet a kiszolgálónak.
Ha a parancs futtatásakor hibaüzenet jelenik meg, előfordulhat, hogy további konfigurációkat kell végeznie a szolgáltatásban vagy az adatbázisban. A példány szintjén további konfigurációk lehetnek a következők:
- Konfiguráljon tűzfalat SQL Server Machine Learning Szolgáltatásokhoz
- További hálózati protokollok engedélyezése
- Távoli kapcsolatok engedélyezése
- Bejelentkezés létrehozása az SQLRUserGroup szolgáltatáshoz
- Lemezkvóták kezelése , hogy a külső szkriptek ne futtassanak lemezterületet kimerítő feladatokat
2019 SQL Server Windows az elkülönítési mechanizmus megváltozott. Ez a mechanizmus hatással van az SQLRUserGroupra, a tűzfalszabályokra, a fájlengedélyekre és a vélelmezett hitelesítésre. További információkért olvassa el a izolációs változtatásokat a Machine Learning Services esetében.
Előfordulhat, hogy az adatbázisban konfigurációfrissítésekre van szükség. További információ: Adjon engedélyt a felhasználóknak az SQL Server Machine Learning Services-re.
Megjegyzés:
A további konfiguráció megkövetelése a biztonsági sémától, a SQL Server telepítésének módjától, valamint attól függ, hogy a felhasználók hogyan csatlakozhatnak az adatbázishoz, és hogyan futtathatnak külső szkripteket.
Javasolt optimalizálások
Most, hogy minden működik, érdemes lehet optimalizálni a kiszolgálót a gépi tanulás támogatásához vagy egy előre betanított gépi tanulási modell telepítéséhez.
További feldolgozói fiókok hozzáadása
Ha arra számít, hogy sok felhasználó egyszerre futtat szkripteket, növelheti a Launchpad szolgáltatáshoz rendelt feldolgozói fiókok számát. További információ: Külső szkriptek egyidejű végrehajtásának skálázása SQL Server Machine Learning Szolgáltatásokban.
A kiszolgáló optimalizálása parancsfájl-végrehajtáshoz
A SQL Server beállításának alapértelmezett beállításai a kiszolgáló egyensúlyának optimalizálására szolgálnak számos más szolgáltatáshoz és alkalmazáshoz.
Az alapértelmezett beállítások között a gépi tanulás erőforrásai néha korlátozottak vagy szabályozhatók, különösen a memóriaigényes műveletek esetében.
Annak érdekében, hogy a gépi tanulási feladatok rangsorolása és erőforrás-kezelése megfelelő legyen, javasoljuk, hogy SQL Server Resource Governor használjon külső erőforráskészlet konfigurálásához. Módosíthatja a SQL Server adatbázismotor számára lefoglalt memória mennyiségét, vagy növelheti a SQL Server Launchpad szolgáltatásban futó fiókok számát.
Ha külső erőforrások kezelésére szeretne erőforráskészletet konfigurálni, olvassa el a Külső erőforráskészlet létrehozása című témakört.
Az adatbázis számára fenntartott memória mennyiségének módosításához tekintse meg a kiszolgáló memóriakonfigurációs beállításait.
Az SQL Server Launchpad által elindítható R-fiókok számának módosításához lásd: Külső szkriptek egyidejű végrehajtásának skálázása az SQL Server Machine Learning Servicesben.
Ha standard kiadást használ, és nem rendelkezik Resource Governor, dinamikus felügyeleti nézeteket, SQL Server bővített eseményeket és Windows eseményfigyelést használhat a kiszolgáló erőforrásainak kezeléséhez.
További Python és R-csomagok telepítése
A SQL Server számára létrehozott Python- és R-megoldások meghívhatók:
- Alapfunkciók.
- Az SQL Server telepített védjegyezett csomagjaiból származó függvények.
- Külső csomagok, amelyek kompatibilisek a nyílt forráskódú Python és az R SQL Server telepített verziójával.
Azoknak a csomagoknak, amelyeket a SQL Serverből szeretne használni, az adott példány által használt alapértelmezett tárba kell települniük. Ha a számítógépen külön telepítette a Python vagy az R fájlt, vagy ha felhasználói kódtárakba telepített csomagokat, akkor ezeket a csomagokat nem használhatja a T-SQL-ből.
További csomagok telepítéséhez és kezeléséhez beállíthatja, hogy a felhasználói csoportok adatbázisszinten oszthassák meg a csomagokat, vagy úgy konfigurálhatja az adatbázis-szerepköröket, hogy a felhasználók saját csomagokat telepítsenek. További információ: Új R-csomagok telepítése.
Kapcsolódó tartalom
- Mi az SQL Server Machine Learning Services?
- Install SQL Server 2022 Machine Learning Services on Windows
- Python oktatóanyag: Lineáris regressziós modell üzembe helyezése SQL machine learning használatával
- Python útmutató: Ügyfelek kategorizálása k-means fürtözés alkalmazásával SQL gépi tanulással
- Rövid útmutató: Egyszerű R-szkriptek futtatása AZ SQL Machine Learning használatával
- R-oktatóanyag: NYC taxidíjak előrejelzése bináris besorolással