Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir: SQL Server 2022 (16.x)
Bu makalede Windows'da Python ve R ile SQL Server Machine Learning Services'ın nasıl yükleneceği gösterilmektedir. Veritabanında Python ve R betiklerini çalıştırmak için Machine Learning Services'i kullanabilirsiniz.
Uyarı
Bu yönergeler Windows'da SQL Server 2022'ye (16.x) özeldir. SQL Server 2016 (13.x), SQL Server 2017 (14.x) veya SQL Server 2019 (15.x) için Windows'a SQL Server Machine Learning Services yüklemek için bkz. Windows'a SQL Server Machine Learning Services (Python ve R) yükleme.
Linux için bkz. Linux'a SQL Server 2019 Machine Learning Services (Python ve R) yükleme.
Önceden yükleme denetim listesi
Veritabanı motoru örneği gereklidir. Yalnızca Python veya R özelliklerini yükleyemezsiniz, ancak bunları mevcut örneğe artımlı olarak ekleyebilirsiniz.
İş sürekliliği için Always On kullanılabilirlik grupları Machine Learning Services için desteklenir. Machine Learning Hizmetleri'ni yükleyin ve her düğümde paketleri yapılandırın.
Machine Learning Hizmetleri'nin yüklenmesi, SQL Server 2019 ve sonraki sürümlerde Always On yük devretme kümelerinde de desteklenir.
Machine Learning Services'i bir etki alanı denetleyicisine yüklemeyin. Kurulumun Machine Learning Services bölümü başarısız olur.
Python ve R'nin diğer sürümleriyle yan yana yükleme desteklenir, ancak bunu önermeyiz. SQL Server örneği kendi açık kaynak R ve Anaconda dağıtım kopyalarını kullandığından desteklenir. SQL Server dışındaki bir bilgisayarda Python ve R kullanan kodu çalıştırmak sorunlara yol açabileceğinden bunu önermiyoruz:
- Farklı bir kitaplık ve farklı yürütülebilir dosyalar kullanmak, SQL Server'da çalıştırdığınızla tutarsız sonuçlar oluşturur.
- SQL Server, dış kitaplıklarda çalışan R ve Python betiklerini yönetemez ve kaynak çekişmesi sağlar.
Önemli
Kurulumu tamamladıktan sonra, bu makalede açıklanan yapılandırma sonrası adımları tamamladığınızdan emin olun. Bu adımlar, SQL Server'ın dış betikleri kullanmasını etkinleştirmeyi içerebilir. Yapılandırma değişiklikleri genellikle örneğin yeniden başlatılmasını veya Launchpad hizmetinin yeniden başlatılmasını gerektirir.
Yükleme medyasını alma
SQL Server'ın indirme konumu sürüme bağlıdır:
SQL Server Enterprise, Standard ve Express sürümleri. Bu sürümler üretim kullanımı için lisanslıdır. Enterprise ve Standard sürümleri için yükleme medyası için yazılım satıcınıza başvurun. Satın alma bilgilerini ve Microsoft iş ortaklarının dizinini Microsoft satın alma web sitesinde bulabilirsiniz.
Kurulumu çalıştırma
Yerel yüklemeler için, kurulumu yönetici olarak çalıştırmanız gerekir. SQL Server'ı uzak bir paylaşımdan yüklerseniz, uzak paylaşımda okuma ve yürütme izinlerine sahip bir etki alanı hesabı kullanmanız gerekir.
Kurulum sırasında herhangi bir yükleme hatasıyla karşılaşırsanız, Kurulum Bootstrap günlük klasöründeki özet günlüğü denetleyin (örneğin, %ProgramFiles%\Microsoft SQL Server\160\Setup Bootstrap\Log\Summary.txt).
SQL Server 2022 Kurulum sihirbazını başlatın.
Yükleme sekmesinde Yeni SQL Server tek başına yükleme'yi seçin veya var olan bir yüklemeye özellik ekleyin.
Özellik Seçimi sayfasında şu seçenekleri belirleyin:
Veritabanı Altyapısı Hizmetleri
R veya Python'ı SQL Server ile kullanmak için veritabanı altyapısının bir örneğini yüklemeniz gerekir. Varsayılan veya adlandırılmış örnek kullanabilirsiniz.
Makine Öğrenimi Hizmetleri ve Diller
Bu seçenek, R ve Python betik yürütmesini destekleyen veritabanı hizmetlerini yükler.
Bu ekran görüntüsünde, SQL Server 2022 (16.x) Machine Learning Services'ı ne zaman yüklediğinizi denetlemek için en düşük örnek özellikleri gösterilir.
Çalışma zamanlarını ve paketleri yükleme
SQL Server 2022 (16.x) sürümünden başlayarak R, Python ve Java çalışma zamanları artık SQL Server kurulumuyla birlikte gönderilmez veya yüklenmez. Bunun yerine, özel çalışma zamanlarınızı ve paketlerinizi yüklemek için aşağıdaki bölümleri kullanın.
R desteği ayarlama
R çalışma zamanını yükleme
Windows için R 4.2'nin en son sürümünü indirin ve yükleyin.
CompatibilityAPIveRevoScaleRiçin bağımlılıkları yükleyin. Yüklediğiniz sürümün R terminalinden aşağıdaki komutları çalıştırın:# R Terminal install.packages("iterators") install.packages("foreach") install.packages("R6") install.packages("jsonlite")CompatibilityAPIveRevoScaleRpaketlerinin en son sürümünü indirin ve yükleyin:install.packages("https://aka.ms/sqlml/r4.2/windows/CompatibilityAPI_1.1.0.zip", repos=NULL) install.packages("https://aka.ms/sqlml/r4.2/windows/RevoScaleR_10.0.1.zip", repos=NULL)
SQL Server ile R çalışma zamanını yapılandırma
Yüklü R çalışma zamanını SQL Server ile yapılandırın. Komut satırı yardımcı programını kullanarak
RegisterRext.exevarsayılan sürümü değiştirebilirsiniz. Yardımcı programı, yüklemeye bağlı olan bir R uygulaması klasöründedir. Genellikle içinde bulunur%ProgramFiles%\R\R-4.2.3\library\RevoScaleR\rxLibs\x64.Yüklü R çalışma zamanını yükleme klasörü konumundan
RegisterRext.exeyapılandırmak için aşağıdaki betiği kullanabilirsiniz. SQL Server'ın varsayılan bir örneği için örnek adıMSSQLSERVER, veya adlandırılmış bir SQL Server örneği için örnek adıdır..\RegisterRext.exe /configure /rhome:"%ProgramFiles%\R\R-4.2.3" /instance:"MSSQLSERVER"Normalde ".\SQLEXPRESS" veya "MACHINENAME\SQLEXPRESS" olarak adlandıracağınız adlandırılmış bir SQL Server örneğini yapılandırıyorsanız, yalnızca örnek adını ekleyin. Örneğin:
.\RegisterRext.exe /configure /rhome:"%ProgramFiles%\R\R-4.2.3" /instance:"SQLEXPRESS"SQL Server Machine Learning Services'ı yüklediğiniz örneğe bağlanmak için SQL Server Management Studio'yu (SSMS) kullanın. Yeni Sorgu'yu seçerek bir sorgu penceresi açın ve ardından dış betik özelliğini etkinleştirmek için aşağıdaki komutu çalıştırın:
EXEC sp_configure 'external scripts enabled', 1; RECONFIGURE WITH OVERRIDEÖzelliği başka bir dil için zaten etkinleştirdiyseniz R için ikinci kez çalıştırmanız
RECONFIGUREgerekmez. Temel alınan genişletilebilirlik platformu her iki dili de destekler. Doğrulamak için, aşağıdaki komutun1veconfig_valueiçinrun_valuedöndürdüğünü onaylayın.EXEC sp_configure 'external scripts enabled';SQL Server hizmetini yeniden başlatın. Hizmetin yeniden başlatılması, ilgili SQL Server Launchpad hizmetini de otomatik olarak yeniden başlatır.
SSMS Nesne Gezgini'ndeki örnek için Yeniden Başlat komutuna sağ tıklayarak veya Denetim Masası'ndaki Hizmetler öğesini veya SQL Server Configuration Manager'ı kullanarak hizmeti yeniden başlatabilirsiniz.
R sürümünü döndürmek için basit bir T-SQL komutu çalıştırarak yüklemeyi doğrulayın:
EXEC sp_execute_external_script @script=N'print(R.version)',@language=N'R'; GO
Python desteği ayarlama
Python çalışma zamanını yükleme
Windows için Python 3.10'un en son sürümünü indirin. Aşağıdaki seçenekleri kullanarak yükleyin:
Python Kurulum uygulamasını açın ve Yüklemeyi özelleştir'i seçin.
Tüm kullanıcılar için yükle (önerilen) onay kutusunun seçili olduğunu doğrulayın.
İsteğe Bağlı Özellikler için, istediğiniz özellikleri seçin (veya tümünü seçin).
Gelişmiş Seçenekler sayfasında Tüm kullanıcılar için yükle'yi seçin, diğer varsayılan seçenekleri kabul edin ve ardından Yükle'yi seçin.
Tek bir kullanıcıya özgü olmayan tüm kullanıcıların erişebileceği (örneğin
C:\Program Files\Python310) bir Python yükleme yolu kullanmanızı öneririz.
Paketin en son sürümünü
revoscalepyve bağımlılıklarını yeni bir yükseltilmiş komut isteminden indirin ve yükleyin:cd "C:\Program Files\Python310\" python -m pip install -t "C:\Program Files\Python310\Lib\site-packages" dill numpy==1.22.0 pandas patsy python-dateutil packaging python -m pip install -t "C:\Program Files\Python310\Lib\site-packages" https://aka.ms/sqlml/python3.10/windows/revoscalepy-10.0.1-py3-none-any.whlSQL Server Launchpad Hizmeti'ne ve SID S-1-15-2-1'e (ALL_APPLICATION_PACKAGES) yüklü kitaplıklara OKUMA ve YÜRÜTME erişimi vermek için aşağıdaki icacls komutlarını çalıştırın. Launchpad hizmetiyle ilişkili hizmet hesabına izin vermeniz gerekir, SQL Server Configuration Manager'ı denetleyin.
icacls "C:\Program Files\Python310\Lib\site-packages" /grant "NT Service\MSSQLLAUNCHPAD":(OI)(CI)RX /T icacls "C:\Program Files\Python310\Lib\site-packages" /grant *S-1-15-2-1:(OI)(CI)RX /TSQL Server'ı adlandırılmış örnek olarak yüklediyseniz, hizmet hesabının ortasında bir
$olabilir, örneğin:icacls "C:\Program Files\Python310\Lib\site-packages" /grant "NT Service\MSSQLLAUNCHPAD$SQLEXPRESS":(OI)(CI)RX /T icacls "C:\Program Files\Python310\Lib\site-packages" /grant *S-1-15-2-1:(OI)(CI)RX /T
SQL Server ile Python çalışma zamanını yapılandırma
Yüklenmiş Python çalışma ortamını SQL Server ile yapılandırın. Komut satırı yardımcı programını kullanarak
RegisterRext.exevarsayılan sürümü değiştirebilirsiniz. Yardımcı programı özel yükleme konumundadır (örneğin,C:\Program Files\Python310\Lib\site-packages\revoscalepy\rxLibs).Yükseltilmiş bir komut isteminden, yükleme klasörü konumundan
RegisterRext.exeyüklü Python çalışma zamanını yapılandırmak için aşağıdaki betiği kullanabilirsiniz. SQL Server'ın varsayılan bir örneği için örnek adıMSSQLSERVER, veya adlandırılmış bir SQL Server örneği için örnek adıdır.cd "C:\Program Files\Python310\Lib\site-packages\revoscalepy\rxLibs" .\RegisterRext.exe /configure /pythonhome:"C:\Program Files\Python310" /instance:"MSSQLSERVER"Normalde ".\SQLEXPRESS" veya "MACHINENAME\SQLEXPRESS" olarak adlandıracağınız adlandırılmış bir SQL Server örneğini yapılandırıyorsanız, yalnızca örnek adını ekleyin. Örneğin:
cd "C:\Program Files\Python310\Lib\site-packages\revoscalepy\rxLibs" .\RegisterRext.exe /configure /pythonhome:"C:\Program Files\Python310" /instance:"SQLEXPRESS"SQL Server Machine Learning Services'ı yüklediğiniz örneğe bağlanmak için SQL Server Management Studio'yu (SSMS) kullanın. Yeni Sorgu'yu seçerek bir sorgu penceresi açın ve ardından dış betik özelliğini etkinleştirmek için aşağıdaki komutu çalıştırın:
EXEC sp_configure 'external scripts enabled', 1; RECONFIGURE WITH OVERRIDEÖzelliği başka bir dil için zaten etkinleştirdiyseniz R için ikinci kez çalıştırmanız
RECONFIGUREgerekmez. Temel alınan genişletilebilirlik platformu her iki dili de destekler. Doğrulamak için, aşağıdaki komutun1veconfig_valueiçinrun_valuedöndürdüğünü onaylayın.EXEC sp_configure 'external scripts enabled';SQL Server hizmetini yeniden başlatın. Hizmetin yeniden başlatılması, ilgili SQL Server Launchpad hizmetini de otomatik olarak yeniden başlatır.
SSMS Nesne Gezgini'ndeki örnek için Yeniden Başlat komutuna sağ tıklayarak veya Denetim Masası'ndaki Hizmetler öğesini veya SQL Server Configuration Manager'ı kullanarak hizmeti yeniden başlatabilirsiniz.
Python sürümünü döndürmek için basit bir komut çalıştırarak yüklemeyi doğrulayın:
EXEC sp_execute_external_script @script=N'import sys;print(sys.version)',@language=N'Python' GO
Java yükleme
Java yükleme ve kullanma hakkında bilgi için bkz. Windows'a SQL Server Java Dil Uzantısı yükleme.
Ek yapılandırma
Dış betik doğrulama adımı başarılı olursa SQL Server Management Studio, Visual Studio Code veya sunucuya T-SQL deyimleri gönderebilen diğer istemcilerden R veya Python komutlarını çalıştırabilirsiniz.
Ek yapılandırmanın gerekli olup olmadığı, SQL Server'ı yüklediğiniz güvenlik şemanıza ve kullanıcıların veritabanına bağlanmasını ve dış betikleri çalıştırmasını nasıl beklediğinize bağlıdır.
Komutu çalıştırdığınızda bir hata alırsanız, hizmette veya veritabanında ek yapılandırmalar yapmanız gerekebilir. Örnek düzeyinde ek yapılandırmalar şunları içerebilir:
- SQL Server Machine Learning Services için güvenlik duvarı yapılandırması
- Sunucu ağ protokollerini etkinleştirme veya devre dışı bırakma
- Sunucusu yapılandırması: uzaktan erişim
- SQLRUserGroup için oturum açma oluşturma
- Dış betiklerin disk alanını tüketen görevleri çalıştırmasını önlemek için disk kotalarını yönetme
Windows'da SQL Server 2019'dan başlayarak yalıtım mekanizması değişti. Bu mekanizma SQLRUserGroup, güvenlik duvarı kuralları, dosya izni ve zımni kimlik doğrulamasını etkiler. Daha fazla bilgi için bkz . Windows üzerinde SQL Server: Machine Learning Services için yalıtım değişiklikleri.
Veritabanında yapılandırma güncelleştirmelerine ihtiyacınız olabilir. Daha fazla bilgi için bkz. Veritabanı kullanıcılarına SQL Server Machine Learning Services ile Python ve R betikleri yürütme izni verme.
Önerilen iyileştirmeler
Artık her şey çalışıyor olduğuna göre, sunucuyu makine öğrenmesini destekleyecek şekilde iyileştirmek veya önceden eğitilmiş bir makine öğrenmesi modeli yüklemek isteyebilirsiniz.
Sunucuyu betik yürütme için iyileştirme
SQL Server kurulumu için varsayılan ayarlar, diğer çeşitli hizmetler ve uygulamalar için sunucunun dengesini iyileştirmeye yöneliktir.
Varsayılan ayarlar altında, makine öğrenmesi kaynakları özellikle yoğun bellek kullanan işlemlerde bazen kısıtlanır veya sınırlanır.
Makine öğrenmesi işlerinin önceliklerinin belirlendiğinden ve uygun şekilde kaynak sağlandığından emin olmak için SQL Server Resource Governor'ı kullanarak bir dış kaynak havuzu yapılandırmanızı öneririz. Ayrıca, SQL Server veritabanı altyapısına ayrılan bellek miktarını değiştirmek veya SQL Server Launchpad hizmeti altında çalışan hesap sayısını artırmak isteyebilirsiniz.
Dış kaynakları yönetmek üzere bir kaynak havuzu yapılandırmak için bkz. CREATE EXTERNAL RESOURCE POOL (Transact-SQL).
Veritabanı için ayrılan bellek miktarını değiştirmek için bkz . Sunucu belleği yapılandırma seçenekleri.
SQL Server Launchpad'in başlatabileceği R hesaplarının sayısını değiştirmek için bkz. SQL Server Machine Learning Services'da dış betiklerin eşzamanlı yürütülmesini ölçeklendirme.
Standard Edition kullanıyorsanız ve Resource Governor'a sahip değilseniz, sunucu kaynaklarını yönetmeye yardımcı olmak için dinamik yönetim görünümlerini, SQL Server Genişletilmiş Olayları ve Windows olay izlemesini kullanabilirsiniz.
Ek Python ve R paketleri yükleme
SQL Server için oluşturduğunuz Python ve R çözümleri şu çağrıyı yapabilir:
- Temel işlevler.
- SQL Server ile yüklenen özel paketlerden işlevler.
- SQL Server'ın yüklemiş olduğu açık kaynak Python ve R sürümüyle uyumlu üçüncü taraf paketleri.
SQL Server'dan kullanmak istediğiniz paketler, örneğin kullandığı varsayılan kitaplığa yüklenmelidir. Bilgisayara ayrı bir Python veya R yüklemeniz varsa veya kullanıcı kitaplıklarına paketler yüklediyseniz, bu paketleri T-SQL'den kullanamazsınız.
Ek paketleri yüklemek ve yönetmek için kullanıcı gruplarını, paketleri veritabanı başına düzeyinde paylaşacak şekilde ayarlayabilirsiniz. Veya kullanıcıların kendi paketlerini yüklemesini sağlamak için veritabanı rollerini yapılandırabilirsiniz. Daha fazla bilgi için bkz. Sqlmlutils ile Python paketlerini yükleme ve sqlmlutils ile R paketleri yükleme.
Python ve R çalışma zamanı için tek başına RevoScale paketleri
RevoScale paketleri, Python ve R çalışma zamanları ile tek başına paket olarak da desteklenir. Tek başına senaryo için Python veya R çalışma zamanı ayarlamak için sırasıyla Python çalışma zamanını yükleme ve R çalışma zamanı yükleme bölümlerindeki yönergeleri izleyin.
İlgili içerik
- Python Öğreticisi : SQL makine öğrenmesi ile doğrusal regresyon modeli dağıtma
- python öğreticisi : SQL makine öğrenmesi ile k ortalamalar kümeleme kullanarak müşterileri kategorilere ayırma
- Hızlı Başlangıç: SQL machine learning ile basit R betikleri çalıştırma
- R öğreticisi: İkili sınıflandırma ile NYC taksi ücretlerini tahmin edin