

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# AWS Glue: Come funziona
<a name="how-it-works"></a>

AWS Glue utilizza altri AWS servizi per orchestrare i processi ETL (estrazione, trasformazione e caricamento) per creare data warehouse e data lake e generare flussi di output. AWS Gluechiama le operazioni API per trasformare i dati, creare log di runtime, archiviare la logica dei processi e creare notifiche per aiutarti a monitorare le esecuzioni dei processi. La console AWS Glue si connette a questi servizi in un'applicazione gestita, in modo che tu possa concentrarti sulla creazione e sul monitoraggio del lavoro ETL. La console esegue le operazioni amministrative e di sviluppo del processo per tuo conto. Devi fornire le credenziali e altre proprietà a AWS Glue per accedere alle origini dati e scrivere nelle destinazioni dati.

AWS Glue si occupa di effettuare il provisioning delle risorse necessarie per l'esecuzione del carico di lavoro e di gestire tali risorse. Non devi creare l'infrastruttura per uno strumento ETL, perché l'operazione viene eseguita da AWS Glue. Quando sono necessarie risorse, per ridurre i tempi di avvio, AWS Glue usa un'istanza del pool di istanze attivo per eseguire il carico di lavoro.

Con AWS Glue crei i processi usando le definizioni di tabella nel catalogo dati. I lavori sono costituiti da script che contengono le istruzioni per eseguire le attività di trasformazione dei dati desiderate. Per avviare i processi, in base a una pianificazione o come risultato di un evento specificato, potrai utilizzare i trigger. Puoi decidere dove conservare i dati dell'obiettivo e quale origine dati popola l'obiettivo. In base agli input, AWS Glue trasforma i dati dal formato di origine a quello di destinazione. In alternativa, puoi anche fornire script personalizzati nella console AWS Glue o nell'API per elaborare i dati in base alle tue esigenze specifiche.

**Origini dati e destinazioni**  
AWS Glue per Spark consente di leggere e scrivere dati da più sistemi e database, tra cui:
+ Simple Storage Service (Amazon S3)
+ Amazon DynamoDB
+ Amazon Redshift
+ Amazon Relational Database Service (Amazon RDS)
+ Database accessibili da JDBC di terze parti
+ MongoDB e Amazon DocumentDB (compatibile con MongoDB)
+ Altri connettori del marketplace e plug-in Apache Spark

**Flussi dei dati**  
AWS Glue per Spark può trasmettere dati dai seguenti sistemi:
+ Flusso di dati Amazon Kinesis
+ Apache Kafka

