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à.
Attivazione dell'ottimizzatore della compattazione
Puoi utilizzare la AWS Glue console o l' AWS API per abilitare la compattazione delle tabelle Apache Iceberg nel Data Catalog. AWS CLI AWS Glue Per le nuove tabelle, puoi scegliere Apache Iceberg come formato di tabella e abilitare la compattazione quando crei la tabella. La compattazione è disabilitata per impostazione predefinita per le nuove tabelle.
- Console
-
Per abilitare la compattazione
-
Apri la AWS Glue console all'indirizzo https://console.aws.amazon.com/glue/e accedi come amministratore del data lake, creatore della tabella o utente a cui sono state concesse lakeformation:GetDataAccess
le autorizzazioni glue:UpdateTable
e sulla tabella.
-
Nel pannello di navigazione, in Catalogo dati, seleziona Tabelle.
Nella pagina Tabelle, scegli una tabella in formato tabella aperta per la quale desideri abilitare la compattazione, quindi nel menu Azioni, scegli Ottimizzazione e quindi scegli Abilita.
È inoltre possibile abilitare la compattazione selezionando la scheda Ottimizzazione della tabella nella pagina dei dettagli della tabella. Scegli la scheda Ottimizzazione della tabella nella sezione inferiore della pagina e scegli Abilita compattazione.
L'opzione Abilita ottimizzazione è disponibile anche quando si crea una nuova tabella Iceberg nel Data Catalog.
-
Nella pagina Abilita ottimizzazione, scegli Compattazione in Opzioni di ottimizzazione.
-
Quindi, seleziona un ruolo IAM dal menu a discesa con le autorizzazioni mostrate nella sezione. Prerequisiti per l'ottimizzazione delle tabelle
Puoi anche scegliere l'opzione Crea un nuovo ruolo IAM per creare un ruolo personalizzato con le autorizzazioni necessarie per eseguire la compattazione.
Segui la procedura riportata di seguito per aggiornare un ruolo IAM esistente:
-
Per aggiornare la politica di autorizzazione per il ruolo IAM, nella console IAM, vai al ruolo IAM utilizzato per eseguire la compattazione.
-
Nella sezione Aggiungi autorizzazioni, scegli Crea policy. Nella finestra del browser appena aperta, crea una nuova policy da utilizzare con il tuo ruolo.
-
Nella pagina Crea politica, scegli la JSON
scheda. Copia il codice JSON mostrato nel campo Prerequisiti nel campo dell'editor delle politiche.
-
Se hai configurazioni di policy di sicurezza in cui l'ottimizzatore di tabelle Iceberg deve accedere ai bucket Amazon S3 da uno specifico Virtual Private Cloud (VPC), crea una connessione di rete o usane una esistente. AWS Glue
Se non hai già configurato una connessione AWS Glue VPC, creane una nuova seguendo i passaggi nella sezione Creazione di connessioni per connettori utilizzando la AWS Glue console o /SDK. AWS CLI
-
Scegliete una strategia di compattazione. Le opzioni disponibili sono:
Binpack — Binpack è la strategia di compattazione predefinita in Apache Iceberg. Combina file di dati più piccoli in file più grandi per prestazioni ottimali.
-
Ordinamento: l'ordinamento in Apache Iceberg è una tecnica di organizzazione dei dati che raggruppa le informazioni all'interno dei file in base a colonne specifiche, migliorando significativamente le prestazioni delle query riducendo il numero di file da elaborare. L'ordinamento viene definito nei metadati di Iceberg utilizzando il campo di ordinamento e, quando vengono specificate più colonne, i dati vengono ordinati nella sequenza in cui le colonne appaiono nell'ordine di ordinamento, assicurando che i record con valori simili vengano archiviati insieme all'interno dei file. La strategia di ordinamento e compattazione porta ulteriormente l'ottimizzazione ordinando i dati tra tutti i file all'interno di una partizione.
Ordine Z: l'ordinamento Z è un modo per organizzare i dati quando è necessario ordinarli per più colonne con uguale importanza. A differenza dell'ordinamento tradizionale che dà priorità a una colonna rispetto alle altre, l'ordinamento Z attribuisce un peso equilibrato a ciascuna colonna, aiutando il motore di query a leggere meno file durante la ricerca di dati.
La tecnica funziona intrecciando le cifre binarie dei valori di colonne diverse. Ad esempio, se hai i numeri 3 e 4 di due colonne, l'ordinamento Z li converte prima in binario (3 diventa 011 e 4 diventa 100), quindi interlaccia queste cifre per creare un nuovo valore: 011010. Questa interlacciatura crea uno schema che mantiene i dati correlati fisicamente vicini tra loro.
L'ordinamento Z è particolarmente efficace per le interrogazioni multidimensionali. Ad esempio, una tabella clienti ordinata in base a reddito, stato e codice postale può offrire prestazioni superiori rispetto all'ordinamento gerarchico quando si eseguono interrogazioni su più dimensioni. Questa organizzazione consente di eseguire query mirate a combinazioni specifiche di reddito e posizione geografica per individuare rapidamente i dati pertinenti riducendo al minimo le scansioni dei file non necessarie.
-
Scegli Abilita ottimizzazione.
- AWS CLI
-
L'esempio seguente mostra come abilitare la compattazione. Sostituisci l'ID dell'account con un ID AWS account valido. Sostituisci il nome del database e della tabella con quello effettivo della tabella Iceberg e del database. Sostituisci roleArn
con il nome della risorsa (ARN) AWS del ruolo IAM e il nome del ruolo IAM che dispone delle autorizzazioni necessarie per eseguire la compattazione. Puoi sostituire la strategia di compattazione sort
con altre strategie supportate come z-order
obinpack
.
ordina» in base alle tue esigenze.
aws glue create-table-optimizer \
--catalog-id 123456789012
\
--database-name iceberg_db
\
--table-name iceberg_table
\
--table-optimizer-configuration '{
"roleArn": "arn:aws:iam::123456789012:role/optimizer_role
",
"enabled": true,
"vpcConfiguration": {"glueConnectionName": "glue_connection_name"},
"compactionConfiguration": {
"icebergConfiguration": {"strategy": "sort
"}
}
}'\
--type compaction
- AWS API
-
Chiama l'operazione CreateTableOptimizer per abilitare la compattazione di una tabella.
Dopo aver abilitato la compattazione, la scheda di ottimizzazione della tabella mostra i seguenti dettagli di compattazione una volta completato il ciclo di compattazione:
- Ora di inizio
-
L'ora in cui è iniziato il processo di compattazione in Data Catalog. Il valore è un timestamp in formato UTC.
- Ora di fine
-
L'ora in cui il processo di compattazione è terminato in Data Catalog. Il valore è un timestamp in formato UTC.
- Stato
-
Lo stato del ciclo di compattazione. I valori sono esito positivo o negativo.
- File compattati
Numero totale di file compattati.
- Byte compattati
-
Numero totale di byte compattati.