Del via


Utvikle, kjøre og administrere Microsoft Fabric-notatblokker

En Microsoft Fabric-notatblokk er et primært kodeelement for utvikling av Apache Spark-jobber og maskinlæringseksperimenter. Det er en nettbasert interaktiv overflate som brukes av dataforskere og dataingeniører til å skrive kode som drar nytte av rike visualiseringer og Markdown-tekst. Denne artikkelen forklarer hvordan du utvikler notatblokker med kodecelleoperasjoner og kjører dem.

Utvikle notatblokker

Notatblokker består av celler, som er individuelle kodeblokker eller tekst som kan kjøres uavhengig av hverandre eller som en gruppe.

Vi tilbyr omfattende operasjoner for å utvikle notatblokker:

Legge til en celle

Det finnes flere måter å legge til en ny celle i notatblokken på.

  1. Hold pekeren over mellomrommet mellom to celler, og velg Kode eller Markdown.

  2. Bruk hurtigtaster i kommandomodus. Trykk A for å sette inn en celle over gjeldende celle. Trykk B for å sette inn en celle under gjeldende celle.

Angi et primærspråk

Fabric-notatblokker støtter for øyeblikket fire Apache Spark-språk:

  • PySpark (Python)
  • Spark (Scala)
  • Spark SQL
  • SparkR

Du kan angi primærspråket for nye celler som er lagt til, fra rullegardinlisten i den øverste kommandolinjen.

Bruke flere språk

Du kan bruke flere språk i en notatblokk ved å angi den magiske språkkommandoen i begynnelsen av en celle. Du kan også bytte cellespråk fra språkvelgeren. Tabellen nedenfor viser de magiske kommandoene for å bytte cellespråk.

Skjermbilde som viser et eksempel på den magiske språkkommandoen som er angitt i begynnelsen av en celle.

Magisk kommando Språk Beskrivelse
%%pyspark Python Utfør en Python-spørring mot Apache Spark-kontekst.
%%spark Scala Utfør en Scala-spørring mot Apache Spark-kontekst.
%%sql SparkSQL Utfør en SparkSQL-spørring mot Apache Spark-kontekst.
%%html Html Utfør en HTML-spørring mot Apache Spark-kontekst.
%%sparkr R Utfør en R-spørring mot Apache Spark-kontekst.

Ide-stil IntelliSense

Stoffnotatblokker er integrert med Monaco-redigeringsprogrammet for å bringe IDE-stil IntelliSense til celleredigeringsprogrammet. Syntaksutheving, feilindikator og automatiske kodefullføringer hjelper deg med raskt å skrive kode og identifisere problemer.

IntelliSense-funksjonene er på forskjellige nivåer av forfallsdato for forskjellige språk. Tabellen nedenfor viser hva Fabric støtter:

Språk Syntaksutheving Syntaksfeilindikator Fullføring av syntakskode Fullføring av variabel kode Fullføring av systemfunksjonskode Fullføring av brukerfunksjonskode Smart innrykk Kodedelegering
PySpark (Python) Ja Ja Ja Ja Ja Ja Ja Ja
Spark (Scala) Ja Ja Ja Ja Ja Ja Ja Ja
SparkSQL Ja Ja Ja Ja Ja No Ja Ja
SparkR Ja Ja Ja Ja Ja Ja Ja Ja

Merk

Du må ha en aktiv Apache Spark-økt for å kunne bruke Fullføring av IntelliSense-kode.

Kodesnutter

Stoffnotatblokker gir kodesnutter som gjør det enkelt å skrive ofte brukte kodemønstre, for eksempel:

  • Lese data som en Apache Spark DataFrame
  • Tegnediagrammer med Matplotlib

Snutter vises i hurtigtaster i IDE-stilen IntelliSense blandet med andre forslag. Innholdet i kodesnutten samsvarer med kodecellespråket. Du kan se tilgjengelige snutter ved å skrive kodesnutt. Du kan også skrive inn et hvilket som helst nøkkelord for å se en liste over relevante snutter. Hvis du for eksempel skriver inn lest, ser du listen over snutter for å lese data fra ulike datakilder.

Animert GIF av kodesnutter.

