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 2019 (15.x) ve sonraki sürümler
Azure SQL Yönetilen Örneği
Bu makale, sqlmlutils paketindeki fonksiyonların SQL Server'daki bir Machine Learning Services örneğine yeni Python paketleri kurmak için nasıl kullanılacağını açıklar. Veritabanında çalışan Python betiklere kurduğunuz paketleri sp_execute_external_script T-SQL ifadesi üzerinden kullanabilirsiniz.
Bu makalede, Azure SQL Yönetilen Örneği Machine Learning Services örneğine yeni Python paketleri yüklemek için sqlmlutils paketindeki işlevlerin nasıl kullanılacağı açıklanmaktadır. Veritabanında çalışan Python betiklere kurduğunuz paketleri sp_execute_external_script T-SQL ifadesi üzerinden kullanabilirsiniz.
Uyarı
SQL Yönetilen Örneği Machine Learning Hizmetlerinin bir örneğinde önceden yüklü gelen paketleri güncelleyemez veya kaldıramazsınız. Şu anda yüklü olan paketlerin listesini görüntülemek için bkz. Tüm yüklü Python paketlerini listeleme.
Paket konumu ve yükleme yolları hakkında daha fazla bilgi için bkz. Python paket bilgilerini alma.
Uyarı
Bu makalede açıklanan sqlmlutils paketini kullanarak SQL Server 2019 veya daha sonrasına Python paketleri ekleyin. SQL Server 2017 ve önceki sürümler için bkz. Python araçlarıyla paketleri yükleme.
Önkoşullar
- SQL Server Machine Learning Hizmetler Python dili seçeneğiyle kuruldu.
SQL Server'a bağlanmak için kullandığınız istemci bilgisayara Python yüklenmiş. Komut satırından betik çalıştırabilir veya Python uzantısı olan Visual Studio Code gibi bir Python geliştirme ortamı kullanabilirsiniz.
İstemci bilgisayardaki Python sürümü, sunucudaki Python sürümüyle uyumlu olmalı ve kurduğunuz paketler sahip olduğunuz Python sürümüyle uyumlu olmalıdır. Her SQL Server sürümüne hangi Python sürümünün dahil olduğu hakkında bilgi için bkz. Python ve R sürümleri.
Belirli bir SQL Server örneğinde Python sürümünü doğrulamak için aşağıdaki T-SQL komutunu kullanın.
EXECUTE sp_execute_external_script @language = N'Python', @script = N' import sys print(sys.version) 'SQL Server’a bağlanmak için kullandığınız istemci bilgisayarına yüklü Visual Studio Code için MSSQL uzantısı Diğer veritabanı yönetimi veya sorgu araçlarını kullanabilirsiniz.
Dikkat edilecek diğer noktalar
Python paket kütüphanesi, SQL Server örneğinizin Program Files klasöründe. Varsayılan olarak, bu klasöre kurulum için yönetici izinleri gerekir. Daha fazla bilgi için Paket kitaplığı konumu'na bakın.
Paket yüklemesi sqlmlutils'e sağladığınız bağlantı bilgilerinde belirttiğiniz SQL örneğine, veritabanına ve kullanıcıya özgüdür. Paketi birden fazla SQL örneğinde veya veritabanında veya farklı kullanıcılar için kullanmak için, her biri için paketi yükleyin. İstisna, tüm kullanıcılarla paylaşılan ve kamuya açık kapsamda kurulan bir pakettir. sqlmlutils, sunucu rolünün
sysadminbir üyesi olarak bağlandığınızda varsayılan olarak genel kapsamı seçer, aksi takdirde özel kapsamı seçer. Başka bir güvenlik sorumlusu olarak genel kapsama yüklemek için,db_owneröğesiniinstallöğesine geçirin; bunun içinscope=sqlmlutils.Scope.public_scope()veritabanı rolü gerekir. Bir kullanıcı yeni bir kamu paketi sürümü yüklerse, genel paket etkilenmez, ancak o kullanıcı yeni sürüme erişim sağlar.Paket eklemeden önce paketin SQL Server ortamı için uygun olup olmadığını göz önünde bulundurun.
Veritabanı motoruyla sıkı entegrasyondan faydalanan görevler için, örneğin makine öğrenimi, veritabanı içi Python'u sadece veritabanını sorgulayan görevler yerine kullanın.
Sunucuya çok fazla hesaplama baskısı oluşturan paketler eklerseniz, performans düşer.
Güçlendirilmiş bir SQL Server ortamında, aşağıdaki paket türlerinden kaçının:
- Ağ erişimi gerektiren paketler
- Yükseltilmiş dosya sistemi erişimi gerektiren paketler
- Web geliştirme veya SQL Server içinde çalıştırılmakla avantaj sağlamayan diğer görevler için kullanılan paketler
Python paketi tensorflow'u sqlmlutils ile kuramazsınız. Daha fazla bilgi ve geçici çözüm için bkz. SQL Server Machine Learning Services'da bilinen sorunlar.
İstemci bilgisayara sqlmlutils yükleme
sqlmlutils kullanmak için önce SQL Server'a bağlanmak için kullandığınız istemci bilgisayara yüklemeniz gerekir.
sqlmlutils'i çevrimiçi yükleme
İstemci bilgisayarda internet erişimi varsa, pip kullanarak sqlmlutils kurun:
pip install sqlmlutils
sqlmlutils'i çevrimdışı yükleme
İstemci bilgisayarın internet erişimi yoksa, indirilmiş bir dosyadan sqlmlutils kurun:
pip'in kurulu olduğundan emin olun. Daha fazla bilgi için pip kurulumuna bakınız.
En son sqlmlutilsdosyasını sqlmlutils sürümler sayfasından istemci bilgisayara indirin. Dosyanın sıkıştırmasını açma.
Bir Komut Dizisi açın ve sqlmlutils paketini yüklemek için aşağıdaki komutu çalıştırın. İndirdiğiniz dosyanın tam yolunu değiştirin. Bu örnek, indirilen dosyanın
c:\temp\sqlmlutils-1.0.0.zipolduğunu varsayar.pip install --upgrade --upgrade-strategy only-if-needed c:\temp\sqlmlutils-1.0.0.zip
SQL Server'da Python paketi ekleme
Sqlmlutil kullanarak, Python paketlerini bir SQL örneğine ekleyebilir ve sonra o örneğinde çalışan Python kodunda kullanabilirsiniz. sqlmlutils paketi ve her bir bağımlılığını kurmak için kullanır CREATE EXTERNAL LIBRARY .
Aşağıdaki örnek, SQL Server'a metin-tools paketini ekler.
Paketi çevrimiçi ekleme
SQL Server'a bağlanmak için kullandığınız istemci bilgisayarda internet erişimi varsa, sqlmlutils kullanarak metin araçları paketini ve çevrimiçi bağımlılıkları bulabilir ve ardından paketi uzaktan bir SQL Server örneğine kurabilirsiniz.
İstemci bilgisayarda Python'ı veya python ortamını açın.
Metin araçları paketini yüklemek için aşağıdaki komutları kullanın. Kendi SQL Server veritabanı bağlantı bilgilerinizi değiştirin (Windows Kimlik Doğrulaması kullanıyorsanız ve
uidparametrelerinepwdihtiyacınız yoktur).
İstemci bilgisayarda Python'ı veya python ortamını açın.
Metin araçları paketini yüklemek için aşağıdaki komutları kullanın. Kendi SQL Server veritabanı bağlantı bilgilerinizi değiştirin. Ayrıca, sqlmlutils'in varsayılan olarak kullandığı sürücü adı yalnızca Windows için geçerli olduğu için, örneğin istemci bilgisayarda
driver="ODBC Driver 18 for SQL Server"yüklenmiş bir ODBC sürücüsünün adını da iletebilirsiniz.
import sqlmlutils
connection = sqlmlutils.ConnectionInfo(server="server", database="database", uid="username", pwd="password")
sqlmlutils.SQLPackageManager(connection).install("text-tools")
Paketi çevrimdışı ekleme
SQL Server'a bağlanmak için kullandığınız istemci bilgisayarın internet bağlantısı yoksa, bağlantılı olan bilgisayarda pip kullanarak paketi yerel bir klasöre indirebilirsiniz. Sonra klasörü istemci bilgisayara kopyalayıp paketi çevrimdışı yüklüyorsunuz.
Uyarı
Bu prosedür, bağımlılığı olmayan bir paket için çalışır.
SQLPackageManager.install(), yerel bir .whl dosyası belirtmiş olsanız bile bağımlılıkları PyPI'den çözer; bu nedenle, bağımlılıkları olan bir paketi eklemek için internet erişimi olan bir istemci bilgisayar kullanın ve Paketi çevrimiçi ekleme bölümündeki adımları izleyin.
İnternet erişimi olan bir bilgisayarda
Bir Komut İstemi açın ve aşağıdaki komutu çalıştırarak metin araçları paketini içeren yerel bir klasör oluşturun. Bu örnek klasörünü
c:\temp\text-toolsoluşturur.pip download text-tools -d c:\temp\text-toolstext-toolsklasörü istemci bilgisayara kopyalayın. Aşağıdaki örnekte, bunuc:\temp\packages\text-toolsöğesine kopyaladığınız varsayılır.
İstemci bilgisayarda
Pip'in yerel klasöre indirdiği paketi (.whldosyayı) kurmak için sqlmlutils kullanın.
Bu örnekte, text-tools bağımlılığı yoktur, bu yüzden klasör text-tools tek bir dosya tutar.
Aşağıdaki Python betiğini çalıştırın. Paketin gerçek dosya yolunu ve adını ve kendi SQL Server veritabanı bağlantı bilgilerinizi değiştirin (Windows Kimlik Doğrulaması kullanıyorsanız ve uid parametrelerine pwd ihtiyacınız yoktur).
Aşağıdaki Python betiğini çalıştırın. Paketin gerçek dosya yolunu ve adını ve kendi SQL Server veritabanı bağlantı bilgilerinizi değiştirin. Ayrıca, sqlmlutils'in varsayılan olarak kullandığı sürücü adı yalnızca Windows için geçerli olduğu için, örneğin istemci bilgisayarda driver="ODBC Driver 18 for SQL Server"yüklenmiş bir ODBC sürücüsünün adını da iletebilirsiniz.
import sqlmlutils
connection = sqlmlutils.ConnectionInfo(server="yourserver", database="yourdatabase", uid="username", pwd="password")
sqlmlutils.SQLPackageManager(connection).install("text_tools-1.0.0-py3-none-any.whl")
Paketi kullanma
Artık paketi SQL Server'daki bir Python betiğinde kullanabilirsiniz. Örneğin:
EXECUTE sp_execute_external_script
@language = N'Python',
@script = N'
from text_tools.finders import find_best_string
corpus = "Lorem Ipsum text"
query = "Ipsum"
first_match = find_best_string(query, corpus)
print(first_match)
'
PAKETI SQL Server'dan kaldırma
Metin-araçlar paketini kaldırmak için, daha önce tanımladığınız bağlantı değişkenini kullanarak istemci bilgisayarda aşağıdaki Python komutunu çalıştırın.
sqlmlutils.SQLPackageManager(connection).uninstall("text-tools")
Diğer sqlmlutils işlevleri
sqlmlutils paketi, Python paketlerini yönetmek ve SQL Server'da depolanmış prosedür ve sorguları oluşturmak, yönetmek ve çalıştırmak için çeşitli işlevler içerir. Daha fazla bilgi için sqlmlutils Python README dosyasına bakınız.
Herhangi bir sqlmlutils işlevi hakkında bilgi için Python yardım işlevini kullanın. Örneğin:
import sqlmlutils
help(sqlmlutils.SQLPackageManager.install)