Del via


Hva er Apache Spark-databehandling i Microsoft Fabric?

Gjelder for:✅ Dataingeniør ing og datavitenskap i Microsoft Fabric

Microsoft Fabric Dataingeniør ing og Data Science-opplevelser opererer på en fullstendig administrert Apache Spark-databehandlingsplattform. Denne plattformen er utformet for å levere enestående hastighet og effektivitet. Med startbassenger kan du forvente rask initialisering av Apache Spark-økter, vanligvis innen 5 til 10 sekunder, uten behov for manuell konfigurasjon. Du får også fleksibilitet til å tilpasse Apache Spark-bassenger i henhold til dine spesifikke krav til datateknikk og datavitenskap. Plattformen muliggjør en optimalisert og skreddersydd analyseopplevelse.

Bilde av en Spark-databehandlingsplattform med startbassenger og egendefinerte Spark-bassenger.

Startbassenger

Startbassenger er en rask og enkel måte å bruke Spark på Microsoft Fabric-plattformen på i løpet av sekunder. Du kan bruke Spark-økter umiddelbart, i stedet for å vente på at Spark skal konfigurere nodene for deg, noe som hjelper deg med å gjøre mer med data og få innsikt raskere.

Bilde av en tabell som viser konfigurasjon av startutvalg.

Startbassenger har Apache Spark-klynger som alltid er på og klare for forespørslene dine. De bruker middels noder som dynamisk skaleres opp basert på spark-jobbbehovene dine.

Diagram som viser utformingen av startutvalg på høyt nivå.

Startutvalg har også standardinnstillinger som lar deg installere biblioteker raskt uten å redusere starttidspunktet for økten. Hvis du imidlertid vil bruke ekstra egendefinerte Apache Spark-egenskaper eller -biblioteker fra arbeidsområdet eller kapasitetsinnstillingene, tar spark lengre tid å få nodene for deg. Når det gjelder fakturering og kapasitetsforbruk, belastes du for kapasitetsforbruket når du begynner å kjøre notatblokken eller Apache Spark-jobbdefinisjonen. Du belastes ikke for tiden klyngene er inaktive i utvalget.

Diagram som viser fasene på høyt nivå i fakturering av startutvalg.

Hvis du for eksempel sender en notatblokkjobb til et startutvalg, faktureres du bare for tidsperioden der notatblokkøkten er aktiv. Den fakturerte tiden inkluderer ikke inaktiv tid eller tiden det tar å tilpasse økten med Spark-konteksten.

Spark-bassenger

Et Spark-utvalg er en måte å fortelle Spark hva slags ressurser du trenger for dataanalyseoppgavene dine. Du kan gi Spark-utvalget et navn, og velge hvor mange og hvor store nodene (maskinene som gjør arbeidet) er. Du kan også fortelle Spark hvordan du justerer antall noder avhengig av hvor mye arbeid du har. Det er gratis å opprette et Spark-basseng. du betaler bare når du kjører en Spark-jobb på bassenget, og deretter setter Spark opp nodene for deg.

Hvis du ikke bruker Spark-bassenget på 2 minutter etter at økten utløper, blir Spark-bassenget deallocated. Denne standard utløpsperioden for økten er satt til 20 minutter, og du kan endre den hvis du vil. Hvis du er administrator for arbeidsområdet, kan du også opprette egendefinerte Spark-utvalg for arbeidsområdet og gjøre dem til standardalternativ for andre brukere. På denne måten kan du spare tid og unngå å sette opp et nytt Spark-basseng hver gang du kjører en notatblokk eller en Spark-jobb. Egendefinerte Spark-bassenger tar omtrent tre minutter å starte, fordi Spark må hente nodene fra Azure.

Du kan også opprette spark-bassenger for enkeltnode ved å angi minimum antall noder til én, slik at driveren og eksekutoren kjører i én enkelt node som leveres med gjenopprettelig HA og er egnet for små arbeidsbelastninger.

Størrelsen og antall noder du kan ha i det egendefinerte Spark-utvalget, avhenger av Microsoft Fabric-kapasiteten. Kapasitet er et mål på hvor mye datakraft du kan bruke i Azure. En måte å tenke på det på er at to Apache Spark VCores (en enhet med datakraft for Spark) er lik én kapasitetsenhet. En SKU F64 for stoffkapasitet har for eksempel 64 kapasitetsenheter, som tilsvarer 128 Spark VCores. Du kan bruke disse Spark VCores til å opprette noder av forskjellige størrelser for det egendefinerte Spark-utvalget, så lenge det totale antallet Spark VCores ikke overskrider 128.