Dra og slipp for å sette inn snutter

Bruk dra og slipp for å lese data fra Lakehouse Explorer enkelt. Flere filtyper støttes her. du kan bruke tekstfiler, tabeller, bilder osv. Du kan enten slippe til en eksisterende celle eller til en ny celle. Notatblokken genererer kodesnutten tilsvarende for å forhåndsvise dataene.

Animert GIF for dra og slipp for å sette inn snutter.

Dra og slipp for å sette inn bilder

Bruk dra og slipp for enkelt å sette inn bilder fra nettleseren eller den lokale datamaskinen i en markdown-celle.

Animert GIF for dra og slipp for å sette inn bilder.

Formater tekstcelle med verktøylinjeknapper

Hvis du vil fullføre vanlige markdown-handlinger, bruker du formatknappene på tekstcelleverktøylinjen.

Skjermbilde av verktøylinjen for tekstformatering.

Angre eller gjøre om celleoperasjoner

Velg Angre eller Gjør om, eller trykk på Z eller SKIFT+Z for å tilbakekalle de nyeste celleoperasjonene. Du kan angre eller gjøre om opptil 10 av de siste historiske celleoperasjonene.

Skjermbilde som viser menyalternativene angre og gjøre om.

Angre celleoperasjoner som støttes:

  • Sett inn eller slett celle. Du kan oppheve de slettede operasjonene ved å velge Angre (tekstinnholdet beholdes sammen med cellen).
  • Endre rekkefølgen på cellen.
  • Aktiver/deaktiver parameter.
  • Konverter mellom kodecelle og Markdown-celle.

Merk

Tekstoperasjoner i cellen og kommentaroperasjoner for kodeceller kan ikke angres. Du kan angre eller gjøre om opptil 10 av de siste historiske celleoperasjonene.

Flytte en celle

Du kan dra fra den tomme delen av en celle og slippe den til ønsket posisjon.

Du kan også flytte den merkede cellen ved hjelp av Flytt opp og Flytt ned på båndet.

Skjermbilde som viser alternativene for flytting av en celle.

Slette en celle

Hvis du vil slette en celle, merker du slett-knappen på høyre side av cellen.

Du kan også bruke hurtigtaster i kommandomodus. Trykk SKIFT+D for å slette gjeldende celle.

Skjule en celleinndata

Velg Flere kommandoer-ellipsene (...) på celleverktøylinjen, og Skjul inndata for å skjule inndataene i gjeldende celle. Hvis du vil utvide den på nytt, velger du Vis inndata når cellen skjules.

Skjule en celleutdata

Velg Flere kommandoer ellipser (...) på celleverktøylinjen og Skjul utdata for å skjule utdataene i gjeldende celle. Hvis du vil utvide den på nytt, velger du Vis utdata når celleutdataene skjules.

Sikkerhet for celleutdata

Ved hjelp av OneLake-datatilgangsroller (forhåndsvisning) kan brukere konfigurere tilgang til bare bestemte mapper i et lakehouse under notatblokkspørringer. Brukere uten tilgang til en mappe eller tabell ser en uautorisert feil under kjøring av spørring.

Viktig

Sikkerhet gjelder bare under kjøring av spørringer, og eventuelle notatblokkceller som inneholder spørringsresultater, kan vises av brukere som ikke har tillatelse til å kjøre spørringer direkte mot dataene.

Låse eller fryse en celle

Med operasjonene lås og frys celle kan du gjøre cellene skrivebeskyttet eller hindre at kodeceller kjøres enkeltvis.

Animert GIF for låsing eller frysing av en celle.

Slå sammen og dele celler

Du kan bruke Slå sammen med forrige celle eller Slå sammen med neste celle for å slå sammen relaterte celler enkelt.

Hvis du velger Del celle , kan du dele irrelevante setninger til flere celler. Operasjonen deler koden i henhold til markørens linjeposisjon.

Skjermbilde som viser oppføringen av sammenslåing av delte celler.

Notatblokkinnhold

Hvis du velger Disposisjoner eller Innholdsfortegnelse, vises den første markdown-overskriften i en markdown-celle i et sidepanelvindu for rask navigering. Disposisjoner-sidestolpen kan endres og skjules slik at den passer best mulig til skjermen. Velg Innhold-knappen på kommandolinjen for notatblokken for å åpne eller skjule sidepanelet.