AWS Glue è disponibile in diverse AWS regioni. Per ulteriori informazioni, consulta la sezione relativa a [regioni ed endpoint AWS](https://docs.aws.amazon.com/general/latest/gr/rande.html) nella Riferimenti generali di Amazon Web Services.

**Topics**
+ [Processi ETL serverless eseguiti in isolamento](#how-it-works-isolation)
+ [AWS Glue concetti](components-key-concepts.md)
+ [AWS Glue componenti](components-overview.md)
+ [AWS Glue per Spark e AWS Glue per Ray](how-it-works-engines.md)
+ [Conversione da schemi semistrutturati a schemi relazionali con AWS Glue](schema-relationalize.md)
+ [AWS Sistemi tipo Glue](glue-types.md)

## Processi ETL serverless eseguiti in isolamento
<a name="how-it-works-isolation"></a>

AWS Glue esegue i processi ETL in un ambiente serverless con un motore a scelta tra Spark e Ray. AWS Glue esegue questi processi su risorse virtuali di cui effettua il provisioning e che gestisce nel proprio account di servizio. 

AWS Glue ha gli scopi seguenti:
+ Isolare i dati dei clienti.
+ Proteggere i dati dei clienti in transito e quelli memorizzati.
+ Accedere ai dati dei clienti solo in risposta alle richieste dei clienti, utilizzando le credenziali contestuali e temporanee o con il consenso del cliente ai ruoli IAM nel suo account.

Durante il provisioning di un processo ETL, fornisci origini dati di input e destinazioni dati di output nel Virtual Private Cloud (VPC). Inoltre, puoi fornire il ruolo IAM, l'ID VPC, l'ID sottorete e il gruppo di sicurezza che sono necessari per accedere alle origini dati e alle destinazioni. Per ogni tupla (ID account del cliente, ruolo IAM, ID di sottorete e gruppo di sicurezza), AWS Glue crea un nuovo ambiente isolato a livello di rete e di gestione da tutti gli altri ambienti all'interno del tuo account di servizio AWS Glue.

 Puoi creare e configurare AWS Glue risorse, come cataloghi di dati, lavori e crawler, all'interno del tuo account. AWS Queste risorse vengono quindi associate al ruolo IAM e alle impostazioni di rete (sottorete e gruppo di sicurezza) specificate durante il processo di creazione. 

AWS Glue crea interfacce di rete elastiche nella sottorete usando indirizzi IP privati. I processi utilizzano queste interfacce di rete elastiche per accedere alle origini dati e alle destinazioni dati. Il traffico in uscita e all'interno dell'ambiente di esecuzione del processo è regolato dal VPC e dalle policy di rete con un'eccezione: le chiamate effettuate alle librerie AWS Glue possono indirizzare il traffico verso operazioni API AWS Glue tramite il VPC AWS Glue. Tutte le chiamate API AWS Glue vengono registrate, pertanto i proprietari dei dati possono controllare l'accesso API abilitando [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/), che fornisce i log di controllo all'account.

AWS Gluegli ambienti gestiti che eseguono i processi ETL sono protetti con le stesse pratiche di sicurezza seguite da altri servizi. AWS Per una panoramica delle pratiche e delle responsabilità condivise in materia di sicurezza, consultate il white paper [Introduzione ai processi AWS di sicurezza](https://docs.aws.amazon.com/whitepapers/latest/introduction-aws-security/welcome.html).

# AWS Glue concetti
<a name="components-key-concepts"></a>

 AWS Glue è un servizio ETL (extract, transform, load) completamente gestito che consente di spostare facilmente i dati tra diverse fonti di dati e destinazioni. I componenti principali sono: 
+  **Catalogo dati**: un archivio di metadati che contiene definizioni di tabelle, definizioni di processi e altre informazioni di controllo per i flussi di lavoro ETL. 
+  **Crawler**: programmi che si connettono alle origini dati, deducono gli schemi per i dati e creano definizioni di tabelle di metadati nel Catalogo dati. 
+  **Processi ETL**: la logica aziendale per estrarre i dati dalle origini dati, trasformarli utilizzando script Apache Spark e caricarli nelle destinazioni. 
+  **Trigger**: meccanismi per avviare l'esecuzione dei processi in base a pianificazioni o eventi. 

 Il flusso di lavoro tipico consiste nel: 

1.  Definire origini dati e destinazioni dati nel Catalogo dati. 

1.  Usare i crawler per popolare il Catalogo dati con i metadati delle tabelle provenienti dalle origini dati. 

1.  Definire i processi ETL con script di trasformazione per spostare ed elaborare i dati. 

1.  Eseguire processi on-demand o basati su trigger. 

1.  Monitorare le prestazioni lavorative utilizzando i pannelli di controllo. 

 Il diagramma seguente mostra l'architettura di un AWS Glue ambiente. 

![\[Concetti di base che popolano il catalogo dati ed elaborazione del flusso di dati ETL in AWS Glue.\]](http://docs.aws.amazon.com/it_it/glue/latest/dg/images/HowItWorks-overview.png)


Si definiscono i *lavori* AWS Glue per eseguire il lavoro necessario per estrarre, trasformare e caricare i dati (ETL) da un'origine dati a una destinazione dati. In genere, si svolgono le azioni seguenti:
+ Per le origini dei datastore, si definisce un *crawler* per popolare il AWS Glue Data Catalog con definizioni di tabelle di metadati. Si punta il crawler a un datastore e il crawler crea le definizioni di tabelle nel catalogo dati. Per le origini di streaming, è possibile definire manualmente le tabelle del catalogo dati e specificare le proprietà del flusso dei dati.

  Oltre alle definizioni delle tabelle, AWS Glue Data Catalog contiene altri metadati necessari per definire i job ETL. Si utilizzano questi metadati quando si definisce un processo per trasformare i dati.
+ AWS Glue può generare uno script per trasformare i dati. In alternativa, puoi fornire lo script nella AWS Glue console o nell'API.
+ È possibile eseguire il processo on demand oppure configurarlo affinché si avvii al verificarsi di un *trigger* specifico. Il trigger può essere una pianificazione basata sul tempo o un evento.

  Durante l'esecuzione del processo, uno script estrae i dati dall'origine dati, li trasforma e li carica sulla destinazioni dati. Lo script viene eseguito in un ambiente Apache Spark in AWS Glue.

**Importante**  
Le tabelle e i database in AWS Glue sono oggetti in AWS Glue Data Catalog. Essi contengono metadati, non dati provenienti da un datastore.


|  | 
| --- |
|  **I dati basati su testo, ad esempio CSVs, devono essere codificati `UTF-8` per poterli AWS Glue elaborare correttamente. Per ulteriori informazioni, consulta [UTF-8](https://en.wikipedia.org/wiki/UTF-8) in Wikipedia.**   | 

## AWS Glue terminologia
<a name="components-major"></a>

AWS Glue si basa sull'interazione di diversi componenti per creare e gestire il flusso di lavoro di estrazione, trasformazione e caricamento (ETL).

### AWS Glue Data Catalog
<a name="components-data-catalog"></a>

L'archivio persistente di metadati in. AWS Glue Contiene definizioni di tabelle, definizioni di processi e altre informazioni di controllo per la gestione AWS Glue dell'ambiente. Ogni AWS account ne ha uno AWS Glue Data Catalog per regione. 

### Classificatore
<a name="components-classifier"></a>

Determina lo schema dei tuoi dati. AWS Glue fornisce classificatori per tipi di file comuni, come CSV, JSON, AVRO, XML e altri. Fornisce inoltre classificatori per i più comuni sistemi di gestione di database relazionali utilizzando una connessione JDBC. Puoi scrivere un classificatore personalizzato usando un pattern grok o specificando un tag di riga in un documento XML.

### Connessione
<a name="components-connection"></a>

Un oggetto del catalogo dati che contiene le proprietà necessarie per connettersi a un particolare archivio dati.

### Crawler
<a name="components-crawler"></a>

Programma che si connette a un datastore (di origine o di destinazione), avanza attraverso un elenco di classificatori ordinato per priorità per determinare lo schema dei dati e quindi crea tabelle di metadati nel AWS Glue Data Catalog.

### Database
<a name="components-database"></a>

Set di definizioni di tabelle del catalogo dati associate organizzate in un gruppo logico.

### Datastore, origine dati, target dati
<a name="components-data-store"></a>

Un *datastore* è un repository per archiviare i dati in modo permanente. Alcuni esempi includono bucket Amazon S3 e database relazionali. Un'*origine dati* è un datastore utilizzato come input per un processo o una trasformazione. Un *target dati* è un datastore su cui scrive un processo o una trasformazione.

### Endpoint di sviluppo
<a name="components-development-endpoint"></a>

Un ambiente che puoi usare per sviluppare e testare i tuoi script ETL. AWS Glue 

### Frame dinamico
<a name="components-dynamic-frame"></a>

Una tabella distribuita che supporta dati nidificati come strutture e array. Ogni record è auto descrittivo, progettato per la flessibilità dello schema con dati semi-strutturati. Ogni record contiene sia i dati, sia lo schema che li descrive. È possibile utilizzare sia frame dinamici che Apache Spark DataFrames negli script ETL e convertirli da uno all'altro. I frame dinamici forniscono una serie di trasformazioni avanzate per la pulizia dei dati e l'ETL.

### Processo
<a name="components-job"></a>

Logica di business necessaria per eseguire il lavoro ETL. È composto da uno script di trasformazione, da origini dati e da destinazioni dati. Le esecuzioni dei processi sono avviate tramite trigger pianificabili o attivabili tramite eventi.

### Pannello di controllo per le prestazioni del processo
<a name="features-job-monitoring"></a>

AWS Glue fornisce una dashboard di esecuzione completa per i lavori ETL. Nel pannello di controllo vengono visualizzate informazioni sulle esecuzioni dei processi in un intervallo di tempo specifico. 

### Interfaccia notebook
<a name="components-notebook-server"></a>

Un'esperienza notebook migliorata con una configurazione in un solo clic per semplificare la creazione di processi e l'esplorazione dei dati. Il notebook e le connessioni vengono configurati automaticamente per te. È possibile utilizzare l'interfaccia per notebook basata su Jupyter Notebook per sviluppare, eseguire il debug e distribuire in modo interattivo script e flussi di lavoro utilizzando l'infrastruttura ETL Apache Spark senza server. AWS Glue Nell'ambiente notebook, è possibile anche eseguire query ad hoc, analisi dei dati e visualizzazione (ad esempio tabelle e grafici).

### Script
<a name="components-script"></a>

Codice che estrae i dati dalle fonti, li trasforma e li carica in obiettivi. AWS Glue genera PySpark o script Scala.

### Tabella
<a name="components-table"></a>

Definizione di metadati che rappresenta i tuoi dati. Sia che i dati siano in un file Amazon Simple Storage Service (Amazon S3), in una tabella Amazon Relational Database Service (Amazon RDS) o in un altro set di dati, una tabella definisce lo schema dei dati. Una tabella in AWS Glue Data Catalog è composta dai nomi delle colonne, dalle definizioni dei tipi di dati, dalle informazioni sulle partizioni e da altri metadati relativi a un set di dati di base. Lo schema dei dati è rappresentato nella definizione della tabella. AWS Glue I dati effettivi rimangono nell'archivio dati originale, che si tratti di un file o di una tabella di database relazionale. AWS Glue cataloga i file e le tabelle del database relazionale in. AWS Glue Data Catalog Questi fungono da origini e destinazioni quando si crea un processo ETL.

### Trasformazione
<a name="components-transform"></a>

Logica di codice utilizzata per modificare i dati in un formato diverso.

### Trigger
<a name="components-trigger"></a>

Avvia un processo ETL. È possibile definire i trigger sulla base di un orario programmato o di un evento.

### Editor visivo dei processi
<a name="features-visual-editor"></a>

 L'editor visivo del processo è un'interfaccia grafica che consente di creare, eseguire e monitorare in modo semplice processi di estrazione, trasformazione e caricamento (ETL) in AWS Glue. Puoi comporre visivamente flussi di lavoro di trasformazione dei dati, eseguirli senza problemi sul motore ETL serverless basato su AWS Glue Apache Spark e ispezionare lo schema e i risultati dei dati in ogni fase del lavoro. 

### Worker
<a name="components-worker"></a>

Con AWS Glue, paghi solo per il tempo necessario all'esecuzione del processo ETL. Non ci sono risorse da gestire, quindi non ti vengono addebitati costi anticipati e tariffe per il tempo di avvio o di arresto. Ti viene addebitata una tariffa oraria basata sul numero di **unità di elaborazione dati** (o DPUs) utilizzate per eseguire il processo ETL. *Una singola unità di elaborazione dati (DPU) viene anche definita lavoratore.* AWS Glue viene fornito con diversi tipi di worker per aiutarvi a selezionare la configurazione più adatta ai vostri requisiti di latenza lavorativa e costi. I worker sono disponibili nelle configurazioni Standard, G.1X, G.2X, G.4X, G.8X, G.12X, G.16X, G.025X e nelle configurazioni R.1X, R.2X, R.8X e R.8X ottimizzate per la memoria.

# AWS Glue componenti
<a name="components-overview"></a>

AWS Glue fornisce una console e operazioni API per configurare e gestire il carico di lavoro di estrazione, trasformazione e caricamento (ETL). È possibile utilizzare le operazioni API tramite diversi linguaggi specifici e il comando ( SDKs). AWS Command Line Interface AWS CLI[Per informazioni sull'utilizzo di AWS CLI, vedere AWS CLI Command Reference.](https://docs.aws.amazon.com/cli/latest/reference/)

AWS Glue utilizza il AWS Glue Data Catalog per archiviare i metadati relativi a fonti di dati, trasformazioni e destinazioni. Il catalogo dati sostituisce il metastore Apache Hive. AWS Glue Jobs system Fornisce un'infrastruttura gestita per la definizione, la pianificazione e l'esecuzione delle operazioni ETL sui dati. Per ulteriori informazioni sull' AWS Glue API, consulta. [AWS Glue API](aws-glue-api.md)

## AWS Glue console
<a name="console-intro"></a>

La AWS Glue console viene utilizzata per definire e orchestrare il flusso di lavoro ETL. La console richiama diverse operazioni API nel AWS Glue Data Catalog e AWS Glue Jobs system per eseguire le seguenti attività:
+ Definisci AWS Glue oggetti come lavori, tabelle, crawler e connessioni.
+ Pianificare l'esecuzione dei crawler.
+ Definire eventi o programmi per i trigger di processo.
+ Cerca e filtra gli elenchi di oggetti. AWS Glue 
+ Modificare gli script di trasformazione.

## AWS Glue Data Catalog
<a name="data-catalog-intro"></a>

 AWS Glue Data Catalog È il tuo archivio persistente di metadati tecnici nel AWS Cloud. 

Ogni AWS account ne ha uno AWS Glue Data Catalog per AWS regione. Ogni catalogo dati è una raccolta altamente scalabile di tabelle organizzate in database. Una tabella è la rappresentazione dei metadati di una raccolta di dati strutturati o semistrutturati archiviati in fonti come Amazon RDS, Apache Hadoop Distributed File System, Amazon Service e altre. OpenSearch AWS Glue Data Catalog Fornisce un repository uniforme in cui diversi sistemi possono archiviare e trovare metadati per tenere traccia dei dati nei silos di dati. È quindi possibile utilizzare i metadati per eseguire query e trasformare i dati in modo coerente su un'ampia varietà di applicazioni. 

 Utilizzi il Data Catalog insieme alle AWS Identity and Access Management policy e a Lake Formation per controllare l'accesso alle tabelle e ai database. In questo modo, consenti a diversi gruppi nella tua azienda di pubblicare in modo sicuro i dati per la più ampia organizzazione proteggendo allo stesso tempo le informazioni sensibili in modo altamente granulare. 

Il Data Catalog, insieme CloudTrail a Lake Formation, offre anche funzionalità complete di audit e governance, con tracciamento delle modifiche allo schema e controlli di accesso ai dati. Questo contribuisce a garantire che i dati non vengono modificati impropriamente o condivisi inavvertitamente. 

 Per informazioni su come proteggere e controllare ila AWS Glue Data Catalog, consulta: 
+  **AWS Lake Formation** – Per ulteriori informazioni, consulta [Cos'è AWS Lake Formation?](https://docs.aws.amazon.com/lake-formation/latest/dg/what-is-lake-formation.html) nella *Guida per gli sviluppatori di AWS Lake Formation *. 
+  **CloudTrail**— Per ulteriori informazioni, consulta [What Is CloudTrail?](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) nella *Guida AWS CloudTrail per l'utente*. 

Di seguito sono riportati altri AWS servizi e progetti open source che utilizzano: AWS Glue Data Catalog
+ **Amazon Athena** – Per ulteriori informazioni, consulta [Comprensione di tabelle, database e catalogo dati](https://docs.aws.amazon.com/athena/latest/ug/understanding-tables-databases-and-the-data-catalog.html) nella *Guida per l'utente di Amazon Athena*.
+ **Amazon Redshift Spectrum** – Per ulteriori informazioni, consulta [Utilizzo di Amazon Redshift Spectrum per eseguire query su dati esterni](https://docs.aws.amazon.com/redshift/latest/dg/c-using-spectrum.html) nella *Guida per gli sviluppatori di Amazon Redshift*.
+ **Amazon EMR** – Per ulteriori informazioni, consulta [Utilizzo di policy basate su risorse per l'accesso Amazon EMR ad AWS Glue Data Catalog](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-iam-roles-glue.html) nella *Guida alla gestione di Amazon EMR*.
+ **AWS Glue Data Catalog client per Apache Hive metastore** — Per ulteriori informazioni su questo GitHub progetto, consulta [AWS Glue Data Catalog Client](https://github.com/awslabs/aws-glue-data-catalog-client-for-apache-hive-metastore) for Apache Hive Metastore.



## AWS Glue crawler e classificatori
<a name="crawling-intro"></a>

AWS Glue consente inoltre di configurare crawler in grado di scansionare i dati in tutti i tipi di repository, classificarli, estrarne le informazioni sullo schema e archiviare automaticamente i metadati in. AWS Glue Data Catalog AWS Glue Data Catalog Possono quindi essere utilizzati per guidare le operazioni ETL.

Per informazioni su come configurare i crawler e i classificatori, consulta l'articolo [Utilizzo dei crawler per compilare il Catalogo dati](add-crawler.md). Per informazioni su come programmare crawler e classificatori utilizzando l'API, consulta. AWS Glue [API crawler e classificatori](aws-glue-api-crawler.md)

## AWS Glue Operazioni ETL
<a name="etl-script-intro"></a>

Utilizzando i metadati nel Data Catalog, AWS Glue puoi generare automaticamente script Scala o PySpark (l'API Python per Apache Spark) AWS Glue con estensioni che puoi usare e modificare per eseguire varie operazioni ETL. Ad esempio, puoi estrarre, pulire e trasformare dati grezzi, quindi memorizzare il risultato in un diverso archivio, dove può essere interrogato e analizzato. Tale script potrebbe convertire un file CSV in una struttura dati relazionale e salvarlo in Amazon Redshift.

Per ulteriori informazioni su come utilizzare le funzionalità ETL, consulta. AWS Glue [Script di programmazione Spark](aws-glue-programming.md)

## Streaming di ETL in AWS Glue
<a name="streaming-etl-intro"></a>

AWS Glue consente di eseguire operazioni ETL sullo streaming di dati utilizzando processi in esecuzione continua. AWS Glue streaming ETL è basato sul motore di streaming strutturato Apache Spark e può importare flussi da Amazon Kinesis Data Streams, Apache Kafka e Amazon Managed Streaming for Apache Kafka (Amazon MSK). Streaming ETL può pulire e trasformare i dati di streaming e caricarli in Amazon S3 o in archivi dati JDBC. Usa Streaming ETL in AWS Glue per elaborare dati di eventi come flussi IoT, clickstream e log di rete.

Se si conosce lo schema dell'origine dati di streaming, è possibile specificarlo in una tabella del catalogo dati. In caso contrario, è possibile abilitare il rilevamento dello schema nel processo ETL di streaming. Il processo determina automaticamente lo schema dai dati in entrata.

Il job ETL di streaming può utilizzare sia trasformazioni AWS Glue integrate che trasformazioni native di Apache Spark Structured Streaming. Per ulteriori informazioni, consulta [Operazioni sullo streaming DataFrames /Datasets sul sito Web](https://spark.apache.org/docs/latest/structured-streaming-programming-guide.html#operations-on-streaming-dataframesdatasets) di Apache Spark. 

Per ulteriori informazioni, consulta [Aggiunta di processi di streaming ETL in AWS Glue](add-job-streaming.md).

## Il sistema dei lavori AWS Glue
<a name="job-orchestration-intro"></a>

 AWS Glue Jobs system Fornisce un'infrastruttura gestita per orchestrare il flusso di lavoro ETL. È possibile creare lavori AWS Glue che automatizzino gli script utilizzati per estrarre, trasformare e trasferire dati in posizioni diverse. I processi possono essere programmati e concatenati oppure possono essere attivati da eventi quali l'arrivo di nuovi dati.

Per ulteriori informazioni sull'utilizzo di AWS Glue Jobs system, vedere. [Monitoraggio AWS Glue](monitor-glue.md) Per informazioni sulla programmazione tramite l'API AWS Glue Jobs system , consulta [API dei processi](aws-glue-api-jobs.md).

## Componenti ETL visivi
<a name="glue-studio-ui-components"></a>

 AWS Glue ti consente di creare lavori ETL attraverso una tela visiva che puoi manipolare. 

![\[La schermata mostra che il pannello delle risorse è chiuso.\]](http://docs.aws.amazon.com/it_it/glue/latest/dg/images/glue-studio-canvas.png)


### Menu dei processi ETL
<a name="glue-studio-ui-components-menu"></a>

 Le opzioni di menu nella parte superiore del canvas consentono di accedere alle varie visualizzazioni e ai dettagli di configurazione relativi al processo. 
+  **Visivo**: il canvas dell'editor di processo visivo. Da qui è possibile aggiungere nodi per creare un processo. 
+  **Script**: la rappresentazione tramite script del tuo lavoro ETL. AWS Glue genera lo script in base alla rappresentazione visiva del tuo lavoro. È inoltre possibile modificare lo script o scaricarlo. 
**Nota**  
 Se scegli di modificare lo script, l'esperienza di creazione del processo viene convertita in modo permanente in modalità di solo script. Successivamente, non è più possibile utilizzare l'editor visivo per modificare il processo. È necessario aggiungere tutte le origini, le trasformazioni e le destinazioni del processo e apportare tutte le modifiche necessarie con l'editor visivo prima di scegliere di modificare lo script. 
+  **Dettagli del processo**: la scheda Dettagli del processo consente di configurare il processo impostandone le proprietà. Sono disponibili proprietà di base, come nome e descrizione del processo, ruolo IAM, tipo di processo, versione di AWS Glue, lingua, tipo di worker, numero di worker, segnalibro del processo, esecuzione flessibile, numero di ritirati e timeout del processo, così come alcune proprietà avanzate, come connessioni, librerie, parametri di processo e tag. 
+  **Esecuzioni**: dopo l'esecuzione del processo, è possibile accedere a questa scheda per visualizzare i processi eseguiti in passato. 
+  **Qualità dei dati**: la qualità dei dati consente di valutare e monitorare la qualità delle risorse di dati. Puoi saperne di più su come utilizzare la qualità dei dati in questa scheda e aggiungere una trasformazione della qualità dei dati al tuo processo. 
+  **Pianificazioni**: i processi che hai pianificato vengono visualizzati in questa scheda. Se non esistono pianificazioni collegate a questo processo, questa scheda non è accessibile. 
+  **Controllo della versione**: puoi utilizzare Git con il tuo processo configurandolo in un repository Git. 

### Pannelli ETL visivi
<a name="glue-studio-ui-components-panels"></a>

 Quando lavori nel canvas, sono disponibili diversi pannelli che ti aiutano a configurare i nodi o a visualizzare l'anteprima dei dati e visualizzare lo schema di output. 
+  **Proprietà**: il pannello Proprietà viene visualizzato quando si sceglie un nodo nel canvas. 
+  **Anteprima dei dati**: il pannello di anteprima dei dati fornisce un'anteprima dell'output dei dati in modo da poter prendere decisioni prima di eseguire il processo ed esaminare l'output. 
+  **Schema di output**: la scheda Schema di output consente di visualizzare e modificare lo schema dei nodi di trasformazione. 

 **Ridimensionamento dei pannelli** 

 È possibile ridimensionare il pannello Proprietà sul lato destro dello schermo e il pannello inferiore che contiene le schede Anteprima dati e Schema di output facendo clic sul bordo del pannello e trascinandolo a sinistra e a destra o su e giù. 
+  **Pannello delle proprietà**: ridimensiona il pannello delle proprietà facendo clic sul bordo del canvas sul lato destro dello schermo e trascinandolo verso sinistra per aumentarne la larghezza. Per impostazione predefinita, il pannello è compresso, mentre quando viene selezionato un nodo il pannello delle proprietà si apre alla dimensione predefinita. 
+  **Pannello Anteprima dei dati e Schema di output**: ridimensiona il pannello inferiore facendo clic sul bordo inferiore del canvas nella parte inferiore dello schermo e trascinandolo verso l'alto per aumentarne l'altezza. Per impostazione predefinita, il pannello è compresso, mentre quando viene selezionato un nodo il pannello inferiore si apre alla dimensione predefinita. 

### Canvas del processo
<a name="glue-studio-ui-components-canvas"></a>

 È possibile aggiungere, rimuovere e move/reorder nodi direttamente nell'area di disegno di Visual ETL. Puoi immaginarlo come uno spazio di lavoro per creare un processo ETL completamente funzionale, a partire da un'origine dati fino alla destinazione dati. 

 Quando lavori con i nodi sul canvas, hai a disposizione una barra degli strumenti che può aiutarti a ingrandire e ridurre le dimensioni, rimuovere nodi, creare o modificare connessioni tra i nodi, cambiare l'orientamento del flusso di processo e annullare o ripetere un'operazione. 

![\[La schermata mostra che il pannello delle risorse è chiuso.\]](http://docs.aws.amazon.com/it_it/glue/latest/dg/images/glue-studio-canvas-toolbar.png)


 La barra degli strumenti mobile è ancorata al bordo in alto a destra del canvas e contiene diverse immagini che eseguono altrettante operazioni: 
+  **Icona del layout**: la prima icona nella barra degli strumenti è l'icona del layout. Per impostazione predefinita, la direzione dei processi visivi è dall'alto verso il basso. Riorganizza la direzione del processo visivo disponendo i nodi orizzontalmente da sinistra a destra. Facendo nuovamente clic sull'icona del layout, la direzione torna dall'alto verso il basso. 
+  **Icona Ricentra**: questa icona consente di modificare la visualizzazione del canvas centrandola. È possibile utilizzarla con processi di grandi dimensioni per tornare alla posizione centrale. 
+  **Icona Ingrandisci**: questa icona consente di aumentare la dimensione dei nodi sul canvas. 
+  **Icona Riduci**: questa icona consente di ridurre la dimensione dei nodi sul canvas. 
+  **Icona del cestino**: l'icona del cestino rimuove un nodo dal processo visivo. Prima è necessario selezionare un nodo. 
+  **Icona Annulla**: questa icona consente di annullare l'ultima operazione eseguita sul processo visivo. 
+  **Icona Ripeti**: questa icona consente di ripetere l'ultima operazione eseguita sul processo visivo. 

 **Utilizzo della minimappa** 

![\[La schermata mostra un primo piano della minimappa.\]](http://docs.aws.amazon.com/it_it/glue/latest/dg/images/glue-studio-canvas-minimap.png)


### Pannello delle risorse
<a name="glue-studio-ui-components-canvas-resource-panel"></a>

 Il pannello delle risorse contiene tutte le origini dati, le operazioni di trasformazione e le connessioni disponibili. Apri il pannello delle risorse sul canvas facendo clic sull'icona "\$1". Si aprirà il pannello delle risorse. 

 Per chiudere il pannello delle risorse, fai clic sulla **X** nell'angolo in alto a destra del pannello delle risorse. In questo modo il pannello rimarrà nascosto fino a quando non lo riaprirai. 

![\[La schermata mostra il pannello delle risorse aperto.\]](http://docs.aws.amazon.com/it_it/glue/latest/dg/images/resource-panel-open.png)


#### Trasformazioni e dati comuni
<a name="glue-studio-ui-components-popular-transforms"></a>

 Nella parte superiore del pannello è presente una raccolta di **Trasformazioni e dati comuni**. Questi nodi sono comunemente usati in AWS Glue. Scegline uno per aggiungerlo al canvas. Puoi anche nascondere **Trasformazioni e dati comuni** facendo clic sul triangolo accanto all'intestazione **Trasformazioni e dati comuni**. 

 Nella sezione **Trasformazioni e dati comuni**, puoi cercare trasformazioni e nodi di origini dati. I risultati vengono visualizzati durante la digitazione. Più lettere aggiungi alla tua query di ricerca, più l'elenco dei risultati si ridurrà. I risultati della ricerca vengono compilati in base alla and/or descrizione del nome del nodo. Scegli il nodo per aggiungerlo al canvas. 

#### Trasformazioni e dati
<a name="glue-studio-ui-components-transforms-and-data"></a>

 Esistono due schede che organizzano i nodi in **Trasformazioni** e **Dati**. 

 **Trasformazioni**: quando si sceglie la scheda **Trasformazioni**, è possibile selezionare tutte le trasformazioni disponibili. Scegli una trasformazione per aggiungerla al canvas. Puoi anche scegliere **Aggiungi trasformazione** nella parte inferiore dell'elenco Trasformazioni; questa operazione aprirà una nuova pagina alla documentazione per la creazione di [Trasformazioni visive personalizzate](https://docs.aws.amazon.com/glue/latest/ug/custom-visual-transform.html). Seguendo i passaggi potrai creare trasformazioni personalizzate. Le trasformazioni verranno quindi visualizzate nell'elenco delle trasformazioni disponibili. 

 **Dati**: la scheda dati contiene tutti i nodi per **Origini** e **Destinazioni**. È possibile nascondere le origini e le destinazioni facendo clic sul triangolo accanto all'intestazione Origini o Destinazioni. È possibile visualizzare le origini e le destinazioni facendo nuovamente clic sul triangolo. Scegli un nodo di origine o di destinazione per aggiungerlo al canvas. È inoltre possibile scegliere **Gestisci connessioni** per aggiungere una nuova connessione. Si aprirà la pagina Connettori nella console. 

# AWS Glue per Spark e AWS Glue per Ray
<a name="how-it-works-engines"></a>

 AWS Glue In Apache Spark (AWS Glue ETL), puoi usarlo per PySpark scrivere codice Python per gestire i dati su larga scala. Spark è una soluzione comune per questo problema, ma i data engineer con background incentrati su Python possono trovare la transizione poco intuitiva. Il DataFrame modello Spark non è perfettamente «Python», il che riflette il linguaggio Scala e il runtime Java su cui è basato.

In AWS Glue, puoi usare i job della shell Python per eseguire integrazioni di dati Python native. Questi processi vengono eseguiti su una singola EC2 istanza Amazon e sono limitati dalla capacità di tale istanza. Ciò limita la velocità di trasmissione effettiva dei dati che è possibile elaborare e diventa costoso da mantenere quando si tratta di Big Data.

AWS Glue for Ray ti consente di scalare i carichi di lavoro in Python senza investimenti sostanziali nell'apprendimento di Spark. È possibile sfruttare alcuni scenari in cui Ray si comporta meglio. Offrendoti una scelta, puoi utilizzare i punti di forza di Spark e Ray in base ai casi.

AWS Glue ETL e AWS Glue for Ray sono fondamentalmente diversi, quindi supportano funzionalità diverse. Controlla le documentazione per determinare le funzionalità supportate.

## Cosa c'è AWS Glue per Ray?
<a name="how-it-works-ray"></a>

Ray è un framework di calcolo distribuito open source che può essere utilizzato per scalare i carichi di lavoro, con particolare attenzione a Python. Per ulteriori informazioni su Ray, consulta il [sito Web di Ray](https://www.ray.io/). AWS Glue I lavori Ray e le sessioni interattive ti consentono di utilizzare Ray all'interno AWS Glue.

Puoi usare AWS Glue for Ray per scrivere script Python per calcoli che verranno eseguiti in parallelo su più macchine. Nei processi e nelle sessioni interattive di Ray, è possibile utilizzare le librerie Python comuni come pandas per facilitare la scrittura e l'esecuzione dei flussi di lavoro. Per ulteriori informazioni sui set di dati di Ray, consulta [Set di dati di Ray](https://docs.ray.io/en/latest/data/dataset.html) nella documentazione di Ray. Per ulteriori informazioni su Pandas, consulta il [sito Web di Pandas](https://pandas.pydata.org/).

Quando usi AWS Glue For Ray, puoi eseguire i flussi di lavoro di Pandas su Big Data su scala aziendale, con solo poche righe di codice. Puoi creare un job Ray dalla console o dall'SDK. AWS Glue AWS Puoi anche aprire una sessione AWS Glue interattiva per eseguire il codice in un ambiente Ray senza server. I lavori visivi in non AWS Glue Studio sono ancora supportati.

AWS Glue for Ray jobs ti consente di eseguire uno script in base a una pianificazione o in risposta a un evento di Amazon EventBridge. Jobs archivia le informazioni di registro e le statistiche di monitoraggio in CloudWatch modo da consentirti di comprendere lo stato e l'affidabilità dello script. Per ulteriori informazioni sul sistema dei AWS Glue job, vedere[Lavorare con Ray Jobs in AWS Glue](ray-jobs-section.md).

Ray automatizza il lavoro di dimensionamento del codice Python distribuendo l'elaborazione su un cluster di macchine che riconfigura in tempo reale, in base al carico. Ciò può portare a un miglioramento delle prestazioni per dollaro di determinati carichi di lavoro. Con Ray jobs, abbiamo integrato la scalabilità automatica in modo nativo nel modello di AWS Glue lavoro, in modo da poter sfruttare appieno questa funzionalità. I lavori Ray vengono eseguiti su AWS Graviton, con conseguente aumento delle prestazioni complessive in termini di prezzo.

Oltre ai risparmi sui costi, è possibile utilizzare la scalabilità automatica nativa per eseguire i carichi di lavoro Ray senza investire tempo in operazioni di manutenzione, ottimizzazione e amministrazione del cluster. Puoi usare librerie open source familiari pronte all'uso, come pandas, e l'SDK per Pandas. AWS Questi migliorano la velocità di iterazione durante lo sviluppo su AWS Glue per Ray. Quando usi AWS Glue for Ray, sarai in grado di sviluppare ed eseguire rapidamente carichi di lavoro di integrazione dei dati a costi contenuti.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/OJ3ZngYTyNE/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/OJ3ZngYTyNE)


# Conversione da schemi semistrutturati a schemi relazionali con AWS Glue
<a name="schema-relationalize"></a>

La conversione dei dati semistrutturati in tabelle relazionali è piuttosto comune. Concettualmente, stai appiattendo uno schema gerarchico a uno schema relazionale. AWS Gluepuò eseguire questa conversione per te. on-the-fly

I dati semistrutturati in genere contengono mark-up per identificare le entità all'interno dei dati. Si possono avere strutture di dati annidate senza schema fisso. Per ulteriori informazioni sui dati semistrutturati, consulta [Dati semistrutturati](https://en.wikipedia.org/wiki/Semi-structured_data) in Wikipedia. 

I dati relazionali sono rappresentati da tabelle che contengono righe e colonne. Le relazioni tra tabelle possono essere rappresentate da una relazione chiave primaria (PK) su chiave esterna (FK). Per ulteriori informazioni, consulta [Database relazionale](https://en.wikipedia.org/wiki/Relational_database) in Wikipedia. 

AWS Glue usa i crawler per dedurre gli schemi per i dati semistrutturati. Quindi trasforma i dati in uno schema relazionale utilizzando un processo ETL (estrarre, trasformare e caricare). Ad esempio, è possibile analizzare i dati JSON da file di origine Amazon Simple Storage Service (Amazon S3) a tabelle Amazon Relational Database Service (Amazon RDS). Comprendere come AWS Glue gestisce le differenze tra gli schemi può aiutare a capire il processo di trasformazione. 

Questo diagramma mostra come AWS Glue trasforma uno schema semistrutturato in uno schema relazionale.

![\[Flusso che mostra la conversione da schema semistrutturato a schema relazionale.\]](http://docs.aws.amazon.com/it_it/glue/latest/dg/images/HowItWorks-schemaconversion.png)


Il diagramma illustra quanto segue:
+ Il singolo valore `A` converte direttamente in una colonna relazionale.
+ La coppia di valori `B1` e `B2` converte in due colonne relazionali.
+ Struttura `C`, con figli `X` e `Y`, converte in due colonne relazionali.
+ L'array `D[]` converte in una colonna relazionale con una chiave esterna (FK) che punta a un'altra tabella relazionale. Oltre a una chiave primaria (PK), la seconda tabella relazionale dispone di colonne che contengono l'offset e il valore degli oggetti nell'array.

# AWS Sistemi tipo Glue
<a name="glue-types"></a>

 AWS Glue utilizza sistemi di tipo multiplo per fornire un'interfaccia versatile su sistemi di dati che archiviano i dati in modi molto diversi. Questo documento chiarisce le ambiguità dei sistemi e degli standard di dati di tipo AWS Glue.

## AWS Tipi di Glue Data Catalog
<a name="glue-types-catalog"></a>

Il catalogo dati è un registro di tabelle e campi archiviati in vari sistemi di dati, un metastore. Quando i componenti AWS Glue, come AWS i crawler AWS Glue e i job Glue with Spark, scrivono nel Data Catalog, lo fanno con un sistema di tipi interno per tracciare i tipi di campi. Questi valori sono mostrati nella colonna **Tipo di dati** dello schema della tabella nella AWS Glue Console. Questo sistema dei tipi è basato sul sistema dei tipi di Apache Hive. Per ulteriori informazioni sul sistema dei tipi di Apache Hive, consulta la sezione [Tipi](https://cwiki.apache.org/confluence/display/hive/languagemanual+types) nella wiki di Apache Hive. Per ulteriori informazioni su tipi e supporti specifici, gli esempi sono forniti nella AWS Glue Console, come parte di Schema Builder.

### Convalida, compatibilità e altri usi
<a name="w2aac11c31b5b5"></a>

Il catalogo dati non convalida i tipi scritti nei campi del tipo. Quando i componenti AWS Glue leggono e scrivono nel Data Catalog, saranno compatibili tra loro. AWS I componenti Glue mirano inoltre a preservare un alto grado di compatibilità con i tipi Hive. Tuttavia, i componenti AWS Glue non garantiscono la compatibilità con tutti i tipi di Hive. Ciò consente l'interoperabilità con strumenti come Athena DDL quando si lavora con le tabelle nel catalogo dati.

Poiché il catalogo dati non convalida i tipi, altri servizi possono utilizzare il catalogo dati per tenere traccia dei tipi utilizzando sistemi strettamente conformi al sistema dei tipi di Hive o a qualsiasi altro sistema. 

## Tipi negli script AWS Glue with Spark
<a name="glue-types-spark"></a>

Quando uno script AWS Glue with Spark interpreta o trasforma un set di dati`DynamicFrame`, forniamo una rappresentazione in memoria del set di dati così come viene utilizzato nello script. L'obiettivo di un `DynamicFrame` è simile a quello del `DataFrame` di Spark: modella il set di dati in modo che Spark possa pianificare ed eseguire trasformazioni sui dati. Garantiamo che la rappresentazione del tipo di `DynamicFrame` sia intercompatibile con il `DataFrame` fornendo i metodi `toDF` e `fromDF`.

Se le informazioni sul tipo possono essere inferite o fornite a un `DataFrame`, possono essere inferite o fornite a un `DynamicFrame`, se non diversamente documentato. Quando forniamo lettori o scrittori ottimizzati per formati di dati specifici, se Spark è in grado di leggere o scrivere i tuoi dati, i nostri lettori e scrittori forniti saranno in grado di farlo, ad esclusione delle limitazioni documentate. Per ulteriori informazioni su lettori e scrittori, consulta [Opzioni del formato dati per input e output in AWS Glue per Spark](aws-glue-programming-etl-format.md).

### Il tipo di scelta
<a name="w2aac11c31b7b7"></a>

Il `DynamicFrames` fornisce un meccanismo per modellare i campi in un set di dati il cui valore può avere tipi incoerenti su disco tra le righe. Ad esempio, un campo può contenere un numero memorizzato come stringa in alcune righe e un numero intero in altre. Questo meccanismo è un tipo in memoria denominato `Choice`. Forniamo trasformazioni, come il `ResolveChoice` metodo, per risolvere le colonne Choice in un tipo concreto. AWS Glue ETL non scriverà il tipo Choice nel Data Catalog durante il normale funzionamento; i tipi Choice esistono solo nel contesto dei modelli di DynamicFrame memoria dei set di dati. Per un esempio di utilizzo del tipo Choice, consulta [Esempio di codice: preparazione dei dati utilizzando ResolveChoice, Lambda e ApplyMapping](aws-glue-programming-python-samples-medicaid.md).

## AWS Tipi di Glue Crawler
<a name="glue-types-crawler"></a>

I crawler mirano a produrre uno schema coerente e utilizzabile per il set di dati, quindi a memorizzarlo in Data Catalog per utilizzarlo in altri componenti AWS Glue e in Athena. I crawler gestiscono i tipi come descritto nella sezione precedente sul catalogo dati, [AWS Tipi di Glue Data Catalog](#glue-types-catalog). Per produrre un tipo utilizzabile negli scenari di tipo "Choice", in cui una colonna contiene valori di due o più tipi, i crawler creeranno un tipo `struct` che modella i tipi potenziali.