Nell’era dei big data, le organizzazioni di tutto il mondo sono costantemente alla ricerca di modi innovativi per estrarre valore e insight dai loro vasti set di dati. Apache Spark offre la scalabilità e la velocità necessarie per elaborare grandi quantità di dati in modo efficiente.
Amazon EMR è la soluzione per big data nel cloud leader del settore per l'elaborazione dei dati su scala petabyte, l'analisi interattiva e l'apprendimento automatico (ML) utilizzando framework open source come Apache Spark, Alveare di Apachee Presto. Amazon EMR è il posto migliore in cui eseguire Apache Spark. Puoi creare in modo rapido e semplice cluster Spark gestiti da Console di gestione AWS, Interfaccia della riga di comando di AWS (AWS CLI) o API Amazon EMR. Puoi anche utilizzare funzionalità aggiuntive di Amazon EMR, incluso Fast Servizio di archiviazione semplice Amazon (Amazon S3) connettività utilizzando Amazon EMR File System (EMRFS), integrazione con Spot Amazon EC2 mercato e il Colla AWS Data Catalog e scalabilità gestita da EMR per aggiungere o rimuovere istanze dal cluster. Amazon EMR Studio è un ambiente di sviluppo integrato (IDE) che semplifica ai data scientist e agli ingegneri dei dati lo sviluppo, la visualizzazione e il debug di applicazioni di data engineering e data science scritte in R, Python, Scala e PySpark. EMR Studio fornisce notebook Jupyter completamente gestiti e strumenti come Spark UI e YARN Timeline Service per semplificare il debug.
Per sbloccare il potenziale nascosto nei dati, è essenziale andare oltre l'analisi tradizionale. Entra nell'intelligenza artificiale generativa, una tecnologia all'avanguardia che combina il machine learning con la creatività per generare testo, grafica e persino codice simili a quelli umani. Roccia Amazzonica è il modo più semplice per creare e scalare applicazioni di intelligenza artificiale generativa con modelli di base (FM). Amazon Bedrock è un servizio completamente gestito che rende disponibili i FM di Amazon e delle principali aziende di intelligenza artificiale tramite un'API, così puoi sperimentare rapidamente una varietà di FM sul campo e utilizzare un'unica API per l'inferenza indipendentemente dai modelli scelti, fornendo hai la flessibilità di utilizzare FM di diversi fornitori e di tenerti aggiornato con le ultime versioni dei modelli con modifiche minime al codice.
In questo post esploriamo come potenziare l'analisi dei dati con l'intelligenza artificiale generativa utilizzando Amazon EMR, Amazon Bedrock e pyspark-ai biblioteca. La libreria pyspark-ai è un SDK inglese per Apache Spark. Prende istruzioni in lingua inglese e le compila in oggetti PySpark come DataFrames. Ciò semplifica il lavoro con Spark, consentendoti di concentrarti sull'estrazione di valore dai tuoi dati.
Panoramica della soluzione
Il diagramma seguente illustra l'architettura per l'utilizzo dell'intelligenza artificiale generativa con Amazon EMR e Amazon Bedrock.
EMR Studio è un IDE basato sul Web per notebook Jupyter completamente gestiti eseguiti su cluster EMR. Interagiamo con EMR Studio Workspaces connessi a un cluster EMR in esecuzione ed eseguiamo il notebook fornito come parte di questo post. Noi usiamo il Taxi di New York dati per raccogliere informazioni sulle varie corse in taxi effettuate dagli utenti. Poniamo le domande in linguaggio naturale oltre ai dati caricati in Spark DataFrame. La libreria pyspark-ai utilizza quindi Amazon Titan Text FM di Amazon Bedrock per creare una query SQL basata sulla domanda in linguaggio naturale. La libreria pyspark-ai accetta la query SQL, la esegue utilizzando Spark SQL e fornisce i risultati all'utente.
In questa soluzione puoi creare e configurare le risorse richieste nel tuo account AWS con un file AWS CloudFormazione modello. Il modello crea il Colla AWS database e tabelle, bucket S3, VPC e altro Gestione dell'identità e dell'accesso di AWS (IAM) risorse utilizzate nella soluzione.
Il modello è progettato per dimostrare come utilizzare EMR Studio con il pacchetto pyspark-ai e Amazon Bedrock e non è destinato all'uso in produzione senza modifiche. Inoltre, il modello utilizza il file us-east-1
regione e potrebbe non funzionare in altre regioni senza modifiche. Il modello crea risorse che comportano costi mentre sono in uso. Segui i passaggi di pulizia alla fine di questo post per eliminare le risorse ed evitare addebiti inutili.
Prerequisiti
Prima di avviare lo stack CloudFormation, assicurati di avere quanto segue:
- Un account AWS che fornisce l'accesso ai servizi AWS
- Un utente IAM con una chiave di accesso e una chiave segreta per configurare AWS CLI e autorizzazioni per creare un ruolo IAM, policy IAM e stack in AWS CloudFormation
- Il modello Titan Text G1 – Express è attualmente in anteprima, quindi è necessario avere accesso all'anteprima per utilizzarlo come parte di questo post
Crea risorse con AWS CloudFormation
CloudFormation crea le seguenti risorse AWS:
- Uno stack VPC con sottoreti private e pubbliche da utilizzare con EMR Studio, tabelle di routing e gateway NAT.
- Un cluster EMR con Python 3.9 installato. Stiamo utilizzando un'azione bootstrap per installare Python 3.9 e altri pacchetti rilevanti come le dipendenze pyspark-ai e Amazon Bedrock. (Per maggiori informazioni consultare il script di bootstrap.)
- Un bucket S3 per l'area di lavoro EMR Studio e lo storage dei notebook.
- Ruoli e policy IAM per la configurazione di EMR Studio, l'accesso ad Amazon Bedrock e l'esecuzione di notebook
Per iniziare, completare i seguenti passi:
Il completamento dello stack CloudFormation richiede circa 20-30 minuti. Puoi monitorarne l'avanzamento sulla console AWS CloudFormation. Quando viene letto il suo stato CREATE_COMPLETE
, il tuo account AWS disporrà delle risorse necessarie per implementare questa soluzione.
Crea EMR Studio
Ora puoi creare uno studio EMR e un'area di lavoro per lavorare con il codice del notebook. Completa i seguenti passaggi:
- Nella console EMR Studio, scegli Crea Studio.
- Inserire il Nome dello studio as
GenAI-EMR-Studio
e fornire una descrizione. - Nel Networking e sicurezza sezione, specificare quanto segue:
- Nel VPC, scegli il VPC che hai creato come parte dello stack CloudFormation che hai distribuito. Ottieni l'ID VPC utilizzando gli output CloudFormation per la chiave VPCID.
- Nel Sottoreti, scegli tutte e quattro le sottoreti.
- Nel Sicurezza e accesso, selezionare Gruppo di sicurezza personalizzato.
- Nel Gruppo di sicurezza cluster/endpointscegli
EMRSparkAI-Cluster-Endpoint-SG
. - Nel Gruppo di sicurezza dell'area di lavoroscegli
EMRSparkAI-Workspace-SG
.
- Nel Ruolo di servizio in studio sezione, specificare quanto segue:
- Nel Autenticazione, selezionare AWS Identity and Access Management (IAM).
- Nel Ruolo del servizio AWS IAMscegli
EMRSparkAI-StudioServiceRole
.
- Nel Archiviazione dell'area di lavoro sezione, sfoglia e scegli il bucket S3 per lo storage a partire da
emr-sparkai-<account-id>
. - Scegli Crea Studio.
- Una volta creato EMR Studio, scegli il collegamento sottostante URL di accesso allo Studio per accedere allo Studio.
- Quando sei in Studio, scegli Crea spazio di lavoro.
- Aggiungi
emr-genai
come nome per l'area di lavoro e scegli Crea spazio di lavoro. - Una volta creata l'area di lavoro, scegli il suo nome per avviare l'area di lavoro (assicurati di aver disabilitato eventuali blocchi pop-up).
Analisi di big data utilizzando Apache Spark con Amazon EMR e intelligenza artificiale generativa
Ora che abbiamo completato la configurazione richiesta, possiamo iniziare a eseguire analisi di big data utilizzando Apache Spark con Amazon EMR e intelligenza artificiale generativa.
Come primo passaggio, carichiamo un notebook contenente il codice richiesto e gli esempi per lavorare con il caso d'uso. Utilizziamo il set di dati NY Taxi, che contiene dettagli sulle corse in taxi.
- Scarica il file del taccuino NYTaxi.ipynb e caricalo sul tuo spazio di lavoro scegliendo l'icona di caricamento.
- Dopo aver importato il taccuino, apri il taccuino e scegli
PySpark
come il kernel.
PySpark AI per impostazione predefinita utilizza ChatGPT4.0 di OpenAI come modello LLM, ma puoi anche collegare modelli da Amazon Bedrock, JumpStart di Amazon SageMakere altri modelli di terze parti. In questo post mostriamo come integrare il modello Amazon Bedrock Titan per la generazione di query SQL ed eseguirlo con Apache Spark in Amazon EMR.
- Per iniziare con il notebook, è necessario associare l'area di lavoro a un livello di calcolo. Per fare ciò, scegli il Calcolare nel riquadro di navigazione e scegli il cluster EMR creato dallo stack CloudFormation.
- Configura i parametri Python per utilizzare il pacchetto Python 3.9 aggiornato con Amazon EMR:
- Importa le librerie necessarie:
- Dopo aver importato le librerie, puoi definire il modello LLM da Amazon Bedrock. In questo caso utilizziamo amazon.titan-text-express-v1. Devi inserire la regione e l'URL dell'endpoint Amazon Bedrock in base all'accesso in anteprima per il modello Titan Text G1 – Express.
- Connetti Spark AI al modello Amazon Bedrock LLM per la generazione di query SQL basate su domande in linguaggio naturale:
Qui abbiamo inizializzato Spark AI con verbose=False; puoi anche impostare verbose=True per vedere maggiori dettagli.
Ora puoi leggere i dati dei taxi di New York in uno Spark DataFrame e utilizzare la potenza dell'intelligenza artificiale generativa in Spark.
- Ad esempio, puoi chiedere il conteggio del numero di record nel set di dati:
Otteniamo la seguente risposta:
Spark AI utilizza internamente LangChain e catena SQL, che nascondono la complessità agli utenti finali che lavorano con le query in Spark.
Il notebook contiene alcuni altri scenari di esempio per esplorare la potenza dell'intelligenza artificiale generativa con Apache Spark e Amazon EMR.
ripulire
Svuotare il contenuto del secchio S3 emr-sparkai-<account-id>
, elimina l'area di lavoro EMR Studio creata come parte di questo post, quindi elimina lo stack CloudFormation che hai distribuito.
Conclusione
Questo post ha mostrato come potenziare l'analisi dei big data con l'aiuto di Apache Spark con Amazon EMR e Amazon Bedrock. Il pacchetto PySpark AI ti consente di ricavare informazioni significative dai tuoi dati. Aiuta a ridurre i tempi di sviluppo e analisi, riducendo il tempo necessario per scrivere query manuali e consentendoti di concentrarti sul caso d'uso aziendale.
Informazioni sugli autori
Saurabh Bhutyani è Principal Analytics Specialist Solutions Architect presso AWS. È appassionato di nuove tecnologie. È entrato in AWS nel 2019 e collabora con i clienti per fornire indicazioni sull'architettura per l'esecuzione di casi d'uso di intelligenza artificiale generativa, soluzioni di analisi scalabili e architetture di mesh di dati utilizzando servizi AWS come Amazon Bedrock, Amazon SageMaker, Amazon EMR, Amazon Athena, AWS Glue, AWS Lake Formation, e Amazon DataZone.
Harsh Vardhan è un AWS Senior Solutions Architect, specializzato in analisi. Ha oltre 8 anni di esperienza di lavoro nel campo dei big data e della data science. La sua passione è aiutare i clienti ad adottare le migliori pratiche e scoprire approfondimenti dai loro dati.
- Distribuzione di contenuti basati su SEO e PR. Ricevi amplificazione oggi.
- PlatoData.Network Generativo verticale Ai. Potenzia te stesso. Accedi qui.
- PlatoAiStream. Intelligenza Web3. Conoscenza amplificata. Accedi qui.
- PlatoneESG. Carbonio, Tecnologia pulita, Energia, Ambiente, Solare, Gestione dei rifiuti. Accedi qui.
- Platone Salute. Intelligence sulle biotecnologie e sulle sperimentazioni cliniche. Accedi qui.
- Fonte: https://aws.amazon.com/blogs/big-data/use-generative-ai-with-amazon-emr-amazon-bedrock-and-english-sdk-for-apache-spark-to-unlock-insights/
- :ha
- :È
- :non
- $ SU
- 1
- 10
- 100
- 107
- 11
- 20
- 200
- 2019
- 320
- 500
- 521
- 7
- 8
- 9
- 990
- a
- WRI
- accesso
- gestione degli accessi
- Il mio account
- riconoscere
- Action
- aggiungere
- aggiuntivo
- Inoltre
- adottare
- AI
- casi d'uso ai
- Tutti
- Consentire
- consente
- anche
- Amazon
- Amazzone Atena
- Amazon EMR
- Amazon Sage Maker
- Amazon Web Services
- importi
- an
- .
- analitica
- ed
- rispondere
- in qualsiasi
- Apache
- Apache Spark
- api
- applicazioni
- circa
- architettonico
- architettura
- SONO
- Arte
- AS
- chiedere
- Associate
- At
- disponibile
- evitare
- AWS
- AWS CloudFormazione
- Colla AWS
- Formazione AWS Lake
- precedente
- basato
- MIGLIORE
- best practice
- Al di là di
- Big
- Big Data
- bootstrap
- costruire
- affari
- ma
- pulsante
- by
- Materiale
- Custodie
- casi
- catalogo
- catena
- Modifiche
- oneri
- Scegli
- la scelta
- Città
- Cloud
- big data nel cloud
- Cluster
- codice
- combina
- Aziende
- completamento di una
- Completato
- complessità
- Calcolare
- collegato
- Connettività
- consolle
- costantemente
- contiene
- testuali
- Costi
- creare
- creato
- crea
- la creatività
- Attualmente
- Clienti
- bordo tagliente
- dati
- Dati Analytics
- elaborazione dati
- scienza dei dati
- Banca Dati
- dataset
- Data
- Predefinito
- definire
- dimostrare
- dipendenze
- schierato
- derivare
- descrizione
- progettato
- dettagli
- sviluppare
- Mercato
- diverso
- disabile
- scopri
- do
- in modo efficiente
- senza sforzo
- fine
- endpoint
- Ingegneria
- Ingegneri
- Inglese
- garantire
- entrare
- entrare
- Ambiente
- epoca
- essential
- Etere (ETH)
- Anche
- esempio
- Esempi
- esperienza
- esperimento
- esplora
- esprimere
- estratto
- FAST
- Caratteristiche
- pochi
- campo
- Compila il
- finale
- Nome
- Flessibilità
- Focus
- seguire
- i seguenti
- Nel
- formazione
- Fondazione
- quattro
- quadri
- da
- completamente
- g1
- granaio
- porta
- generare
- ELETTRICA
- generativo
- AI generativa
- ottenere
- Dare
- Go
- guida
- Avere
- he
- Aiuto
- aiutare
- aiuta
- nascosto
- nascondere
- Come
- Tutorial
- http
- HTTPS
- i
- IAM
- ICON
- ID
- Identità
- identità e gestione degli accessi
- illustra
- realizzare
- importare
- in
- In altre
- Compreso
- leader del settore
- informazioni
- creativi e originali
- ingresso
- intuizioni
- install
- istanze
- istruzioni
- integrare
- integrato
- integrazione
- destinato
- interagire
- interattivo
- internamente
- ai miglioramenti
- IT
- SUO
- congiunto
- jpg
- mantenere
- Le
- Sapere
- lago
- Lingua
- grandi
- con i più recenti
- lanciare
- strato
- principale
- apprendimento
- biblioteche
- Biblioteca
- piace
- linea
- LINK
- caricare
- macchina
- machine learning
- make
- FA
- gestito
- gestione
- Manuale
- Rappresentanza
- Maggio..
- significativo
- maglia
- minimo
- verbale
- ML
- modello
- modelli
- Monitorare
- Scopri di più
- maggior parte
- Nome
- Naturale
- Linguaggio naturale
- Navigazione
- necessaria
- Bisogno
- di applicazione
- internazionale
- New
- Nuove tecnologie
- taccuino
- computer portatili
- adesso
- numero
- NY
- NYC
- oggetti
- osservazione
- of
- Offerte
- on
- aprire
- open source
- or
- organizzazioni
- Altro
- uscite
- ancora
- panoramica
- pacchetto
- Packages
- vetro
- parametri
- parte
- appassionato
- esecuzione
- permessi
- posto
- Platone
- Platone Data Intelligence
- PlatoneDati
- parco giochi
- spina
- Termini e Condizioni
- pop-up
- Post
- potenziale
- energia
- pratiche
- Anteprima
- Direttore
- un bagno
- processi
- lavorazione
- Produzione
- Progressi
- fornire
- purché
- fornitori
- fornisce
- la percezione
- Python
- query
- domanda
- Domande
- rapidamente
- R
- Leggi
- record
- ridurre
- riducendo
- riferimento
- Indipendentemente
- regione
- regioni
- pertinente
- rimuovere
- necessario
- Risorse
- risposta
- Risultati
- corse
- Ruolo
- ruoli
- strada
- Correre
- running
- corre
- sagemaker
- Scala
- Scalabilità
- scalabile
- Scala
- scala
- Scenari
- Scienze
- scienziati
- sdk
- ricerca
- Segreto
- problemi di
- vedere
- select
- anziano
- servizio
- Servizi
- set
- flessibile.
- mostrare attraverso le sue creazioni
- ha mostrato
- Un'espansione
- semplificare
- singolo
- So
- soluzione
- Soluzioni
- Fonte
- Scintilla
- specialista
- specializzata
- velocità
- SQL
- pila
- Stacks
- inizia a
- iniziato
- Di partenza
- Stato dei servizi
- step
- Passi
- conservazione
- lineare
- studio
- sottoreti
- tale
- Sovralimentare
- sicuro
- sistema
- tavolo
- preso
- prende
- Tecnologie
- Tecnologia
- modello
- testo
- che
- Il
- loro
- Li
- poi
- di
- di parti terze standard
- questo
- pensiero
- Attraverso
- tempo
- time line
- titano
- a
- strumenti
- top
- tradizionale
- ui
- per
- sbloccare
- aggiornato
- URL
- uso
- caso d'uso
- utilizzato
- Utente
- utenti
- usa
- utilizzando
- APPREZZIAMO
- varietà
- vario
- Fisso
- visualizzare
- Modo..
- modi
- we
- sito web
- servizi web
- Web-basata
- quando
- quale
- while
- volere
- con
- entro
- senza
- Lavora
- lavoro
- lavori
- In tutto il mondo
- scrivere
- scritto
- anni
- York
- Tu
- Trasferimento da aeroporto a Sharm
- zefiro