I denne epoken med big data, søker organisasjoner over hele verden konstant etter innovative måter å trekke ut verdi og innsikt fra sine enorme datasett. Apache Spark tilbyr skalerbarheten og hastigheten som trengs for å behandle store datamengder effektivt.
Amazon EMR er den bransjeledende cloud big data-løsningen for petabyte-skala databehandling, interaktiv analyse og maskinlæring (ML) ved bruk av åpen kildekode-rammeverk som Apache Spark, Apache Hiveog Presto. Amazon EMR er det beste stedet å kjøre Apache Spark. Du kan raskt og enkelt lage administrerte Spark-klynger fra AWS-administrasjonskonsoll, AWS kommandolinjegrensesnitt (AWS CLI), eller Amazon EMR API. Du kan også bruke flere Amazon EMR-funksjoner, inkludert rask Amazon enkel lagringstjeneste (Amazon S3) tilkobling ved hjelp av Amazon EMR File System (EMRFS), integrasjon med Amazon EC2 Spot markedet og AWS Lim Data Catalog og EMR Managed Scaling for å legge til eller fjerne forekomster fra klyngen din. Amazon EMR Studio er et integrert utviklingsmiljø (IDE) som gjør det enkelt for dataforskere og dataingeniører å utvikle, visualisere og feilsøke applikasjoner for datateknikk og datavitenskap skrevet i R, Python, Scala og PySpark. EMR Studio tilbyr fullt administrerte Jupyter-notatbøker og verktøy som Spark UI og YARN Timeline Service for å forenkle feilsøking.
For å låse opp potensialet som er skjult i databankene, er det viktig å gå utover tradisjonell analyse. Gå inn i generativ AI, en banebrytende teknologi som kombinerer ML med kreativitet for å generere menneskelignende tekst, kunst og til og med kode. Amazonas grunnfjell er den enkleste måten å bygge og skalere generative AI-applikasjoner med grunnmodeller (FM). Amazon Bedrock er en fullt administrert tjeneste som gjør FM-er fra Amazon og ledende AI-selskaper tilgjengelige gjennom et API, slik at du raskt kan eksperimentere med en rekke FM-er på lekeplassen, og bruke en enkelt API for slutninger uavhengig av modellene du velger, noe som gir du fleksibiliteten til å bruke FM-er fra forskjellige leverandører og holde deg oppdatert med de nyeste modellversjonene med minimale kodeendringer.
I dette innlegget utforsker vi hvordan du kan overlade dataanalysen din med generativ AI ved å bruke Amazon EMR, Amazon Bedrock og pyspark-ai bibliotek. Pyspark-ai-biblioteket er en engelsk SDK for Apache Spark. Den tar instruksjoner på engelsk og kompilerer dem til PySpark-objekter som DataFrames. Dette gjør det enkelt å jobbe med Spark, slik at du kan fokusere på å hente ut verdi fra dataene dine.
Løsningsoversikt
Følgende diagram illustrerer arkitekturen for bruk av generativ AI med Amazon EMR og Amazon Bedrock.
EMR Studio er en nettbasert IDE for fullt administrerte Jupyter-notatbøker som kjører på EMR-klynger. Vi samhandler med EMR Studio Workspaces koblet til en løpende EMR-klynge og kjører notatboken som er en del av dette innlegget. Vi bruker New York City Taxi data for å få innsikt i ulike taxiturer tatt av brukere. Vi stiller spørsmålene på naturlig språk på toppen av dataene som er lastet inn i Spark DataFrame. Pyspark-ai-biblioteket bruker deretter Amazon Titan Text FM fra Amazon Bedrock for å lage en SQL-spørring basert på spørsmålet om naturlig språk. Pyspark-ai-biblioteket tar SQL-spørringen, kjører den ved hjelp av Spark SQL, og gir resultater tilbake til brukeren.
I denne løsningen kan du opprette og konfigurere de nødvendige ressursene i AWS-kontoen din med en AWS skyformasjon mal. Malen lager AWS Lim database og tabeller, S3-bøtte, VPC og annet AWS identitets- og tilgangsadministrasjon (IAM) ressurser som brukes i løsningen.
Malen er designet for å demonstrere hvordan du bruker EMR Studio med pyspark-ai-pakken og Amazon Bedrock, og er ikke ment for produksjonsbruk uten modifikasjoner. I tillegg bruker malen us-east-1
Region og fungerer kanskje ikke i andre regioner uten endringer. Malen lager ressurser som medfører kostnader mens de er i bruk. Følg oppryddingstrinnene på slutten av dette innlegget for å slette ressursene og unngå unødvendige kostnader.
Forutsetninger
Før du starter CloudFormation-stakken, sørg for at du har følgende:
- En AWS-konto som gir tilgang til AWS-tjenester
- En IAM-bruker med en tilgangsnøkkel og hemmelig nøkkel for å konfigurere AWS CLI, og tillatelser til å opprette en IAM-rolle, IAM-policyer og stabler i AWS CloudFormation
- Titan Text G1 – Express-modellen er for øyeblikket i forhåndsvisning, så du må ha forhåndsvisningstilgang for å bruke den som en del av dette innlegget
Opprett ressurser med AWS CloudFormation
CloudFormation oppretter følgende AWS-ressurser:
- En VPC-stabel med private og offentlige undernett til bruk med EMR Studio, rutetabeller og NAT-gateway.
- En EMR-klynge med Python 3.9 installert. Vi bruker en bootstrap-handling for å installere Python 3.9 og andre relevante pakker som pyspark-ai og Amazon Bedrock-avhengigheter. (For mer informasjon, se bootstrap-skript.)
- En S3-bøtte for EMR Studio Workspace og oppbevaring av bærbare.
- IAM-roller og policyer for EMR Studio-oppsett, Amazon Bedrock-tilgang og kjørende notatbøker
Gjør følgende for å komme i gang:
CloudFormation-stakken tar omtrent 20–30 minutter å fullføre. Du kan overvåke fremdriften på AWS CloudFormation-konsollen. Når statusen leser CREATE_COMPLETE
, vil AWS-kontoen din ha ressursene som er nødvendige for å implementere denne løsningen.
Lag EMR Studio
Nå kan du opprette et EMR-studio og arbeidsområde for å jobbe med notatbokkoden. Fullfør følgende trinn:
- På EMR Studio-konsollen velger du Lag Studio.
- Angi Studio navn as
GenAI-EMR-Studio
og gi en beskrivelse. - på Nettverk og sikkerhet seksjon, spesifiser følgende:
- Til VPC, velg VPC-en du opprettet som en del av CloudFormation-stakken du distribuerte. Få VPC-ID-en ved å bruke CloudFormation-utgangene for VPCID-nøkkelen.
- Til subnett, velg alle fire undernett.
- Til Sikkerhet og tilgang, plukke ut Tilpasset sikkerhetsgruppe.
- Til Klynge/endepunktsikkerhetsgruppe, velg
EMRSparkAI-Cluster-Endpoint-SG
. - Til Sikkerhetsgruppe for arbeidsområde, velg
EMRSparkAI-Workspace-SG
.
- på Studioservicerolle seksjon, spesifiser følgende:
- Til Autentisering, plukke ut AWS Identity and Access Management (IAM).
- Til AWS IAM tjenesterolle, velg
EMRSparkAI-StudioServiceRole
.
- på Oppbevaring av arbeidsplass seksjonen, bla gjennom og velg S3-bøtten for oppbevaring fra og med
emr-sparkai-<account-id>
. - Velg Lag Studio.
- Når EMR Studio er opprettet, velg lenken under Studio Access URL for å få tilgang til studioet.
- Når du er i studioet, velg Lag arbeidsområde.
- Legg til
emr-genai
som navn på arbeidsområdet og velg Lag arbeidsområde. - Når arbeidsområdet er opprettet, velg navnet for å starte arbeidsområdet (sørg for at du har deaktivert popup-blokkering).
Big data-analyse ved hjelp av Apache Spark med Amazon EMR og generativ AI
Nå som vi har fullført det nødvendige oppsettet, kan vi begynne å utføre store dataanalyser ved å bruke Apache Spark med Amazon EMR og generativ AI.
Som et første trinn laster vi inn en notatbok som har den nødvendige koden og eksempler for å jobbe med brukssaken. Vi bruker NY Taxi datasett, som inneholder detaljer om drosjeturer.
- Last ned notatbokfilen NYTaxi.ipynb og last det opp til arbeidsområdet ditt ved å velge opplastingsikonet.
- Etter at notatboken er importert, åpner du den og velger
PySpark
som kjernen.
PySpark AI bruker som standard OpenAIs ChatGPT4.0 som LLM-modellen, men du kan også plugge inn modeller fra Amazon Bedrock, Amazon SageMaker JumpStart, og andre tredjepartsmodeller. For dette innlegget viser vi hvordan du integrerer Amazon Bedrock Titan-modellen for generering av SQL-spørringer og kjører den med Apache Spark i Amazon EMR.
- For å komme i gang med notatboken, må du knytte arbeidsområdet til et datalag. For å gjøre det, velg Beregn ikonet i navigasjonsruten og velg EMR-klyngen opprettet av CloudFormation-stakken.
- Konfigurer Python-parametrene for å bruke den oppdaterte Python 3.9-pakken med Amazon EMR:
- Importer de nødvendige bibliotekene:
- Etter at bibliotekene er importert, kan du definere LLM-modellen fra Amazon Bedrock. I dette tilfellet bruker vi amazon.titan-text-express-v1. Du må angi region- og Amazon Bedrock-endepunkt-URL basert på forhåndsvisningstilgangen for Titan Text G1 – Express-modellen.
- Koble Spark AI til Amazon Bedrock LLM-modellen for generering av SQL-spørringer basert på spørsmål på naturlig språk:
Her har vi initialisert Spark AI med verbose=False; du kan også sette verbose=True for å se flere detaljer.
Nå kan du lese NYC Taxi-dataene i en Spark DataFrame og bruke kraften til generativ AI i Spark.
- Du kan for eksempel spørre om antall poster i datasettet:
Vi får følgende svar:
Spark AI bruker internt Langkjede og SQL-kjede, som skjuler kompleksiteten for sluttbrukere som arbeider med spørringer i Spark.
Den bærbare datamaskinen har noen flere eksempelscenarier for å utforske kraften til generativ AI med Apache Spark og Amazon EMR.
Rydd opp
Tøm innholdet i S3-bøtten emr-sparkai-<account-id>
, slett EMR Studio-arbeidsområdet opprettet som en del av dette innlegget, og slett CloudFormation-stakken du distribuerte.
konklusjonen
Dette innlegget viste hvordan du kan overlade stordataanalysen din ved hjelp av Apache Spark med Amazon EMR og Amazon Bedrock. PySpark AI-pakken lar deg utlede meningsfull innsikt fra dataene dine. Det bidrar til å redusere utviklings- og analysetiden, reduserer tiden til å skrive manuelle spørringer og lar deg fokusere på din forretningsbruk.
Om forfatterne
Saurabh Bhutyani er en Principal Analytics Specialist Solutions Architect hos AWS. Han brenner for ny teknologi. Han begynte i AWS i 2019 og jobber med kunder for å gi arkitektonisk veiledning for å kjøre generative AI-brukstilfeller, skalerbare analyseløsninger og datamaskeringsarkitekturer ved å bruke AWS-tjenester som Amazon Bedrock, Amazon SageMaker, Amazon EMR, Amazon Athena, AWS Glue, AWS Lake Formation, og Amazon DataZone.
Harde Vardhan er en AWS Senior Solutions Architect, som spesialiserer seg på analyse. Han har over 8 års erfaring med arbeid innen big data og datavitenskap. Han brenner for å hjelpe kunder med å ta i bruk beste praksis og oppdage innsikt fra dataene deres.
- SEO-drevet innhold og PR-distribusjon. Bli forsterket i dag.
- PlatoData.Network Vertical Generative Ai. Styrk deg selv. Tilgang her.
- PlatoAiStream. Web3 Intelligence. Kunnskap forsterket. Tilgang her.
- PlatoESG. Karbon, CleanTech, Energi, Miljø, Solenergi, Avfallshåndtering. Tilgang her.
- PlatoHelse. Bioteknologisk og klinisk etterretning. Tilgang her.
- kilde: https://aws.amazon.com/blogs/big-data/use-generative-ai-with-amazon-emr-amazon-bedrock-and-english-sdk-for-apache-spark-to-unlock-insights/
- : har
- :er
- :ikke
- $OPP
- 1
- 10
- 100
- 107
- 11
- 20
- 200
- 2019
- 320
- 500
- 521
- 7
- 8
- 9
- 990
- a
- Om oss
- adgang
- tilgangsstyring
- Logg inn
- anerkjenne
- Handling
- legge til
- Ytterligere
- I tillegg
- adoptere
- AI
- ai brukstilfeller
- Alle
- tillate
- tillater
- også
- Amazon
- Amazonas Athena
- Amazon EMR
- Amazon SageMaker
- Amazon Web Services
- beløp
- an
- analyse
- analytics
- og
- besvare
- noen
- Apache
- Apache Spark
- api
- søknader
- ca
- arkitektonisk
- arkitektur
- ER
- Kunst
- AS
- spør
- Førsteamanuensis
- At
- tilgjengelig
- unngå
- AWS
- AWS skyformasjon
- AWS Lim
- AWS Lake formasjon
- tilbake
- basert
- BEST
- beste praksis
- Beyond
- Stor
- Store data
- Bootstrap
- bygge
- virksomhet
- men
- knapp
- by
- CAN
- saken
- saker
- katalog
- kjede
- Endringer
- avgifter
- Velg
- velge
- City
- Cloud
- sky store data
- Cluster
- kode
- skurtreskerne
- Selskaper
- fullføre
- Terminado
- kompleksitet
- Beregn
- tilkoblet
- Tilkobling
- Konsoll
- stadig
- inneholder
- innhold
- Kostnader
- skape
- opprettet
- skaper
- kreativitet
- I dag
- Kunder
- skjærekant
- dato
- Data Analytics
- databehandling
- datavitenskap
- Database
- datasett
- Dato
- Misligholde
- definere
- demonstrere
- avhengig
- utplassert
- Derive
- beskrivelse
- designet
- detaljer
- utvikle
- Utvikling
- forskjellig
- deaktivert
- oppdage
- do
- effektivt
- uanstrengt
- slutt
- Endpoint
- Ingeniørarbeid
- Ingeniører
- Engelsk
- sikre
- Enter
- går inn
- Miljø
- Era
- avgjørende
- Eter (ETH)
- Selv
- eksempel
- eksempler
- erfaring
- eksperiment
- utforske
- ekspress
- trekke ut
- FAST
- Egenskaper
- Noen få
- felt
- filet
- slutt~~POS=TRUNC
- Først
- fleksibilitet
- Fokus
- følge
- etter
- Til
- formasjon
- Fundament
- fire
- rammer
- fra
- fullt
- g1
- garner
- gateway
- generere
- generasjonen
- generative
- Generativ AI
- få
- Giving
- Go
- veiledning
- Ha
- he
- hjelpe
- hjelpe
- hjelper
- skjult
- Gjemme seg
- Hvordan
- Hvordan
- http
- HTTPS
- i
- IAM
- ICON
- ID
- Identitet
- styring av identitet og tilgang
- illustrerer
- iverksette
- importere
- in
- I andre
- Inkludert
- bransjeledende
- informasjon
- innovative
- inngang
- innsikt
- installere
- forekomster
- instruksjoner
- integrere
- integrert
- integrering
- tiltenkt
- samhandle
- interaktiv
- internt
- inn
- IT
- DET ER
- ble med
- jpg
- Hold
- nøkkel
- Vet
- innsjø
- Språk
- stor
- siste
- lansere
- lag
- ledende
- læring
- bibliotekene
- Bibliotek
- i likhet med
- linje
- LINK
- laste
- maskin
- maskinlæring
- gjøre
- GJØR AT
- fikk til
- ledelse
- håndbok
- marked
- Kan..
- meningsfylt
- mesh
- minimal
- minutter
- ML
- modell
- modeller
- Overvåke
- mer
- mest
- navn
- Naturlig
- Naturlig språk
- Navigasjon
- nødvendig
- Trenger
- nødvendig
- nettverk
- Ny
- Ny teknologi
- bærbare
- notatbøker
- nå
- Antall
- NY
- NYC
- gjenstander
- observasjon
- of
- Tilbud
- on
- åpen
- åpen kildekode
- or
- organisasjoner
- Annen
- utganger
- enn
- oversikt
- pakke
- pakker
- brød
- parametere
- del
- lidenskapelig
- utfører
- tillatelser
- Sted
- plato
- Platon Data Intelligence
- PlatonData
- lekeplass
- støpsel
- Politikk
- pop-up
- Post
- potensiell
- makt
- praksis
- Forhåndsvisning
- Principal
- privat
- prosess
- prosessering
- Produksjon
- Progress
- gi
- forutsatt
- tilbydere
- gir
- offentlig
- Python
- spørsmål
- spørsmål
- spørsmål
- raskt
- R
- Lese
- poster
- redusere
- redusere
- referere
- Uansett
- region
- regioner
- relevant
- fjerne
- påkrevd
- Ressurser
- svar
- Resultater
- rides
- Rolle
- roller
- Rute
- Kjør
- rennende
- går
- sagemaker
- Skala
- skalerbarhet
- skalerbar
- Skala
- skalering
- scenarier
- Vitenskap
- forskere
- SDK
- søker
- Secret
- sikkerhet
- se
- velg
- senior
- tjeneste
- Tjenester
- sett
- oppsett
- Vis
- viste
- Enkelt
- forenkle
- enkelt
- So
- løsning
- Solutions
- kilde
- Spark
- spesialist
- spesialisert
- fart
- SQL
- stable
- Stabler
- Begynn
- startet
- Start
- status
- Trinn
- Steps
- lagring
- rett fram
- studio
- subnett
- slik
- Superladning
- sikker
- system
- bord
- tatt
- tar
- Technologies
- Teknologi
- mal
- tekst
- Det
- De
- deres
- Dem
- deretter
- de
- tredjeparts
- denne
- trodde
- Gjennom
- tid
- tidslinje
- titan
- til
- verktøy
- topp
- tradisjonelle
- ui
- etter
- låse opp
- oppdatert
- URL
- bruke
- bruk sak
- brukt
- Bruker
- Brukere
- bruker
- ved hjelp av
- verdi
- variasjon
- ulike
- enorme
- visualisere
- Vei..
- måter
- we
- web
- webtjenester
- Web-basert
- når
- hvilken
- mens
- vil
- med
- innenfor
- uten
- Arbeid
- arbeid
- virker
- verdensomspennende
- skrive
- skrevet
- år
- york
- du
- Din
- zephyrnet