Spark-bassenger faktureres som startbassenger; du betaler ikke for de egendefinerte Spark-bassengene du har opprettet, med mindre du har opprettet en aktiv Spark-økt for å kjøre en notatblokk eller spark-jobbdefinisjon. Du faktureres bare for varigheten av jobbkjøringene. Du faktureres ikke for faser som oppretting av klynge og avtaleplassering etter at jobben er fullført.

Diagram som viser faser på høyt nivå i fakturering av egendefinerte utvalg.

Hvis du for eksempel sender inn en notatblokkjobb til et egendefinert Spark-utvalg, blir du bare belastet for tidsperioden når økten er aktiv. Faktureringen for notatblokkøkten stopper når Spark-økten er stoppet eller utløpt. Du belastes ikke for tiden det tar å skaffe klyngeforekomster fra skyen, eller for tiden det tar å initialisere Spark-konteksten.

Mulige egendefinerte utvalgskonfigurasjoner for F64 basert på forrige eksempel:

SKU for stoffkapasitet Kapasitetsenheter Spark VCores Nodestørrelse Maksimalt antall noder
F64 64 384 Liten 96
F64 64 384 Middels 48
F64 64 384 Stor 24
F64 64 384 X-Large 12
F64 64 384 XX-Large 6

Merk

Hvis du vil opprette egendefinerte utvalg, trenger du administratortillatelser for arbeidsområdet. Og microsoft Fabric-kapasitetsadministratoren må gi tillatelser til å tillate at administratorer av arbeidsområdet kan endre størrelsen på de egendefinerte Spark-bassengene. Hvis du vil ha mer informasjon, kan du se Komme i gang med egendefinerte Spark-bassenger i Fabric

Noder

En Apache Spark-utvalgsforekomst består av én hodenode og arbeidernoder, som kan starte minst én node i en Spark-forekomst. Hodenoden kjører ekstra administrasjonstjenester som Livy, Yarn Resource Manager, Zookeeper og Apache Spark-driveren. Alle noder kjører tjenester som Node Agent og Yarn Node Manager. Alle arbeidernoder kjører Apache Spark Executor-tjenesten.

Nodestørrelser

Et Spark-utvalg kan defineres med nodestørrelser som spenner fra en liten databehandlingsnode (med 4 vCore og 28 GB minne) til en dobbel ekstra stor databehandlingsnode (med 64 vCore og 400 GB minne per node). Nodestørrelser kan endres etter oppretting av utvalget, selv om den aktive økten må startes på nytt.

Størrelse vCore Minne
Liten 4 32 GB
Middels 8 64 GB
Stor 16 128 GB
X-Large 32 256 GB
XX-Large 64 512 GB

Autoskaler

Autoskala for Apache Spark-bassenger tillater automatisk opp- og nedskalering av databehandlingsressurser basert på aktivitetsmengden. Når du aktiverer autoskalafunksjonen, angir du minimum og maksimalt antall noder som skal skaleres. Når du deaktiverer autoskalafunksjonen, forblir antall noder angitt fast. Du kan endre denne innstillingen etter oppretting av utvalget, selv om du kanskje må starte forekomsten på nytt.

Merk

Som standard er spark.yarn.executor.decommission.enabled satt til sann, slik at den automatiske avslutningen av underutnyttede noder kan optimalisere beregningseffektiviteten. Hvis mindre aggressiv nedskalering foretrekkes, kan denne konfigurasjonen settes til usann

Dynamisk fordeling

Dynamisk tildeling gjør at Apache Spark-programmet kan be om flere eksekutorer hvis oppgavene overskrider belastningen som gjeldende eksekutorer kan bære. Det frigir også eksekutorene når jobbene er fullført, og hvis Spark-programmet flyttes til inaktiv tilstand. Enterprise-brukere synes ofte det er vanskelig å justere konfigurasjonene for eksekutoren fordi de er svært forskjellige på tvers av ulike faser av en spark-jobbkjøringsprosess. Disse konfigurasjonene er også avhengige av datavolumet som behandles, som endres fra tid til annen. Du kan aktivere dynamisk tildeling av executors-alternativet som en del av utvalgskonfigurasjonen, som muliggjør automatisk tildeling av eksekutorer til Spark-programmet basert på nodene som er tilgjengelige i Spark-utvalget.

Når du aktiverer det dynamiske tildelingsalternativet for hvert Spark-program som sendes inn, reserverer systemet eksekutorer under innsendingstrinnet for jobben basert på minimumsnodene. Du angir maksimalt antall noder for å støtte vellykkede scenarioer for automatisk skalering.