Udvikl, udfør og administrer Microsoft Fabric-notesbøger

En Microsoft Fabric-notesbog er et primært kodeelement til udvikling af Apache Spark-job og eksperimenter med maskinel indlæring. Det er en webbaseret interaktiv overflade, der bruges af dataspecialister og datateknikere til at skrive kode, der drager fordel af omfattende visualiseringer og Markdown-tekst. I denne artikel forklares det, hvordan du udvikler notesbøger med kodecellehandlinger og kører dem.

Udvikl notesbøger

Notesbøger består af celler, som er individuelle kodeblokke eller tekstblokke, der kan køres uafhængigt af hinanden eller som en gruppe.

Vi leverer omfattende handlinger til udvikling af notesbøger:

Tilføj en celle

Der er flere måder at føje en ny celle til din notesbog på.

  1. Hold markøren over afstanden mellem to celler, og vælg Kode eller Markdown.

  2. Brug genvejstaster i kommandotilstand. Tryk på A for at indsætte en celle over den aktuelle celle. Tryk på B for at indsætte en celle under den aktuelle celle.

Angiv et primært sprog

Fabric-notesbøger understøtter i øjeblikket fire Apache Spark-sprog:

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

Du kan angive det primære sprog for nye tilføjede celler på rullelisten på den øverste kommandolinje.

Brug flere sprog

Du kan bruge flere sprog i en notesbog ved at angive kommandoen language magic i starten af en celle. Du kan også skifte cellesproget fra sprogvælgeren. I følgende tabel vises de magiske kommandoer til skift af cellesprog.

Skærmbillede, der viser et eksempel på den sprogmagisk kommando, der er angivet i begyndelsen af en celle.

Kommandoen Magi Sprog Beskrivelse
%%pyspark Python Udfør en Python-forespørgsel mod Spark-kontekst.
%%spark Scala Udfør en Scala-forespørgsel mod Spark Context.
%%sql SparkSQL Udfør en SparkSQL-forespørgsel mod Spark Context.
%%html Html Udfør en HTML-forespørgsel mod Spark Context.
%%sparkr R Udfør en R-forespørgsel mod Spark Context.

IntelliSense i IDE-stil

Stofnotesbøger er integreret med Monaco-editoren for at bringe IntelliSense i IDE-stil til celleeditoren. Syntaksfremhævning, fejlmarkør og automatiske kodefuldførelser hjælper dig med hurtigt at skrive kode og identificere problemer.

IntelliSense-funktionerne er på forskellige modenhedsniveauer for forskellige sprog. I følgende tabel kan du se, hvad Fabric understøtter:

Sprog Syntaksfremhævning Syntaksfejlmærke Fuldførelse af syntakskode Fuldførelse af variabel kode Fuldførelse af systemfunktionskode Fuldførelse af brugerfunktionskode Smart indrykning 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 Nr. Ja Ja
SparkR Ja Ja Ja Ja Ja Ja Ja Ja

Bemærk

Du skal have en aktiv Spark-session for at kunne bruge fuldførelsen af IntelliSense-koden.

Kodestykker

Fabric-notesbøger indeholder kodestykker, der hjælper dig med nemt at skrive almindeligt anvendte kodemønstre, f.eks.:

  • Læsning af data som en Spark DataFrame
  • Tegningsdiagrammer med matplotlib

Kodestykker vises i Genvejstaster i IDE-stil IntelliSense blandet med andre forslag. Indholdet af kodestykket er i overensstemmelse med kodecellesproget. Du kan se tilgængelige kodestykker ved at skrive Kodestykke. Du kan også skrive et hvilket som helst nøgleord for at få vist en liste over relevante kodestykker. Hvis du f.eks. skriver læs, kan du se listen over kodestykker, der skal læse data fra forskellige datakilder.

Animeret GIF af kodestykker.

Træk og slip for at indsætte kodestykker

Brug nemt træk og slip til at læse data fra Lakehouse Explorer. Flere filtyper understøttes her. du kan arbejde med tekstfiler, tabeller, billeder osv. Du kan enten slippe til en eksisterende celle eller til en ny celle. Notesbogen genererer kodestykket i overensstemmelse hermed for at få vist dataene.