Skjermbilde som viser hvor du velger innholdsalternativet.

Markdown-folding

Med alternativet markdown-folding kan du skjule celler under en markdown-celle som inneholder en overskrift. Markdown-cellen og de skjulte cellene behandles på samme måte som et sett med sammenhengende flervalgte celler når du utfører celleoperasjoner.

Animert GIF for markdown-folding.

Søk etter og erstatt

Alternativet søk og erstatt kan hjelpe deg med å finne nøkkelordene eller uttrykket i notatblokkinnholdet. Du kan også enkelt erstatte målstrengen med en ny streng.

Skjermbilde som viser søke- og erstatt-ruten.

Kjør notatblokker

Du kan kjøre kodecellene i notatblokken enkeltvis eller alle samtidig. Statusen og fremdriften for hver celle vises i notatblokken.

Kjøre en celle

Det finnes flere måter å kjøre koden på i en celle.

  • Hold pekeren over cellen du vil kjøre, og velg Kjør celle-knappen , eller trykk CTRL+ENTER.

  • Bruk hurtigtaster i kommandomodus. Trykk SKIFT+ENTER for å kjøre gjeldende celle og merke neste celle. Trykk på ALT+ENTER for å kjøre gjeldende celle og sette inn en ny celle.

Kjør alle celler

Velg Kjør alle-knappen for å kjøre alle cellene i gjeldende notatblokk i rekkefølge.

Kjøre alle celler over eller under

Utvid rullegardinlisten fra Kjør alle, og velg deretter Kjør celler ovenfor for å kjøre alle cellene over gjeldende rekkefølge. Velg Kjør celler nedenfor for å kjøre gjeldende celle og alle cellene under gjeldende rekkefølge.

Skjermbilde som viser alternativene for Kjør alle-menyen.

Avbryt alle cellene som kjører

Velg Avbryt alt for å avbryte cellene eller cellene som venter i køen.

Stopp økt

Stopp økten avbryter cellene som kjører og venter, og stopper gjeldende økt. Du kan starte en helt ny økt på nytt ved å velge kjør-alternativet på nytt.

Skjermbilde som viser hvor du velger Avbryt alle kjøringer og stopper en økt.

Referansekjøring

Referanse kjøre en notatblokk

I tillegg til referansekjøring av notatblokker kjører API, kan du også bruke den %run <notebook name> magiske kommandoen til å referere til en annen notatblokk i gjeldende notatblokkkontekst. Alle variablene som er definert i referansenotatblokken, er tilgjengelige i gjeldende notatblokk. Den %run magiske kommandoen støtter nestede anrop, men støtter ikke rekursive anrop. Du får et unntak hvis setningsdybden er større enn fem.

Eksempel: %run Notebook1 { "parameterInt": 1, "parameterFloat": 2.5, "parameterBool": true, "parameterString": "abc" }.

Notatblokkreferanse fungerer i både interaktiv modus og datasamlebånd.

Merk

  • Kommandoen %run støtter for øyeblikket bare referansenotatblokker i samme arbeidsområde med gjeldende notatblokk.
  • Kommandoen %run støtter for øyeblikket bare opptil fire parameterverdityper: int, , floatboolog string. Variabel erstatningsoperasjon støttes ikke.
  • Kommandoen %run støtter ikke nestet referanse med en dybde som er større enn fem.

Referanse kjøre et skript

Kommandoen %run lar deg også kjøre Python- eller SQL-filer som er lagret i notatblokkens innebygde ressurser, slik at du kan kjøre kildekodefilene i notatblokken enkelt.

%run [-b/--builtin -c/--current] [script_file.py/.sql] [variables ...]

For alternativer:

  • -b/---builtin: Dette alternativet angir at kommandoen finner og kjører den angitte skriptfilen fra notatblokkens innebygde ressurser.
  • -c/--current: Dette alternativet sikrer at kommandoen alltid bruker den gjeldende notatblokkens innebygde ressurser, selv om gjeldende notatblokk refereres til av andre notatblokker.

