Partitionner les journaux pour gagner en rapidité et en coût
Organisez les données afin que les investigations soient plus rapides et moins coûteuses.
Partitionner les journaux pour gagner en rapidité et en coût est une leçon Cloud & IT Cert Prep gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Cloud & IT Cert Prep, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Cloud & IT Cert Prep comprend 4 leçons au total.
Le coût de l'analyse
Comme Athena facture les données analysées, interroger une année de journaux pour trouver les événements d'une seule journée fait perdre du temps et de l'argent. Le partitionnement permet à Athena de ne lire que la portion pertinente des données, ce qui rend les interrogations beaucoup plus rapides et moins coûteuses. Il s'agit de l'optimisation Athena la plus importante.
Qu'est-ce qu'une partition ?
Une partition divise les données d'une table selon les valeurs d'une ou plusieurs colonnes, généralement des composantes de date associées à des préfixes S3. Les journaux CloudTrail sont déjà organisés par région/année/mois/jour ; partitionner selon ces éléments correspond donc à la structure physique et permet à Athena d'ignorer les dossiers qui ne relèvent pas de votre interrogation.
Élagage des partitions
Lorsqu'une interrogation filtre sur une colonne de partition, Athena effectue un élagage des partitions : elle ne lit que les préfixes correspondants et ignore les autres. Une interrogation portant sur une seule journée et utilisant correctement les partitions n'analyse qu'une infime partie du compartiment. Sans élagage, la même interrogation analyserait tout, y compris les données dont elle ne peut avoir besoin.
Ajouter des partitions manuellement
Pour enregistrer des partitions, vous pouvez utiliser ALTER TABLE ADD PARTITION et associer une valeur de partition à son emplacement S3. Cette méthode fonctionne, mais elle est fastidieuse pour les données de journaux quotidiennes, car vous devez ajouter une partition chaque jour. Elle convient aux chargements historiques ponctuels, mais ne s'adapte pas aux journaux continus.
Projection des partitions
La projection des partitions est l'approche moderne recommandée : vous indiquez à Athena le modèle des partitions, par exemple des dates comprises dans une plage, et elle calcule les préfixes au moment de l'interrogation sans enregistrer chaque partition dans le catalogue. Pour les données CloudTrail et les journaux de flux qui augmentent continuellement, cela évite une maintenance constante et maintient l'élagage automatique.
TBLPROPERTIES (
'projection.enabled'='true',
'projection.dt.type'='date',
'projection.dt.range'='2023/01/01,NOW',
'projection.dt.format'='yyyy/MM/dd'
)Robots Glue pour les partitions
Un robot Glue peut également découvrir les nouvelles partitions selon un calendrier et les ajouter au catalogue. Cela automatise la gestion des partitions pour les données qui évoluent, mais pour les structures prévisibles fondées sur les dates, la projection des partitions est généralement plus simple et n'entraîne aucun coût de robot.
Les formats en colonnes amplifient les économies
Le partitionnement limite les fichiers lus ; les formats en colonnes comme Parquet limitent les colonnes lues dans ces fichiers. En combinant les deux, en convertissant les journaux au format Parquet et en les partitionnant par date, vous pouvez réduire de plusieurs ordres de grandeur la quantité de données analysées. De nombreuses équipes exécutent une tâche de conversion pour stocker des copies de journaux à volume élevé optimisées pour les interrogations.
Compression
Compresser les données de journaux avec des formats comme GZIP ou Snappy réduit encore le nombre d'octets analysés et le coût du stockage. Athena lit les fichiers compressés de manière transparente. Associée au partitionnement et au stockage en colonnes, la compression complète le trio de techniques qui rend abordable l'analyse de journaux à grande échelle.
Concevoir des partitions pour la sécurité
Pour les journaux de sécurité, partitionnez principalement par date, car les investigations sont limitées dans le temps, et envisagez un partitionnement par compte ou région pour les journaux d'organisation afin de cibler rapidement un compte. Les bonnes clés de partition reflètent la manière dont vos investigations filtrent réellement les données et maximisent l'élagage pour les interrogations courantes.
Surveiller les métriques d'analyse
Athena indique la quantité de données analysées pour chaque interrogation. Surveiller cette métrique vous permet de vérifier que le partitionnement fonctionne : une interrogation bien partitionnée et limitée dans le temps devrait analyser des mégaoctets, et non des téraoctets. Si une interrogation analyse bien plus de données que prévu, son filtre ne correspond probablement pas aux colonnes de partition.
Réunir les optimisations
La pile d'optimisation consiste à utiliser une partition pour ignorer les données sans rapport, un format en colonnes pour ne lire que les colonnes nécessaires et la compression pour réduire le nombre d'octets. Appliquées à CloudTrail et aux journaux de flux, ces techniques transforment des analyses lentes et coûteuses en investigations rapides et économiques, exactement ce qu'exige l'analyse de sécurité à grande échelle.
Vérification rapide
Testez vos connaissances sur le partitionnement.
Récapitulatif
Le partitionnement divise les données d'une table selon des colonnes, généralement la date, afin qu'Athena effectue un élagage des partitions et n'analyse que les préfixes pertinents, ce qui réduit le coût et la durée. Préférez la projection des partitions à ADD PARTITION manuel ou aux robots pour les journaux qui s'accumulent. Combinez les partitions avec le format en colonnes Parquet et la compression pour réaliser d'importantes économies, partitionnez les journaux de sécurité par date et par compte, puis surveillez la métrique des données analysées.
Questions Fréquemment Posées
La leçon « Partitionner les journaux pour gagner en rapidité et en coût » est-elle gratuite ?
Oui — le texte complet de « Partitionner les journaux pour gagner en rapidité et en coût » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Cloud & IT Cert Prep, passe à CoddyKit PRO. Le cours Cloud & IT Cert Prep comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Partitionner les journaux pour gagner en rapidité et en coût » ?
Organisez les données afin que les investigations soient plus rapides et moins coûteuses. Tu pratiques Cloud & IT Cert Prep avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Cloud & IT Cert Prep ?
Aucune expérience préalable n'est requise. Cloud & IT Cert Prep sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.
Combien de temps prend la leçon « Partitionner les journaux pour gagner en rapidité et en coût » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Cloud & IT Cert Prep ?
Oui. Chaque leçon Cloud & IT Cert Prep inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Interroger les journaux S3 avec Athena
- Créer des tables à partir de données CloudTrail
- Enquêter sur les incidents avec des requêtes SQL
- Partitionner les journaux pour gagner en rapidité et en coût