Animeret GIF med træk og slip for at indsætte kodestykker.

Træk og slip for at indsætte billeder

Brug træk og slip for nemt at indsætte billeder fra din browser eller lokale computer i en Markdown-celle.

Animeret GIF med træk og slip for at indsætte billeder.

Formatér tekstcelle med værktøjslinjeknapper

Hvis du vil fuldføre almindelige Markdown-handlinger, skal du bruge formatknapperne på værktøjslinjen tekstcelle.

Skærmbillede af værktøjslinjen til tekstformatering.

Fortryd eller annuller fortryd cellehandlinger

Vælg Fortryd eller Annuller Fortryd, eller tryk på Z eller Skift+Z for at tilbagekalde de seneste cellehandlinger. Du kan fortryde eller annullere fortryd for op til 10 af de seneste historiske cellehandlinger.

Skærmbillede, der viser menuindstillingerne for Fortryd og Annuller Fortryd.

Understøttede fortrydelsescellehandlinger:

  • Indsæt eller slet celle. Du kan tilbagekalde slettehandlinger ved at vælge Fortryd (tekstindholdet bevares sammen med cellen).
  • Omarranger celle.
  • Slå parameter til/fra.
  • Konvertér mellem kodecelle og Markdown-celle.

Bemærk

Teksthandlinger i cellen og kommentering af kodeceller kan ikke fortrydes. Du kan fortryde eller annullere fortryd for op til 10 af de seneste historiske cellehandlinger.

Flyt en celle

Du kan trække fra den tomme del af en celle og slippe den til den ønskede placering.

Du kan også flytte den markerede celle ved hjælp af Flyt op og Flyt ned på båndet.

Skærmbillede, der viser indstillingerne for flytning af en celle.

Slet en celle

Hvis du vil slette en celle, skal du vælge knappen Slet i højre side af cellen.

Du kan også bruge genvejstaster i kommandotilstand. Tryk på Skift+D for at slette den aktuelle celle.

Skjul et celleinput

Vælg ellipsen Flere kommandoer (...) på celleværktøjslinjen og Skjul input for at skjule den aktuelle celles input. Hvis du vil udvide det igen, skal du vælge Vis input , når cellen er skjult.

Skjul et celleoutput

Vælg ellipsen Flere kommandoer (...) på celleværktøjslinjen og Skjul output for at skjule outputtet for den aktuelle celle. Hvis du vil udvide det igen, skal du vælge Vis output , når celleoutputtet er skjult.

Sikkerhed for celleoutput

Ved hjælp af OneLake-dataadgangsroller (prøveversion) kan brugerne konfigurere adgang til kun bestemte mapper i et lakehouse under notesbogforespørgsler. Brugere uden adgang til en mappe eller tabel får vist en uautoriseret fejl under udførelse af forespørgsler.

Vigtigt

Sikkerhed gælder kun under udførelse af forespørgsler, og alle notesbøger, der indeholder forespørgselsresultater, kan ses af brugere, der ikke har tilladelse til at køre forespørgsler direkte mod dataene.

Lås eller frys en celle

Med låsning og frysning af cellehandlinger kan du gøre cellerne skrivebeskyttede eller forhindre, at kodeceller køres individuelt.

Animeret GIF af lås eller frys en celle.

Flet og opdel celler

Du kan bruge Flet med forrige celle eller Flet med næste celle til nemt at flette relaterede celler.

Hvis du vælger Opdel celle , kan du opdele irrelevante sætninger til flere celler. Handlingen opdeler koden i henhold til markørens linjeposition.

Skærmbillede, der viser indtastning af flet opdelte celler.

Notesbogens indhold

Hvis du vælger Konturer eller Indholdsfortegnelse, vises den første markdown-overskrift i en markdown-celle i et margentekstvindue til hurtig navigation. Margenteksten Konturer kan tilpasses og kan skjules, så den passer bedst muligt til skærmen. Vælg knappen Indhold på notesbogens kommandolinje for at åbne eller skjule margenteksten.