Eksempler:

  • Slik kjører du script_file.py fra de innebygde ressursene: %run -b script_file.py

  • Slik kjører du script_file.sql fra de innebygde ressursene: %run -b script_file.sql

  • Slik kjører du script_file.py fra de innebygde ressursene med bestemte variabler: %run -b script_file.py { "parameterInt": 1, "parameterFloat": 2.5, "parameterBool": true, "parameterString": "abc" }

Merk

Hvis kommandoen ikke inneholder -b/----builtin, vil den forsøke å finne og kjøre notatblokkelement i samme arbeidsområde i stedet for de innebygde ressursene.

Brukseksempel for nestet kjøringstilfelle:

  • La oss si at vi har to notatblokker.
    • Notatblokk1: Inneholder script_file1.py i de innebygde ressursene
    • Notatblokk2: Inneholder script_file2.py i de innebygde ressursene
  • La oss bruke Notatblokk1 til å fungere som en rotnotatblokk med innholdet: %run Notebook2.
  • I notatblokken2 er bruksinstruksjonen:
    • Hvis du vil kjøre script_file1.py i Notebook1(rotnotatblokken), vil koden være: %run -b script_file1.py
    • Hvis du vil kjøre script_file2.py i Notebook2(gjeldende notatblokk), vil koden være: %run -b -c script_file2.py

Variabelutforsker

Stoffnotatblokker gir en innebygd variableutforsker som viser listen over variablenes navn, type, lengde og verdi i gjeldende Spark-økt for PySpark-celler (Python). Flere variabler vises automatisk etter hvert som de er definert i kodecellene. Når du klikker på hver kolonneoverskrift, sorteres variablene i tabellen.

Hvis du vil åpne eller skjule variabelutforskeren, velger du Variabler i notatblokkbåndvisningen.

Skjermbilde som viser hvor du kan åpne variabler.

Merk

Variabelutforskeren støtter bare Python.

Cellestatusindikator

En trinnvis cellekjøringsstatus vises under cellen for å hjelpe deg med å se den gjeldende fremdriften. Når cellekjøringen er fullført, vises et utførelsessammendrag med total varighet og sluttidspunkt, og lagres der for fremtidig referanse.

Skjermbilde som viser et eksempel på statusdetaljer for cellekjøring.

Innebygd Apache Spark-jobbindikator

Fabric-notatblokken er Apache Spark-basert. Kodeceller kjøres eksternt på Apache Spark-klyngen. En fremdriftsindikator for Spark-jobb leveres med en fremdriftslinje i sanntid som ser ut til å hjelpe deg med å forstå statusen for jobbkjøring. Antall oppgaver per jobb eller fase hjelper deg med å identifisere det parallelle nivået i Spark-jobben. Du kan også drille dypere til Spark-brukergrensesnittet for en bestemt jobb (eller fase) ved å velge koblingen på jobbnavnet (eller scenen).

Du kan også finne sanntidsloggen på cellenivå ved siden av fremdriftsindikatoren, og Diagnostikk kan gi deg nyttige forslag for å begrense og feilsøke koden.

Skjermbilde av detaljer om fremdriften for Spark-jobber.

I Flere handlinger kan du enkelt navigere til siden Spark-programdetaljer og Spark-nettgrensesnittsiden .

Skjermbilde av detaljer om flere handlinger.

Hemmelig skjuling

Hvis du vil forhindre at legitimasjonen blir lekket ved et uhell når du kjører notatblokker, støtter Fabric-notatblokker secret redaction for å erstatte de hemmelige verdiene som vises i celleutdata med [REDACTED]. Hemmelig skjuling gjelder for Python, Scala og R.

Skjermbilde av hemmelig skjuling.

Magiske kommandoer i en notatblokk

Innebygde magiske kommandoer

Du kan bruke kjente Ipython magiske kommandoer i Fabric notatblokker. Se gjennom følgende liste over tilgjengelige magiske kommandoer.

Merk

Dette er de eneste magiske kommandoene som støttes i fabric pipeline: %%pyspark, %%spark, %%csharp, %%sql, %%configure.

