Funzionalità di AWS Glue

Perché scegliere Glue?

AWS Glue è un servizio di integrazione dei dati scalabile e serverless che semplifica l'individuazione, la preparazione, lo spostamento e l'integrazione dei dati da più origini per l'analisi, il machine learning e lo sviluppo di applicazioni. AWS Glue fornisce tutte le funzionalità necessarie per l'integrazione dei dati, così da poter ottenere informazioni e utilizzare i dati in pochi minuti anziché in mesi. AWS Glue non richiede la configurazione o la gestione di un'infrastruttura. I prezzi sono calcolati in base alle risorse impiegate per l'esecuzione dei processi.

Discover

Il Catalogo dati AWS Glue è uno store di metadati persistente per tutti gli asset di dati, indipendentemente dal percorso in cui si trovano. Il catalogo dati contiene definizioni di tabelle e di processi e altre informazioni di controllo che agevolano la gestione dell'ambiente di AWS Glue. Elabora le statistiche e registra le partizioni automaticamente per interrogare i dati in modo efficiente e a costi contenuti. Inoltre, permette di mantenere uno storico completo delle versioni dello schema per capire più facilmente in che modo i dati cambiano nel corso del tempo.

I crawler di AWS Glue si collegano ai datastore di origine o di destinazione e ne mettono a confronto i contenuti con un elenco di classificatori ordinato per priorità per determinare lo schema dei dati, quindi importano i metadati in un Catalogo dati AWS Glue. I metadati vengono archiviati in tabelle nel Catalogo dati e utilizzati nel processo di creazione dei processi di estrazione, trasformazione e caricamento (ETL). I crawler possono essere eseguiti in base a pianificazioni, on demand oppure attivati da eventi, per assicurare che i metadati siano sempre aggiornati.

Il Registro degli schemi di AWS Glue, una funzionalità serverless di AWS Glue, facilita la convalida e il controllo dell'evoluzione dei dati di streaming tramite schemi di Apache Avro registrati senza costi aggiuntivi. Tramite serializzatori e deserializzatori con licenza Apache, il Registro degli schemi di AWS Glue si integra con le applicazioni Java sviluppate per Apache Kafka, lo streaming gestito da Amazon per Apache Kafka (Amazon MSK), il flusso di dati Amazon Kinesis, Apache Flink, Amazon Kinesis Data Analytics per Apache FlinkAWS Lambda. Quando le applicazioni di streaming di dati sono integrate con il Registro degli schemi di AWS Glue, è possibile migliorare la qualità dei dati e la protezione da modifiche impreviste grazie a controlli di compatibilità che gestiscono l'evoluzione degli schemi. Inoltre, potrai creare o aggiornare le tabelle e le partizioni di AWS Glue utilizzando gli schemi memorizzati all'interno del registro.

Il Dimensionamento automatico, una funzionalità serverless di AWS Glue, dimensiona dinamicamente le risorse in base al carico di lavoro. Con il Dimensionamento automatico, al tuo processo vengono assegnati worker solo quando necessario. Man mano che il processo avanza e passa attraverso trasformazioni avanzate, AWS Glue aggiunge e rimuove risorse a seconda di quanto può suddividere il carico di lavoro. Non sarà più necessario preoccuparsi dell'allocazione eccessiva delle risorse, impiegare tempo a ottimizzare il numero dei worker oppure pagare per risorse inattive.

Preparazione

AWS Glue semplifica le operazioni di pulizia e preparazione dei dati per l'analisi senza richiedere competenze avanzate di ML. La sua funzionalità FindMatches deduplica e individua i record che sono copie imperfette l'uno dell'altro. Ad esempio, è possibile utilizzare FindMatch per trovare record duplicati in un database di ristoranti, come quando un record elenca "Joe's Pizza" in "121 Main St." e un altro mostra una "Joseph's Pizzeria" in "121 Main". FindMatch ti chiederà di etichettare i set di record come "corrispondenti" o "non corrispondenti". Il sistema apprenderà quindi i tuoi criteri per definire la "corrispondenza" di una coppia di record e creerà un processo ETL utilizzabile per trovare record duplicati all'interno di un database o per abbinare i record corrispondenti in due database diversi.

Se scegli di sviluppare il codice ETL in modo interattivo, AWS Glue fornisce endpoint di sviluppo con cui apportare modifiche, eseguire il debug e testare il codice generato. Puoi utilizzare il tuo ambiente di sviluppo integrato (IDE) o notebook preferito. È possibile compilare processi di lettura, di scrittura o di trasformazione e importarli nei processi ETL di AWS Glue sotto forma di librerie personalizzate. È anche possibile usare il codice di altri sviluppatori o condividere il codice con loro nel nostro repository GitHub.

AWS Glue DataBrew fornisce a utenti come analisti di dati e data scientist un'interfaccia visiva interattiva per la preparazione e la normalizzazione dei dati senza bisogno di scrivere il codice. Puoi facilmente visualizzare, pulire e normalizzare i dati direttamente da data lake, data warehouse e database, compresi Amazon Simple Storage Service (Amazon S3), Amazon Redshift, Amazon Aurora e Amazon Relational Database Service (Amazon RDS). Puoi scegliere tra oltre 250 trasformazioni integrate per combinare, focalizzare e trasporre i dati e automatizzare le attività di preparazione dei dati applicando le trasformazioni memorizzate direttamente ai nuovi dati in entrata.

AWS Glue Sensitive Data Detection ti aiuta a definire, identificare ed elaborare i dati sensibili nella tua data pipeline e nel tuo data lake. Una volta identificati i dati sensibili, puoi correggerli redigendo, sostituendo o segnalando le informazioni di identificazione personale (PII) e altri tipi di dati ritenuti sensibili. AWS Glue Sensitive Data Detection semplifica l'identificazione e il mascheramento dei dati sensibili, comprese le PII come nome, codice fiscale, indirizzo, e-mail e patente di guida.