Skærmbillede, der viser, hvor du kan vælge indstillingen Indhold.

Markdown-foldning

Indstillingen Markdown-foldning giver dig mulighed for at skjule celler under en Markdown-celle, der indeholder en overskrift. Markdown-cellen og dens skjulte celler behandles på samme måde som et sæt sammenhængende flervalgte celler, når der udføres cellehandlinger.

Animeret GIF af markdown-foldning.

Søg og erstat

Indstillingen Søg og erstat kan hjælpe dig med at matche og finde nøgleordene eller udtrykket i notesbogindholdet. Du kan også nemt erstatte destinationsstrengen med en ny streng.

Skærmbillede, der viser ruden Søg og erstat.

Kør notesbøger

Du kan køre kodecellerne i notesbogen enkeltvist eller på én gang. Status og status for hver celle vises i notesbogen.

Kør en celle

Der er flere måder at køre koden på i en celle.

  • Peg på den celle, du vil køre, og vælg knappen Kør celle , eller tryk på Ctrl+Enter.

  • Brug genvejstaster i kommandotilstand. Tryk på Skift+Enter for at køre den aktuelle celle, og markér den næste celle. Tryk på Alt+Enter for at køre den aktuelle celle og indsætte en ny celle.

Kør alle celler

Vælg knappen Kør alle for at køre alle cellerne i den aktuelle notesbog i rækkefølge.

Kør alle celler over eller under

Udvid rullelisten fra Kør alle, og vælg derefter Kør celler ovenfor for at køre alle cellerne over den aktuelle i rækkefølge. Markér Kør celler nedenfor for at køre den aktuelle celle og alle cellerne under den aktuelle i rækkefølge.

Skærmbillede, der viser menuindstillingerne Kør alle.

Annuller alle aktive celler

Vælg Annuller alle for at annullere de aktive celler eller celler, der venter i køen.

Stop session

Stop sessionen annullerer de aktive og ventende celler og stopper den aktuelle session. Du kan genstarte en helt ny session ved at vælge kørselsindstillingen igen.

Skærmbillede, der viser, hvor du kan vælge Annuller alle kørsler og stoppe en session.

Kørsel af reference

Referencen kører en notesbog

Ud over api'en til kørsel af mssparkutils kan du også bruge %run <notebook name> kommandoen Magic til at referere til en anden notesbog i den aktuelle notesbogs kontekst. Alle de variabler, der er defineret i referencenotesbogen, er tilgængelige i den aktuelle notesbog. Kommandoen %run Magic understøtter indlejrede kald, men understøtter ikke rekursive kald. Du modtager en undtagelse, hvis sætningens dybde er større end fem.

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

Notesbogreference fungerer både i interaktiv tilstand og pipeline.

Bemærk

  • Kommandoen %run understøtter i øjeblikket kun referencenotesbøger i det samme arbejdsområde med den aktuelle notesbog.
  • Kommandoen %run understøtter i øjeblikket kun op til fire parameterværdityper: int, float, boolog string. Variabel erstatningshandling understøttes ikke.
  • Kommandoen %run understøtter ikke indlejret reference med en dybde, der er større end fem.

Referencen kører et script

Kommandoen %run giver dig også mulighed for at køre Python- eller SQL-filer, der er gemt i notesbogens indbyggede ressourcer, så du nemt kan udføre dine kildekodefiler i notesbogen.

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

For indstillinger:

  • -b/--indbygget: Denne indstilling angiver, at kommandoen finder og kører den angivne scriptfil fra notesbogens indbyggede ressourcer.
  • -c/-current: Denne indstilling sikrer, at kommandoen altid bruger den aktuelle notesbogs indbyggede ressourcer, selvom andre notesbøger refererer til den aktuelle notesbog.

Eksempler:

  • Sådan kører du script_file.py fra de indbyggede ressourcer: %run -b script_file.py

  • Sådan kører du script_file.sql fra de indbyggede ressourcer: %run -b script_file.sql

  • Sådan kører du script_file.py fra de indbyggede ressourcer med specifikke variabler: %run -b script_file.py { "parameterInt": 1, "parameterFloat": 2.5, "parameterBool": true, "parameterString": "abc" }