Tilgjengelige kommandoer for linjemagi: %lsmagic, %time, %timeit, %history, %run, %load, %alias, %alias_magic, %autoawait, %autocall, %automagic, %bookmark, %cd, %colors, %dhist, %dirs, %doctest_mode, %killbgscripts, %load_ext, %logoff, %logon, %logstart, %logstate, %logstop, %magic, %matplotlib, %page, %pastebin, %pdef, %pfile, %pinfo, %pinfo2, %popd, %pprint, %precision, %prun, %psearch, %psource, %pushd, %pwd, %pycat, %quickref, % rehashx, %reload_ext, %reset, %reset_selective, %sx, %system, %tb, %unalias, %unload_ext, %who, %who_ls, %who's, %xdel, %xmode.

Stoffnotatblokken støtter også de forbedrede bibliotekbehandlingskommandoene %pip og %conda. Hvis du vil ha mer informasjon om bruk, kan du se Administrere Apache Spark-biblioteker i Microsoft Fabric.

Tilgjengelige kommandoer for cellemagi: %%time, %%timeit, %%capture, %%writefile, %%sql, %%pyspark, %%spark, %%csharp, %%configure, %%html, %%bash, %%markdown, %%perl, %%script, %%sh.

Egendefinerte magiske kommandoer

Du kan også bygge ut mer egendefinerte magiske kommandoer for å dekke dine spesifikke behov. Her er et eksempel:

  1. Opprett en notatblokk med navnet MyLakehouseModule.

    Skjermbilde av definer en egendefinert magi.

  2. I en annen notatblokk kan du referere til «MyLakehouseModule» og dens magiske kommandoer. Denne prosessen er hvordan du enkelt kan organisere prosjektet med notatblokker som bruker forskjellige språk.

    Skjermbilde av bruk av egendefinert magi.

IPython-kontrollprogrammer

IPython-kontrollprogrammer er begivenhetsrike Python-objekter som har en representasjon i nettleseren. Du kan bruke IPython-kontrollprogrammer som kontroller med lav kode (for eksempel glidebryter eller tekstboks) i notatblokken, akkurat som Jupyter-notatblokken. For øyeblikket fungerer det bare i en Python-kontekst.

Slik bruker du IPython-kontrollprogrammer

  1. Importer ipywidgets-modulen først for å bruke Kontrollprogram-rammeverket for Jupyter.

    import ipywidgets as widgets
    
  2. Bruk skjermfunksjonen på øverste nivå til å gjengi et kontrollprogram, eller la et uttrykk av kontrollprogramtype være på den siste linjen i kodecellen.

    slider = widgets.IntSlider()
    display(slider)
    
  3. Kjør cellen. Kontrollprogrammet vises i utdataområdet.

    slider = widgets.IntSlider()
    display(slider)
    

    Skjermbilde av kontrollprogrammet som vises i utdataområdet.

  4. Bruk flere display() -kall til å gjengi samme kontrollprogramforekomst flere ganger. De forblir synkronisert med hverandre.

    slider = widgets.IntSlider()
    display(slider)
    display(slider)
    

    Skjermbilde som viser flere ganger med ett kontrollprogram.

  5. Hvis du vil gjengi to kontrollprogrammer uavhengig av hverandre, oppretter du to kontrollprogramforekomster:

    slider1 = widgets.IntSlider()
    slider2 = widgets.IntSlider()
    display(slider1)
    display(slider2)
    

    Skjermbilde som viser flere forekomster av kontrollprogrammer.

Støttede kontrollprogrammer

Kontrollprogramtype Widgets
Numeriske kontrollprogrammer IntSlider, FloatSlider, FloatLogSlider, IntRangeSlider, FloatRangeSlider, IntProgress, FloatProgress, BoundedIntText, BoundedFloatText, IntText, FloatText
Boolske miniprogrammer Veksleknapp, avmerkingsboks, gyldig
Kontrollprogrammer for utvalg Rullegardinliste, RadioKnapper, Velg, SelectionSlider, SelectionRangeSlider, Veksleknapper, SelectMultiple
Streng-kontrollprogrammer Tekst, tekstområde, kombinasjonsboks, passord, etikett, HTML, HTML-matematikk, bilde, knapp
Spill av (animasjon) kontrollprogrammer Datovelger, Fargevelger, Kontroller
Kontrollprogrammer for beholdere eller oppsett Boks, HBox, VBox, GridBox, Trekkspill, Faner, Stablet

