Apache Spark -kirjastojen hallinta Microsoft Fabricissa
Kirjasto on kokoelma etukäteen kirjoitettua koodia, jonka kehittäjät voivat tuoda toiminnallisuutta varten. Kirjastoja käyttämällä voit säästää aikaa ja vaivaa, sillä sinun ei tarvitse kirjoittaa koodia alusta alkaen yleisten tehtävien suorittamiseksi. Tuo sen sijaan kirjasto ja käytä sen funktioita ja luokkia halutun toiminnon saavuttamiseksi. Microsoft Fabric tarjoaa useita mekanismeja, joiden avulla voit hallita ja käyttää kirjastoja.
- Sisäiset kirjastot: Kukin Fabric Spark -suorituspalvelu tarjoaa monipuolisen joukon suosittuja esiasentettuja kirjastoja. Löydät täydellisen valmiiden kirjastoluettelon kohdasta Fabric Spark Runtime.
- Julkiset kirjastot: Julkiset kirjastot ovat peräisin PyPI:n ja Conda:n kaltaisten säilöistä, joita tuetaan tällä hetkellä.
- Mukautetut kirjastot: Mukautetut kirjastot viittaavat koodiin, jonka sinä tai organisaatiosi luot. Fabric tukee niitä .whl-, .jar- ja .tar.gz-muodoissa. Fabric tukee .tar.gz vain R-kielelle. Käytä Pythonin mukautetuissa kirjastoissa .whl-muotoa.
Yhteenveto kirjastonhallinnan parhaista käytännöistä
Seuraavissa skenaarioissa kuvataan parhaita käytäntöjä, kun käytät kirjastoja Microsoft Fabricissa.
Skenaario 1: Järjestelmänvalvoja määrittää työtilan oletuskirjastot
Jotta voit määrittää oletuskirjastoja, sinun on oltava työtilan järjestelmänvalvoja. Järjestelmänvalvojana voit suorittaa seuraavia tehtäviä:
- Uuden ympäristön luominen
- Tarvittavien kirjastojen asentaminen ympäristössä
- Liitä tämä ympäristö työtilan oletusympäristöksi
Kun muistikirjat ja Spark-työmääritykset on liitetty työtilan asetuksiin, ne aloittavat istuntoja, joissa kirjastot on asennettu työtilan oletusympäristöön.
Skenaario 2: Yhden tai useamman koodikohteen pysyvät kirjastomääritykset
Jos sinulla on yleisiä kirjastoja eri koodikohteille eikä usein päivitetä, asenna kirjastot ympäristöön ja liitä ne koodikohteisiin .
Kestää jonkin aikaa, ennen kuin ympäristöjen kirjastoista tulee tehokkaita julkaisemisen aikana. Kirjastojen monimutkaisuudesta riippuen se vie yleensä 5–15 minuuttia. Tämän prosessin aikana järjestelmä auttaa ratkaisemaan mahdolliset ristiriidat ja lataamaan vaaditut riippuvuudet.
Tämän lähestymistavan yhtenä etuna on, että onnistuneesti asennetut kirjastot ovat käytettävissä, kun Spark-istunto käynnistetään ympäristö liitettynä. Se säästää projekteidesi yleisten kirjastojen ylläpitoa.
On erittäin suositeltavaa käyttää putkiskenaarioita ja sen vakautta.
Skenaario 3: Sisäinen asennus vuorovaikutteisessa suorittamisessa
Jos käytät muistikirjoja koodin kirjoittamiseen vuorovaikutteisesti, mukautettujen kirjastojen lisääminen sisäiseen asennukseen uusien PyPI-/conda-kirjastojen lisäämiseksi tai mukautettujen kirjastojen tarkistaminen kertakäyttöä varten on paras käytäntö. Sisäiset komennot Fabricissa mahdollistavat kirjaston voimassa olevan nykyisen muistikirjan Spark-istunnon aikana. Se sallii nopean asennuksen, mutta asennettu kirjasto ei säily eri istunnoissa.
Koska %pip install
luodaan aika ajoin erilaisia riippuvuuspuita, mikä saattaa johtaa kirjastoristiriitoihin, sisäiset komennot poistetaan oletusarvoisesti käytöstä jakson suorituksissa, eikä niitä suositella käytettäväksi jaksoissa.
Yhteenveto tuetuista kirjastotyypeistä
Kirjaston tyyppi | Ympäristökirjastojen hallinta | Sisäinen asennus |
---|---|---|
Python Public (PyPI & Conda) | Tuettu | Tuettu |
Python Custom (.whl) | Tuettu | Tuettu |
R Public (CRAN) | Ei tueta | Tuettu |
R custom (.tar.gz) | Tuetaan mukautettuna kirjastona | Tuettu |
Purkki | Tuetaan mukautettuna kirjastona | Tuettu |
Sisäinen asennus
Sisäiset komennot tukevat kirjastojen hallintaa kussakin muistikirjaistunnossa.
Pythonin sisäinen asennus
Järjestelmä käynnistää Python-tulkin uudelleen kirjastojen muutoksen soveltamiseksi. Kaikki ennen komentosolun suorittamista määritetyt muuttujat menetetään. Suosittelemme, että laitat kaikki komennot Python-pakettien lisäämiseen, poistamiseen tai päivittämiseen muistikirjasi alussa.
Sisäiset komennot Python-kirjastojen hallintaan ovat oletusarvoisesti poissa käytöstä muistikirjaputkessa. Jos haluat ottaa jakson käyttöön %pip install
, lisää muistikirjan toimintoparametreissa "_inlineInstallationEnabled", sillä totuusarvon parametri on Tosi.
Muistiinpano
Voi %pip install
aiheuttaa ajoittain ristiriitaisia tuloksia. On suositeltavaa asentaa kirjasto ympäristöön ja käyttää sitä putkessa.
Muistikirjaviittausajoissa python-kirjastojen hallinnan sisäiset komennot eivät ole tuettuja. Suorituksen oikeesuuden varmistamiseksi on suositeltavaa poistaa nämä sidotut komennot viitatusta muistikirjasta.
Suosittelemme %pip
:n !pip
sijaan. !pip
on sisäinen IPython-komento, jolla on seuraavat rajoitukset:
!pip
asentaa paketin vain ohjainsolmuun, ei suoritussolmuihin.- Kautta
!pip
asennettavat paketit eivät vaikuta sisäänrakennettujen pakettien ristiriidaan tai siihen, onko paketit jo tuotu muistikirjaan.
Käsittelee kuitenkin %pip
nämä skenaariot. :n kautta %pip
asennetut kirjastot ovat käytettävissä sekä ohjain- että suoritettavan kohteen solmuissa, ja ne ovat silti tehokkaita, vaikka kirjasto on jo tuotu.
Vihje
Uusien Python-kirjastojen %conda install
asentaminen kestää yleensä komentoa %pip install
kauemmin. Se tarkistaa kaikki riippuvuudet ja ratkaisee ristiriidat.
Haluat ehkä lisätä luotettavuutta ja vakautta -mittarin avulla %conda install
. Voit käyttää sitä %pip install
, jos olet varma, että kirjasto, jonka haluat asentaa, ei ole ristiriidassa suorituksenaikaisen ympäristön esiasennetun kirjaston kanssa.
Katso kaikki käytettävissä olevat sisäiset Python-komennot ja -selvennykset artikkelista %pip-komennot ja %conda-komennot.
Python-julkisten kirjastojen hallinta sisäisen asennuksen kautta
Tässä esimerkissä tutustu siihen, miten voit käyttää sisäiset komennot kirjastojen hallintaan. Oletetaan, että haluat käyttää altairia, joka on tehokas visualisointikirjasto Pythonille tietojen kertatutkimusta varten. Oletetaan, että kirjastoa ei ole asennettu työtilaasi. Seuraavassa esimerkissä käytetään conda-komentoja vaiheiden havainnollistamiseen.
Voit käyttää tekstiin sidottavia komentoja ottaaksesi altairin käyttöön muistikirjaistunnossasi vaikuttamatta muistikirjan muihin istuntoihin tai muihin kohteisiin.
Suorita seuraavat komennot muistikirjan koodisolussa. Ensimmäinen komento asentaa altair-kirjaston. Asenna myös vega_datasets, joka sisältää visualisoinnissa käytettävän semanttisen mallin.
%conda install altair # install latest version through conda command %conda install vega_datasets # install latest version through conda command
Solun tulos ilmaisee asennuksen tuloksen.
Tuo paketti ja semanttinen malli suorittamalla seuraava koodi toisessa muistikirjan solussa.
import altair as alt from vega_datasets import data
Nyt voit kokeilla istuntolaajennutettua altair-kirjastoa .
# load a simple dataset as a pandas DataFrame cars = data.cars() alt.Chart(cars).mark_point().encode( x='Horsepower', y='Miles_per_Gallon', color='Origin', ).interactive()
Mukautettujen Python-kirjastojen hallinta sisäisen asennuksen kautta
Voit ladata mukautetut Python-kirjastot muistikirjasi tai siihen liitetyn ympäristön resurssikansioon. Resurssikansiot ovat jokaisen muistikirjan ja ympäristöjen tarjoama sisäinen tiedostojärjestelmä. Lisätietoja on kohdassa Muistikirjan resurssit . Latauksen jälkeen voit vetää ja pudottaa mukautetun kirjaston koodisoluun. Sisäinen komento kirjaston asentamiseksi luodaan automaattisesti. Voit myös asentaa sen seuraavan komennon avulla.
# install the .whl through pip command from the notebook built-in folder
%pip install "builtin/wheel_file_name.whl"
Sisäiset R-asennukset
Jotta voit hallita R-kirjastoja, Fabric tukee -install.packages()
remove.packages()
, - ja devtools::
-komentoja. Katso kaikki käytettävissä olevat sisäiset R-komennot ja -selvennykset kohdasta install.packages-komento ja remove.package-komento.
R-julkisten kirjastojen hallinta sisäisen asennuksen kautta
Tämän esimerkin avulla voit käydä läpi R:n julkisen kirjaston asentamisen vaiheet.
R-syötekirjaston asentaminen:
Vaihda työkieli sparkr-kieleksi (R) muistikirjan valintanauhassa.
Asenna caesar-kirjasto suorittamalla seuraava komento muistikirjan solussa.
install.packages("caesar")
Nyt voit kokeilla istunnon laajennusta caesarkirjastoa Spark-työn avulla.
library(SparkR) sparkR.session() hello <- function(x) { library(caesar) caesar(x) } spark.lapply(c("hello world", "good morning", "good evening"), hello)
Jar-kirjastojen hallinta sisäisen asennuksen kautta
.jar tiedostot tukevat muistikirjaistuntoja, joissa on seuraava komento.
%%configure -f
{
"conf": {
"spark.jars": "abfss://<<Lakehouse prefix>>.dfs.fabric.microsoft.com/<<path to JAR file>>/<<JAR file name>>.jar",
}
}
Koodisolu käyttää esimerkkinä Lakehousen tallennustilaa. Muistikirjanhallinnassa voit kopioida koko tiedoston ABFS-polun ja korvata koodin.