Bemærk

Hvis kommandoen ikke indeholder -b/-indbygget, forsøger den at finde og udføre notesbogelementet i det samme arbejdsområde i stedet for de indbyggede ressourcer.

Eksempel på brug for indlejret kørselscase:

  • Lad os antage, at vi har to notesbøger.
    • Notesbog1: Indeholder script_file1.py i de indbyggede ressourcer
    • Notesbog2: Indeholder script_file2.py i de indbyggede ressourcer
  • Lad os bruge Notesbog1 til at arbejde som en rodnotesbog med indholdet: %run Notebook2.
  • I Notesbog2 er brugsinstruktionen derefter:
    • Hvis du vil køre script_file1.py i Notesbog1 (rodnotesbogen), er koden: %run -b script_file1.py
    • Hvis du vil køre script_file2.py i Notesbog2 (den aktuelle notesbog), er koden: %run -b -c script_file2.py

Variabeloversigt

Fabric-notesbøger indeholder en indbygget variabeloversigt, der viser listen over variablernes navn, type, længde og værdi i den aktuelle Spark-session for PySpark-celler (Python). Der vises automatisk flere variabler, som de er defineret i kodecellerne. Når du klikker på hver kolonneoverskrift, sorteres variablerne i tabellen.

Hvis du vil åbne eller skjule variabeloversigten, skal du vælge Variabler på båndet i notesbogen Vis.

Skærmbillede, der viser, hvor variabler skal åbnes.

Bemærk

Variabeloversigten understøtter kun Python.

Indikator for cellestatus

Der vises en trinvis status for udførelse af celler under cellen for at hjælpe dig med at se dens aktuelle status. Når cellekørslen er fuldført, vises der en kørselsoversigt med den samlede varighed og sluttid, og den gemmes der til fremtidig reference.

Skærmbillede, der viser et eksempel på oplysninger om status for cellekørsel.

Indikator for indbygget minidiagram

Fabric-notesbogen er Spark-baseret. Kodeceller udføres eksternt på Spark-klyngen. En Spark-jobstatusindikator leveres med en statuslinje i realtid, der vises for at hjælpe dig med at forstå status for udførelse af job. Antallet af opgaver pr. job eller fase hjælper dig med at identificere det parallelle niveau for dit Spark-job. Du kan også få mere at vide om Spark-brugergrænsefladen for et bestemt job (eller en bestemt fase) ved at vælge linket i navnet på jobbet (eller fasen).

Du kan også finde loggen på celleniveau i realtid ud for statusindikatoren, og Diagnosticering kan give dig nyttige forslag, der kan hjælpe med at finjustere og foretage fejlfinding af koden.

Skærmbillede af detaljer om status for Spark-job.

I Flere handlinger kan du nemt navigere til siden med oplysninger om Spark-programmet og spark-websiden for brugergrænsefladen .

Skærmbillede af detaljer om flere handlinger.

Hemmelig redigering

Fabric-notesbøger understøtter hemmelig redigering for at erstatte de hemmelige værdier, der vises i celleoutput, med [REDACTED]for at forhindre, at legitimationsoplysningerne ved et uheld bliver lækket, når du kører notesbøger. Hemmelig redigering gælder for Python, Scala og R.

Skærmbillede af hemmelig redigering.

Magiske kommandoer i en notesbog

Indbyggede magiske kommandoer

Du kan bruge velkendte Ipython-magiske kommandoer i Fabric-notesbøger. Gennemse følgende liste over tilgængelige magiske kommandoer.

Bemærk

Dette er de eneste magiske kommandoer, der understøttes i Fabric-pipelinen: %%pyspark, %%spark, %%csharp, %%sql, %%konfigurer.

Tilgængelige kommandoer til 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, %pprint, %pprint, %precision, %prun, %psearch, %psource, %pushd, %pwd, %pycat, %quickref, % quickref rehashx, %reload_ext, %reset, %reset_selective, %sx, %system, %tb, %unalias, %unload_ext, %who, %who_ls, %who's, %xdel, %xmode.