Kjente begrensninger

  • Følgende kontrollprogrammer støttes ikke ennå. Følgende midlertidige løsninger er tilgjengelige:

    Funksjonalitet Løsning
    Kontrollprogram for utdata Du kan bruke print() -funksjonen i stedet for å skrive tekst til stdout.
    widgets.jslink() Du kan bruke widgets.link() -funksjonen til å koble sammen to lignende kontrollprogrammer.
    Kontrollprogram for FileUpload Støttes ikke ennå.
  • Den globale stoffskjermfunksjonen støtter ikke visning av flere kontrollprogrammer i én samtale (for eksempel visning(a, b)). Denne virkemåten er forskjellig fra skjermfunksjonen IPython.

  • Hvis du lukker en notatblokk som inneholder et IPython-kontrollprogram, kan du ikke se eller samhandle med den før du utfører den tilsvarende cellen på nytt.

  • Samhandlingsfunksjonen (ipywidgets.interact) støttes ikke.

Integrere en notatblokk

Angi en parametercelle

Hvis du vil parametere notatblokken, velger du ellipsene (...) for å få tilgang til Flere-kommandoene på celleverktøylinjen. Velg deretter Aktiver/deaktiver parametercelle for å angi cellen som parametercelle.

Skjermbilde som viser hvor du velger alternativet Aktiver/deaktiver parametercelle.

Parametercellen er nyttig for å integrere en notatblokk i et datasamlebånd. Pipeline-aktivitet ser etter parametercellen og behandler denne cellen som standard for parameterne som ble sendt inn ved kjøring. Kjøringsmotoren legger til en ny celle under parametercellen med inndataparametere for å overskrive standardverdiene.

Tilordne parameterverdier fra et datasamlebånd

Når du har opprettet en notatblokk med parametere, kan du kjøre den fra et datasamlebånd med fabric-notatblokkaktiviteten. Når du har lagt til aktiviteten på datasamlebåndlerretet, kan du angi parameterverdiene under basisparameterinndelingenpå Innstillinger-fanen .

Skjermbilde som viser hvor du tilordner parameterverdier fra et datasamlebånd.

Når du tilordner parameterverdier, kan du bruke datasamlebånduttrykksspråket eller -funksjonene og -variablene.

Magisk kommando for Spark-øktkonfigurasjon

Du kan tilpasse Spark-økten med den magiske kommandoen %%configure. Stoffnotatblokk støtter tilpassede vCores, Minne om driveren og eksekutoren, Apache Spark-egenskaper, monteringspunkter, basseng og standard lakehouse for notatblokkøkten. De kan brukes i både interaktive notatblokk- og datasamlenotatblokkaktiviteter. Vi anbefaler at du kjører kommandoen %%configure i begynnelsen av notatblokken, eller du må starte Spark-økten på nytt for å få innstillingene til å tre i kraft.

%%configure
{
    // You can get a list of valid parameters to config the session from https://github.com/cloudera/livy#request-body.
    "driverMemory": "28g", // Recommended values: ["28g", "56g", "112g", "224g", "400g"]
    "driverCores": 4, // Recommended values: [4, 8, 16, 32, 64]
    "executorMemory": "28g",
    "executorCores": 4,
    "jars": ["abfs[s]: //<file_system>@<account_name>.dfs.core.windows.net/<path>/myjar.jar", "wasb[s]: //<containername>@<accountname>.blob.core.windows.net/<path>/myjar1.jar"],
    "conf":
    {
        // Example of customized property, you can specify count of lines that Spark SQL returns by configuring "livy.rsc.sql.num-rows".
        "livy.rsc.sql.num-rows": "3000",
        "spark.log.level": "ALL"
    },
    "defaultLakehouse": {  // This overwrites the default lakehouse for current session
        "name": "<lakehouse-name>",
        "id": "<(optional) lakehouse-id>",
        "workspaceId": "<(optional) workspace-id-that-contains-the-lakehouse>" // Add workspace ID if it's from another workspace
    },
    "mountPoints": [
        {
            "mountPoint": "/myMountPoint",
            "source": "abfs[s]://<file_system>@<account_name>.dfs.core.windows.net/<path>"
        },
        {
            "mountPoint": "/myMountPoint1",
            "source": "abfs[s]://<file_system>@<account_name>.dfs.core.windows.net/<path1>"
        },
    ],
    "environment": {
        "id": "<environment-id>",
        "name": "<environment-name>"
    },
    "sessionTimeoutInSeconds": 1200,
    "useStarterPool": false,  // Set to true to force using starter pool
    "useWorkspacePool": "<workspace-pool-name>"
}

