Optimisation des performances des requêtes des tables de métadonnées
Comme S3 Metadata repose sur le format de table Apache Iceberg, vous pouvez optimiser les performances et le coût des interrogations de vos tables de métadonnées en utilisant des plages de temps spécifiques.
Par exemple, la requête SQL suivante indique le niveau de sensibilité des nouveaux objets d’un compartiment S3 à usage général :
SELECT key, object_tags['SensitivityLevel'] FROM "b_general-purpose-bucket-name"."journal" WHERE record_type = 'CREATE' GROUP BY object_tags['SensitivityLevel']
Cette requête analyse l’ensemble de la table de journal. Son exécution peut donc prendre beaucoup de temps. Pour améliorer les performances, vous pouvez inclure la colonne record_timestamp pour vous concentrer sur une plage de temps spécifique. Nous vous recommandons également d’utiliser le nom de table complet. Vous pouvez le trouver dans la console Amazon S3 sur la page de détails de la configuration des métadonnées sous l’onglet Métadonnées du compartiment à usage général. Voici une version mise à jour de la requête précédente qui examine les nouveaux objets du mois dernier :
SELECT key, object_tags['SensitivityLevel'] FROM b_general-purpose-bucket-name"."aws-s3.b_general-purpose-bucket-name.journal" WHERE record_type = 'CREATE' AND record_timestamp > (CURRENT_TIMESTAMP – interval '1' month) GROUP BY object_tags['SensitivityLevel']
Pour améliorer les performances des interrogations des tables d’inventaire, assurez-vous de n’interroger que les colonnes dont vous avez besoin.