Notesbogen Fabric understøtter også de forbedrede kommandoer til administration af biblioteker %pip og %conda. Du kan få flere oplysninger om brug i Administrer Apache Spark-biblioteker i Microsoft Fabric.

Tilgængelige kommandoer til cellemagi: %%time, %%timeit, %%capture, %%writefile, %%sql, %%pyspark, %%spark, %%csharp, %%configure, %%html, %%bash, %%markdown, %%perl, %%script, %%sh.

Brugerdefinerede magiske kommandoer

Du kan også bygge flere brugerdefinerede magiske kommandoer, der opfylder dine specifikke behov. Her er et eksempel:

  1. Opret en notesbog med navnet "MyLakehouseModule".

    Skærmbillede af definer en brugerdefineret magi.

  2. I en anden notesbog skal du referere til "MyLakehouseModule" og dens magiske kommandoer. Denne proces er den måde, hvorpå du nemt kan organisere dit projekt med notesbøger, der bruger forskellige sprog.

    Skærmbillede af brug af brugerdefineret magi.

IPython-widgets

IPython-widgets er hændelsesfulde Python-objekter, der har en repræsentation i browseren. Du kan bruge IPython-widgets som kontrolelementer med lav kode (f.eks. skyder eller tekstfelt) i din notesbog på samme måde som Jupyter-notesbogen. I øjeblikket fungerer det kun i en Python-kontekst.

Sådan bruger du IPython-widgets

  1. Importér modulet ipywidgets først for at bruge jupyterwidgetstrukturen.

    import ipywidgets as widgets
    
  2. Brug visningsfunktionen på øverste niveau til at gengive en widget, eller lad et udtryk for widgettype stå på den sidste linje i kodecellen.

    slider = widgets.IntSlider()
    display(slider)
    
  3. Kør cellen. Widgetten vises i outputområdet.

    slider = widgets.IntSlider()
    display(slider)
    

    Skærmbillede af widget, der vises i outputområdet.

  4. Brug flere display() -kald til at gengive den samme widgetforekomst flere gange. De forbliver synkroniseret med hinanden.

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

    Skærmbillede, der viser flere gange af én widget.

  5. Hvis du vil gengive to widgets uafhængigt af hinanden, skal du oprette to widgetforekomster:

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

    Skærmbillede, der viser flere forekomster af widgets.

Understøttede widgets

Widgettype Widgets
Numeriske widgets IntSlider, FloatSlider, FloatLogSlider, IntRangeSlider, FloatRangeSlider, IntProgress, FloatProgress, BoundedIntText, BoundedFloatText, IntText, FloatText
Booleske widgets Til/fra-knap, afkrydsningsfelt, gyldig
Valgwidgets Rulleliste, RadioButtons, Select, SelectionSlider, SelectionRangeSlider, ToggleButtons, SelectMultiple
Strengwidgets Tekst, tekstområde, kombinationsfelt, adgangskode, etiket, HTML, HTML-matematik, billede, knap
Afspilningswidgets (animation) Datovælger, farvevælger, controller
Objektbeholder- eller layoutwidgets Box, HBox, VBox, GridBox, Accordion, Tabs, Stablet

Kendte begrænsninger

  • Følgende widgets understøttes ikke endnu. Følgende løsninger er tilgængelige:

    Funktionalitet Løsning
    Outputwidget Du kan i stedet bruge funktionen print() til at skrive tekst til stdout.
    widgets.jslink() Du kan bruge funktionen widgets.link() til at sammenkæde to lignende widgets.
    Widgetten FileUpload Understøttes ikke endnu.
  • Den globale Fabric-visningsfunktion understøtter ikke visning af flere widgets i ét kald (f.eks . display(a, b)). Denne funktionsmåde adskiller sig fra IPython-visningsfunktionen.

  • Hvis du lukker en notesbog, der indeholder en IPython-widget, kan du ikke se eller interagere med den, før du udfører den tilsvarende celle igen.