Merk

  • Vi anbefaler at du angir samme verdi for DriverMemory og ExecutorMemory i %%configure. DriverCores- og ExecutorCores-verdiene skal også være de samme.
  • "defaultLakehouse" overskriver det festede lakehouse i Lakehouse Explorer, men det fungerer bare i den gjeldende notatblokkøkten.
  • Du kan bruke %%configure i Fabric Pipelines, men hvis den ikke er angitt i den første kodecellen, vil datasamlebåndkjøringen mislykkes på grunn av at økten ikke kan startes på nytt.
  • %%konfigurering som brukes i notebookutils.notebook.run, ignoreres, men brukes i %run-notatblokken vil fortsette å kjøre.
  • Standard spark-konfigurasjonsegenskaper må brukes i «conf»-brødteksten. Stoff støtter ikke referanse på første nivå for Spark-konfigurasjonsegenskapene.
  • Noen spesielle Spark-egenskaper, inkludert spark.driver.cores, Spark.executor.cores, Spark.driver.memory, Spark.executor.memory og Spark.executor.instances, trer ikke i kraft i "conf"-brødteksten.

Parameterisert øktkonfigurasjon fra et datasamlebånd

Med parameterisert øktkonfigurasjon kan du erstatte verdien i %%konfigurer magi med aktivitetsparameterne for datasamlebåndkjøringsnotatblokk. Når du forbereder %%konfigurer kodecelle, kan du overstyre standardverdier (også konfigurerbare, 4 og "2000" i eksemplet nedenfor) med et objekt som dette:

{
      "parameterName": "paramterNameInPipelineNotebookActivity",
      "defaultValue": "defaultValueIfNoParamterFromPipelineNotebookActivity"
} 
%%configure  

{ 
    "driverCores": 
    { 
        "parameterName": "driverCoresFromNotebookActivity", 
        "defaultValue": 4 
    }, 
    "conf": 
    { 
        "livy.rsc.sql.num-rows": 
        { 
            "parameterName": "rows", 
            "defaultValue": "2000" 
        } 
    } 
} 

En notatblokk bruker standardverdien hvis du kjører en notatblokk i interaktiv modus direkte, eller hvis aktiviteten for datasamlebåndnotatblokken ikke gir noen parameter som samsvarer med «activityParameterName».

Under en datasamlebåndkjøring kan du konfigurere aktivitetsinnstillinger for datasamlebåndnotatblokker på følgende måte:

Skjermbilde som viser hvor du konfigurerer parameterisert økt.

Hvis du vil endre øktkonfigurasjonen, skal aktivitetsparameternavnet for datasamlebåndnotatblokk være det samme som parameterName i notatblokken. I dette eksemplet på kjøring av et datasamlebånd driverCores erstattes i %%konfigurering av 8, og livy.rsc.sql.num-rows erstattes med 4000.

Merk

  • Hvis en datasamlebåndkjøring mislykkes fordi du brukte kommandoen %%configure magic, finner du mer feilinformasjon ved å kjøre den %%konfigurer magiske cellen i interaktiv modus i notatblokken.
  • Planlagte kjøringer av notatblokker støtter ikke parameterisert øktkonfigurasjon.

Python-logging i en notatblokk

Du kan finne Python-logger og angi forskjellige loggnivåer og formatere som eksempelkoden som vises her:

import logging

# Customize the logging format for all loggers
FORMAT = "%(asctime)s - %(name)s - %(levelname)s - %(message)s"
formatter = logging.Formatter(fmt=FORMAT)
for handler in logging.getLogger().handlers:
    handler.setFormatter(formatter)

