Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Activation de l'optimiseur de compactage
Vous pouvez utiliser AWS Glue la console ou l' AWS API pour activer le compactage de vos tables Apache Iceberg dans le catalogue de AWS Glue données. AWS CLI Pour les nouvelles tables, vous pouvez choisir Apache Iceberg comme format de table et activer le compactage lors de la création de la table. Le compactage est désactivé par défaut pour les nouvelles tables.
- Console
-
Pour activer le compactage
-
Ouvrez la AWS Glue console https://console.aws.amazon.com/glue/et connectez-vous en tant qu'administrateur du lac de données, créateur de table ou utilisateur ayant obtenu les lakeformation:GetDataAccess
autorisations glue:UpdateTable
et sur la table.
-
Dans le panneau de navigation, sous Catalogue de données, choisissez Tables.
Sur la page Tables, choisissez une table au format de table ouverte pour laquelle vous souhaitez activer le compactage, puis dans le menu Actions, choisissez Optimisation, puis sélectionnez Activer.
Vous pouvez également activer le compactage en sélectionnant l'onglet Optimisation des tables sur la page des détails des tables. Choisissez l'onglet Optimisation des tables dans la partie inférieure de la page, puis sélectionnez Activer le compactage.
L'option Activer l'optimisation est également disponible lorsque vous créez une nouvelle table Iceberg dans le catalogue de données.
-
Sur la page Activer l'optimisation, sélectionnez Compaction sous Options d'optimisation.
-
Ensuite, sélectionnez un rôle IAM dans le menu déroulant avec les autorisations indiquées dans la Conditions préalables requises pour l'optimisation des tables section.
Vous pouvez également choisir l'option Créer un nouveau rôle IAM pour créer un rôle personnalisé doté des autorisations requises pour exécuter le compactage.
Suivez les étapes ci-dessous pour mettre à jour un rôle IAM existant :
-
Pour mettre à jour la stratégie d'autorisation pour le rôle IAM, dans la console IAM, accédez au rôle IAM utilisé pour exécuter le compactage.
-
Dans la section Ajouter des autorisations, choisissez Créer une politique. Dans la fenêtre du navigateur nouvellement ouverte, créez une nouvelle stratégie à utiliser avec votre rôle.
-
Sur la page Créer une politique, choisissez l'JSON
onglet. Copiez le code JSON affiché dans les conditions préalables dans le champ de l'éditeur de politiques.
-
Si vous avez des configurations de politique de sécurité dans lesquelles l'optimiseur de table Iceberg doit accéder aux compartiments Amazon S3 à partir d'un Virtual Private Cloud (VPC) spécifique, créez AWS Glue une connexion réseau ou utilisez une connexion réseau existante.
Si aucune connexion AWS Glue VPC n'est déjà configurée, créez-en une nouvelle en suivant les étapes de la section Création de connexions pour les connecteurs à l'aide de la AWS Glue console ou du /SDK. AWS CLI
-
Choisissez une stratégie de compactage. Les options disponibles sont les suivantes :
Binpack — Binpack est la stratégie de compactage par défaut dans Apache Iceberg. Il combine des fichiers de données plus petits dans des fichiers plus volumineux pour des performances optimales.
-
Tri : le tri dans Apache Iceberg est une technique d'organisation des données qui regroupe les informations au sein de fichiers en fonction de colonnes spécifiées, ce qui améliore considérablement les performances des requêtes en réduisant le nombre de fichiers à traiter. Vous définissez l'ordre de tri dans les métadonnées d'Iceberg à l'aide du champ d'ordre de tri, et lorsque plusieurs colonnes sont spécifiées, les données sont triées dans l'ordre dans lequel les colonnes apparaissent dans l'ordre de tri, ce qui garantit que les enregistrements présentant des valeurs similaires sont stockés ensemble dans des fichiers. La stratégie de tri et de compactage va plus loin dans l'optimisation en triant les données dans tous les fichiers d'une partition.
Ordre en Z — L'ordre en Z est un moyen d'organiser les données lorsque vous devez les trier selon plusieurs colonnes ayant la même importance. Contrairement au tri traditionnel qui donne la priorité à une colonne par rapport aux autres, l'ordre en Z donne une pondération équilibrée à chaque colonne, ce qui permet à votre moteur de requête de lire moins de fichiers lors de la recherche de données.
La technique fonctionne en combinant les chiffres binaires des valeurs de différentes colonnes. Par exemple, si vous avez les chiffres 3 et 4 sur deux colonnes, l'ordre Z les convertit d'abord en binaire (3 devient 011 et 4 devient 100), puis entrelace ces chiffres pour créer une nouvelle valeur : 011010. Cet entrelacement crée un modèle qui maintient les données associées physiquement proches les unes des autres.
Le classement en Z est particulièrement efficace pour les requêtes multidimensionnelles. Par exemple, une table de clients triée en Z par revenu, État et code postal peut offrir des performances supérieures à celles d'un tri hiérarchique lors d'une interrogation portant sur plusieurs dimensions. Cette organisation permet aux requêtes ciblant des combinaisons spécifiques de revenus et de situation géographique de localiser rapidement les données pertinentes tout en minimisant les analyses de fichiers inutiles.
-
Choisissez Activer l'optimisation.
- AWS CLI
-
L'exemple suivant montre comment activer le compactage. Remplacez l'identifiant de compte par un identifiant de AWS compte valide. Remplacez le nom de la base de données et le nom de la table par un nom réel de la table Iceberg et le nom de la base de données. Remplacez le roleArn
par l'ARN (Amazon Resource Name) AWS du rôle IAM et le nom du rôle IAM qui dispose des autorisations requises pour exécuter le compactage. Vous pouvez remplacer la stratégie de compactage par sort
d'autres stratégies prises en charge, telles que z-order
oubinpack
.
commander » en fonction de vos besoins.
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
-
Appelez une opération CreateTableOptimizer pour activer le compactage d'une table.
Une fois le compactage activé, l'onglet Optimisation de la table affiche les détails de compactage suivants une fois le compactage terminé :
- L’heure de début
-
Heure à laquelle le processus de compactage a commencé dans le catalogue de données. La valeur est un horodatage selon le fuseau UTC.
- L’heure de fin
-
Heure à laquelle le processus de compactage s'est terminé dans le catalogue de données. La valeur est un horodatage selon le fuseau UTC.
- Statut
-
État du cycle de compactage. Les valeurs sont la réussite ou l'échec.
- Fichiers compactés
Nombre total de fichiers compactés.
- Octets compactés
-
Nombre total d'octets compactés.