Integrer en notesbog

Angiv en parametercelle

Hvis du vil parameterisere din notesbog, skal du vælge ellipsen (...) for at få adgang til kommandoerne Flere på celleværktøjslinjen. Vælg derefter Til/fra-parametercellen for at angive cellen som parametercellen.

Skærmbillede, der viser, hvor du kan vælge indstillingen Slå parametercelle til/fra.

Parametercellen er nyttig til integration af en notesbog i en pipeline. Pipelineaktivitet søger efter parametercellen og behandler denne celle som standard for de parametre, der overføres på udførelsestidspunktet. Kørselsprogrammet tilføjer en ny celle under parametercellen med inputparametre for at overskrive standardværdierne.

Tildel parameterværdier fra en pipeline

Når du har oprettet en notesbog med parametre, kan du udføre den fra en pipeline med aktiviteten for Fabric-notesbogen. Når du har føjet aktiviteten til pipelinelærredet, kan du angive parameterværdierne under afsnittet Basisparametre under fanen Indstillinger.

Skærmbillede, der viser, hvor du kan tildele parameterværdier fra en pipeline.

Når du tildeler parameterværdier, kan du bruge pipelineudtrykkets sprog eller funktioner og variabler.

Magisk kommando til konfiguration af Spark-session

Du kan tilpasse din Spark-session med den magiske kommando %%configure. Fabric-notesbogen understøtter brugerdefinerede vCores, Hukommelse for driveren og executoren, Spark-egenskaber, monteringspunkter, pool og standard lakehouse for notesbogsessionen. De kan bruges i både interaktive aktiviteter for notesbøger og pipelinenotesbøger. Vi anbefaler, at du kører kommandoen %%configure i starten af notesbogen, eller at du skal genstarte Spark-sessionen for at få indstillingerne til at træde 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", "472g"]
    "driverCores": 4, // Recommended values: [4, 8, 16, 32, 64, 80]
    "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": "<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>"
        },
    ],
    "useStarterPool": false,  // Set to true to force using starter pool
    "useWorkspacePool": "<workspace-pool-name>"
}

Bemærk

  • Vi anbefaler, at du angiver den samme værdi for "DriverMemory" og "ExecutorMemory" i %%configure. Værdierne "driverCores" og "executorCores" skal også være de samme.
  • "defaultLakehouse" overskriver dit fastgjorte lakehouse i Lakehouse Explorer, men det fungerer kun i din aktuelle notesbogsession.
  • Du kan bruge %%konfigurer i Fabric-pipelines, men hvis den ikke er angivet i den første kodecelle, mislykkes pipelinekørslen, fordi sessionen ikke kan genstartes.
  • %%konfigurationen, der bruges i mssparkutils.notebook.run, ignoreres, men bruges i notesbogen %run vil fortsætte med at køre.
  • Standardegenskaberne for Spark-konfigurationen skal bruges i brødteksten "conf". Fabric understøtter ikke reference på første niveau for Spark-konfigurationsegenskaberne.
  • Nogle særlige Spark-egenskaber, herunder "spark.driver.cores", "spark.executor.cores", "spark.driver.memory", "spark.executor.memory" og "spark.executor.instances" træder ikke i kraft i "conf"-brødteksten.

Konfiguration af en parameteriseret session fra en pipeline

Konfiguration af parameteriseret session giver dig mulighed for at erstatte værdien i %%configure magic med aktivitetsparametrene for pipelinekørslen af notesbogen. Når du forbereder %%konfigurer kodecelle, kan du tilsidesætte standardværdier (også konfigurerbare, 4 og "2000" i nedenstående eksempel) 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 notesbog bruger standardværdien, hvis du kører en notesbog direkte i interaktiv tilstand, eller hvis aktiviteten for pipelinenotesbogen ikke giver nogen parameter, der svarer til "activityParameterName".

Under en pipelinekørsel kan du konfigurere aktivitetsindstillinger for pipelinenotesbogen på følgende måde:

Skærmbillede, der viser, hvor du kan konfigurere en parameteriseret session.