# Customize log level for all loggers
logging.getLogger().setLevel(logging.INFO)

# Customize the log level for a specific logger
customizedLogger = logging.getLogger('customized')
customizedLogger.setLevel(logging.WARNING)

# logger that use the default global log level
defaultLogger = logging.getLogger('default')
defaultLogger.debug("default debug message")
defaultLogger.info("default info message")
defaultLogger.warning("default warning message")
defaultLogger.error("default error message")
defaultLogger.critical("default critical message")

# logger that use the customized log level
customizedLogger.debug("customized debug message")
customizedLogger.info("customized info message")
customizedLogger.warning("customized warning message")
customizedLogger.error("customized error message")
customizedLogger.critical("customized critical message")

Vise loggen for inndatakommandoer

Kommandoen For å %history skrive ut inndatakommandologgen som ble utført i gjeldende økt, sammenlignet med standard kommandoen Jupyter Ipython, fungerer %history det for flere språkkontekst i notatblokken.

%history [-n] [range [range ...]]

For alternativer:

  • -n: Skriv ut kjøringsnummer.

Hvor området kan være:

  • N: Skriv ut kode for den utførte cellen i Nth .
  • M-N: Skriv ut kode fra Mth til Nth utført celle.

Eksempel:

  • Skriv ut inndatalogg fra 1. til 2. kjøring av celle: %history -n 1-2

Hurtigtaster

I likhet med Jupyter Notebooks har Fabric-notatblokker et modalt brukergrensesnitt. Tastaturet gjør forskjellige ting avhengig av hvilken modus notatblokkcellen er i. Stoffnotatblokker støtter følgende to moduser for en gitt kodecelle: Kommandomodus og redigeringsmodus.

  • En celle er i kommandomodus når det ikke er noen tekstmarkør som ber deg skrive. Når en celle er i kommandomodus, kan du redigere notatblokken som helhet, men ikke skrive inn i individuelle celler. Skriv inn kommandomodus ved å trykke ESC eller bruke musen til å merke utenfor redigeringsområdet for en celle.

    Skjermbilde av en celle i kommandomodus.

  • Redigeringsmodus kan angis fra en tekstmarkør som ber deg om å skrive i redigeringsområdet. Når en celle er i redigeringsmodus, kan du skrive inn i cellen. Angi redigeringsmodus ved å trykke enter eller bruke musen til å velge redigeringsområdet for en celle.

    Skjermbilde av en celle i redigeringsmodus.

Hurtigtaster i kommandomodus

Handling Notatblokksnarveier
Kjør gjeldende celle, og merk nedenfor Shift+Enter
Kjør gjeldende celle og sett inn nedenfor Alt+Enter
Kjør gjeldende celle Ctrl+Enter
Merk celle ovenfor Opp
Merk celle nedenfor Ned
Merke forrige celle K
Merke neste celle J
Sett inn celle ovenfor A
Sett inn celle nedenfor F
Slette merkede celler SKIFT + D
Bytt til redigeringsmodus Angi

Hurtigtaster i redigeringsmodus

Ved hjelp av følgende hurtigtaster for tastetrykk kan du enkelt navigere og kjøre kode i Fabric-notatblokker når du er i redigeringsmodus.

Handling Notatblokksnarveier
Flytt opp markøren Opp
Flytt nedover markøren Ned
Angre CTRL+Z
Gjør om CTRL +Y
Kommentar eller ukomprimering Ctrl + /
Kommentar: Ctrl + K + C
Komprimering: Ctrl + K + U
Slett ord før CTRL+TILBAKE
Slett ord etter CTRL+SLETT
Gå til cellestart CTRL+HOME
Gå til celleslutt CTRL+END
Gå ett ord til venstre CTRL+VENSTRE
Gå ett ord til høyre CTRL+HØYRE
Velg alle Ctrl + A
Rykke inn CTRL +]
Innrykk CTRL + [
Bytte til kommandomodus ESC

Hvis du vil finne alle hurtigtastene, velger du Vis på notatblokkbåndet og deretter Nøkkelbindinger.