Jaa


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ä:

  1. Uuden ympäristön luominen
  2. Tarvittavien kirjastojen asentaminen ympäristössä
  3. 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.

Näyttökuva, jossa näkyy pip-asennuksen käyttöönotto muistikirjaputkessa.

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 !pipsijaan. !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.

  1. 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.

  2. Tuo paketti ja semanttinen malli suorittamalla seuraava koodi toisessa muistikirjan solussa.

    import altair as alt
    from vega_datasets import data
    
  3. 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:

  1. Vaihda työkieli sparkr-kieleksi (R) muistikirjan valintanauhassa.

  2. Asenna caesar-kirjasto suorittamalla seuraava komento muistikirjan solussa.

    install.packages("caesar")
    
  3. 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. Näyttökuva noutaa ABFS-polun.