Gli sviluppatori apprezzano Python per la sua facilità d'uso e la vasta raccolta di librerie di elaborazione dati integrate. Desiderano utilizzare il tipo primitivo familiare di Python per elaborare set di dati di grandi dimensioni. AWS Glue per Ray aiuta i data engineer a elaborare set di dati di grandi dimensioni utilizzando Python e le librerie Python più diffuse. AWS Glue per Ray utilizza Ray.io, un framework di calcolo unificato open source che facilita il dimensionamento dei carichi di lavoro Python da un singolo nodo a centinaia di nodi. AWS Glue per Ray è un servizio serverless, quindi non richiede alcuna infrastruttura da gestire.

AWS Glue consente di creare trasformazioni visive personalizzate per definire, riutilizzare e condividere la logica ETL. Con le trasformazioni visive personalizzate di AWS Glue, i data engineer possono scrivere e condividere la logica Apache Spark specifica dell'azienda, riducendo la dipendenza dagli sviluppatori Spark e semplificando l'aggiornamento dei processi ETL. Queste trasformazioni sono disponibili per tutti i processi dell'account AWS, siano essi visivi o basati su codice.

Integrazione

AWS Glue Interactive Sessions, una funzionalità serverless per lo sviluppo dei processi, semplifica lo sviluppo dei processi di integrazione dei dati. Con AWS Glue Interactive Sessions, i data engineer possono esplorare e preparare i dati in modo interattivo. Inoltre, gli ingegneri possono esplorare, sperimentare ed elaborare i dati in modo interattivo utilizzando l'IDE o il notebook di loro scelta.

AWS Glue Studio Job Notebooks fornisce notebook serverless con una configurazione minima in AWS Glue Studio, in modo che gli sviluppatori possano iniziare a lavorare rapidamente. Con AWS Glue Studio Job Notebooks, hai accesso a un'interfaccia integrata per AWS Glue Interactive Sessions in cui puoi salvare e pianificare il codice del tuo notebook sotto forma di processi di AWS Glue.

I processi di AWS Glue possono essere programmati in base a pianificazioni, avviati on demand oppure attivati da eventi. È possibile avviare diversi processi in parallelo oppure specificare le dipendenze tra processi differenti per dare vita a pipeline ETL complesse. AWS Glue gestisce tutte le dipendenze tra un processo e l'altro, filtra i dati non utilizzabili ed esegue nuovamente i processi terminati con errori. Tutti i log e le notifiche vengono inoltrati ad Amazon CloudWatch per eseguire il monitoraggio e generare gli allarmi tramite un servizio centralizzato.

AWS Glue si integra con Git, il diffuso sistema di controllo delle versioni open source. È possibile utilizzare GitHub e AWS CodeCommit per mantenere uno storico delle modifiche apportate ai processi AWS Glue e applicare le procedure DevOps esistenti per implementarli. L'integrazione con Git in AWS Glue funziona per tutti i tipi di processi AWS Glue, sia visivi che basati su codice. Include l'integrazione incorporata con GitHub e CodeCommit e semplifica anche l'utilizzo di strumenti di automazione come Jenkins e AWS CodeDeploy per implementare i processi AWS Glue.

AWS Glue Flex è una classe di processi di esecuzione flessibile che ti consente di ridurre i costi dei carichi di lavoro di integrazione dei dati non urgenti (ad esempio processi di pre-produzione, test e caricamento di dati) fino al 35%. AWS Glue ha due classi di esecuzione dei processi: standard e flessibile. La classe di esecuzione standard è ideale per carichi di lavoro sensibili al fattore tempo, che richiedono un avvio rapido del processo e risorse dedicate. AWS Glue Flex è adatto per processi non sensibili al fattore tempo, i cui momenti di avvio e di completamento possono variare.

AWS Glue supporta in modo nativo tre framework open source: Apache Hudi, Apache Iceberg e Linux Foundation Delta Lake. Questi framework consentono di gestire i dati in modo coerente dal punto di vista delle transazioni per l'utilizzo nel data lake basato su Amazon S3.

Qualità dei dati di AWS Glue contribuisce a migliorare la qualità e la sicurezza dei dati. Misura, monitora e gestisce automaticamente la qualità dei dati nei data lake e nelle pipeline. Inoltre elabora automaticamente statistiche, consiglia regole di qualità, monitora e invia notifiche quando la qualità peggiora, così diventa più facile individuare dati mancanti, obsoleti o non utilizzabili prima che abbiano un impatto sulla tua azienda.

Trasformazione

AWS Glue Studio ti consente di compilare processi ETL altamente scalabili per l'elaborazione distribuita senza richiedere competenze avanzate di Apache Spark. Definisci il processo ETL nell'editor dei processi a trascinamento e AWS Glue genera automaticamente il codice che serve a estrarre, trasformare e caricare i dati. Il codice viene generato in Scala o Python e scritto per Apache Spark.

I processi ETL in streaming serverless in AWS Glue acquisiscono continuamente i dati dalle origini in streaming, comprese Amazon Kinesis e Amazon MSK, li puliscono e li trasformano immediatamente, rendendoli disponibili per l'analisi in pochi secondi nel datastore di destinazione. Sfrutta questa caratteristica per elaborare i dati di eventi quali flussi di eventi IoT, clickstream e log di rete. I processi ETL di streaming di AWS Glue possono arricchire e aggregare i dati, unire batch e fonti di streaming ed eseguire una vasta gamma di analisi complesse e di operazioni di machine learning.