Hvis du vil ændre sessionskonfigurationen, skal navnet på aktivitetsparametrene for pipelinenotesbogen være det samme som parameterName i notesbogen. I dette eksempel på kørsel af en pipeline driverCores erstattes konfigurer i %%af 8 og livy.rsc.sql.num-rows erstattes af 4000.

Bemærk

  • Hvis en pipelinekørsel mislykkes, fordi du har brugt kommandoen %%configure magic, kan du finde flere fejloplysninger ved at køre den magiske celle %%configure i notesbogens interaktive tilstand.
  • Planlagte kørsler af notesbøger understøtter ikke konfiguration af session med parametre.

Python-logføring i en notesbog

Du kan finde Python-logge og angive forskellige logniveauer og -format som den eksempelkode, der 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")

Få vist oversigten over inputkommandoer

Fabric-notesbogen understøtter magisk kommando %history til at udskrive inputkommandohistorikken, der blev udført i den aktuelle session, sammenlignet med den almindelige Jupyter Ipython-kommando, der %history fungerer for flere sprogkontekst i notesbogen.

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

For indstillinger:

  • -n: Udskriv udførelsesnummer.

Hvor området kan være:

  • N: Udskriftskode for Nth udført celle.
  • M-N: Udskriftskode fra Mth til Nth udført celle.

Eksempel:

  • Udskriv inputhistorik fra 1. til 2. udførte celle: %history -n 1-2

Genvejstaster

På samme måde som jupyternotesbøger har Fabric-notesbøger en modal brugergrænseflade. Tastaturet gør forskellige ting, afhængigt af hvilken tilstand notesbogcellen er i. Fabric-notesbøger understøtter følgende to tilstande for en given kodecelle: Kommandotilstand og Redigeringstilstand.

  • En celle er i kommandotilstand, når der ikke er nogen tekstmarkør, der beder dig om at skrive. Når en celle er i kommandotilstand, kan du redigere notesbogen som helhed, men ikke skrive i individuelle celler. Angiv kommandotilstand ved at trykke på ESC eller ved at bruge musen til at markere uden for en celles editorområde.

    Skærmbillede af en celle i kommandotilstand.

  • Redigeringstilstand kan angives fra en tekstmarkør, der beder dig om at skrive i editorområdet. Når en celle er i redigeringstilstand, kan du skrive i cellen. Angiv redigeringstilstand ved at trykke på Enter eller ved at bruge musen til at markere en celles editorområde.

    Skærmbillede af en celle i redigeringstilstand.

Genvejstaster i kommandotilstand

Handling Genveje til notesbog
Kør den aktuelle celle, og markér nedenfor Shift+Enter
Kør den aktuelle celle, og indsæt under Alt+Enter
Kør aktuel celle Ctrl+Enter
Markér celle over Op
Markér celle under Ned
Markér forrige celle K
Markér næste celle J
Indsæt celle over A
Indsæt celle under F
Slet markerede celler Skift + D
Skift til redigeringstilstand Indsæt

Genvejstaster i redigeringstilstand

Ved hjælp af følgende tastetryksgenveje kan du nemt navigere og køre kode i Fabric-notesbøger i redigeringstilstand.

Handling Genveje til notesbog
Flyt markøren op Op
Flyt markøren ned Ned
Fortryd Ctrl + Z
Annuller fortryd Ctrl + Y
Kommentar eller fjernelse Ctrl + /
Kommentar: Ctrl + K + C
Uncomment: Ctrl + K + U
Slet ord før Ctrl + Tilbage
Slet ord efter Ctrl + Slet
Gå til cellestart Ctrl + Startside
Gå til celleafslutning Ctrl + slut
Gå ét ord til venstre Ctrl + venstre
Gå et ord til højre Ctrl + højre
Vælg alt Ctrl + A
Led Ctrl + ]
Ryk ud Ctrl + [
Skift til kommandotilstand Esc

Hvis du vil finde alle genvejstaster, skal du vælge Vis på båndet i notesbogen og derefter vælge Tastebindinger.