Partisjonere logger for hastighet og kostnad
Organiser dataene slik at undersøkelser går raskere og koster mindre.
Partisjonere logger for hastighet og kostnad er en gratis leksjon i Cloud & IT Cert Prep på CoddyKit. Dette er leksjon 4 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Cloud & IT Cert Prep, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Cloud & IT Cert Prep inneholder totalt 4 leksjoner.
Kostnaden ved skanning
Ettersom Athena tar betalt basert på skannede data, er det sløsing med både penger og tid å spørre gjennom ett års logger for å finne hendelser fra én dag. Partisjonering er teknikken som lar Athena lese bare det relevante datautvalget, slik at spørringene blir betydelig raskere og billigere. Det er den viktigste enkeltstående optimaliseringen i Athena.
Hva en partisjon er
En partisjon deler dataene i en tabell etter verdiene i én eller flere kolonner, vanligvis datokomponenter som er knyttet til S3-prefikser. CloudTrail-logger er allerede organisert etter region/year/month/day, så partisjonering etter disse verdiene samsvarer med den fysiske strukturen og lar Athena hoppe over mapper som ligger utenfor spørringen.
Partisjonsbeskjæring
Når en spørring filtrerer på en partisjonskolonne, utfører Athena partisjonsbeskjæring: Den leser bare de samsvarende prefiksene og ignorerer resten. En spørring for én dag med riktige partisjoner skanner en svært liten del av bøtten. Uten beskjæring ville den samme spørringen ha skannet alt, også data den umulig kan trenge.
Legge til partisjoner manuelt
En måte å registrere partisjoner på er ALTER TABLE ADD PARTITION, der en partisjonsverdi knyttes til S3-plasseringen. Dette fungerer, men er tungvint for daglige loggdata siden du må legge til en partisjon hver dag. Det passer fint for engangsinnlasting av historiske data, men skalerer ikke for logger som fortløpende samles inn.
Partisjonsprojeksjon
Partisjonsprojeksjon er den moderne og anbefalte tilnærmingen: Du forteller Athena hvilket partisjonsmønster som gjelder, for eksempel datoer innenfor et intervall, og Athena beregner prefiksene ved spørringstidspunktet uten å lagre hver partisjon i katalogen. For CloudTrail- og Flow Log-data som stadig vokser, unngår dette kontinuerlig vedlikehold og sørger for automatisk beskjæring.
TBLPROPERTIES (
'projection.enabled'='true',
'projection.dt.type'='date',
'projection.dt.range'='2023/01/01,NOW',
'projection.dt.format'='yyyy/MM/dd'
)Glue Crawlers for partisjoner
En Glue crawler kan også oppdage nye partisjoner etter en tidsplan og legge dem til i katalogen. Dette automatiserer partisjonsadministrasjonen for data i endring, men for forutsigbare datobaserte oppsett er partisjonsprojeksjon vanligvis enklere og medfører ingen kostnad for crawlere.
Kolonneorienterte formater gir større besparelser
Partisjonering begrenser hvilke filer som leses, mens kolonneorienterte formater som Parquet begrenser hvilke kolonner som leses i disse filene. Ved å kombinere begge deler – konvertere logger til Parquet og partisjonere etter dato – kan du redusere mengden skannede data med flere størrelsesordener. Mange team kjører en konverteringsjobb for å lagre spørringsoptimaliserte kopier av logger med høyt volum.
Komprimering
Komprimering av loggdata med formater som GZIP eller Snappy reduserer ytterligere antall skannede byte og lagringskostnaden. Athena leser komprimerte filer uten at du trenger å gjøre noe ekstra. Sammen med partisjonering og kolonneorientert lagring utgjør komprimering den tredje teknikken som gjør storskala logganalyse økonomisk overkommelig.
Utforme partisjoner for sikkerhet
For sikkerhetslogger bør du først og fremst partisjonere etter dato, siden undersøkelser er avgrenset i tid. For organisasjonsspor bør du også vurdere partisjonering etter konto eller region, slik at du raskt kan rette søk mot én konto. De riktige partisjonsnøklene gjenspeiler hvordan undersøkelsene dine faktisk filtrerer data, og maksimerer beskjæringen for reelle spørringer.
Følge med på skanningsmålinger
Athena rapporterer hvor mye data som er skannet per spørring. Ved å følge med på denne målingen ser du om partisjoneringen fungerer: En godt partisjonert spørring som er avgrenset i tid, bør skanne megabyte, ikke terabyte. Hvis en spørring skanner langt mer enn forventet, er filteret sannsynligvis ikke tilpasset partisjonskolonnene.
Samle optimaliseringen
Optimaliseringsstakken består av partisjonering for å hoppe over irrelevante data, kolonneorientert format for å lese bare nødvendige kolonner, og komprimering for å redusere antall byte. Brukt på CloudTrail og Flow Logs gjør dette langsomme og kostbare skanninger om til raske og rimelige undersøkelser – akkurat det storskala sikkerhetsanalyse krever.
Rask sjekk
Test kunnskapen din om partisjonering.
Oppsummering
Partisjonering deler tabelldata etter kolonner, vanligvis dato, slik at Athena kan utføre partisjonsbeskjæring og bare skanne relevante prefikser. Det reduserer både kostnad og tidsbruk. Foretrekk partisjonsprojeksjon fremfor manuell ADD PARTITION eller crawlere for logger som stadig vokser. Kombiner partisjoner med kolonneorientert Parquet og komprimering for store besparelser, partisjoner sikkerhetslogger etter dato og konto, og følg med på målingen for skannede data.
Lær deg Cloud & IT Cert Prep med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 150
- Leksjoner
- 600
Ofte stilte spørsmål
Er leksjonen «Partisjonere logger for hastighet og kostnad» gratis?
Ja – hele teksten i «Partisjonere logger for hastighet og kostnad» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Cloud & IT Cert Prep-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Cloud & IT Cert Prep inneholder totalt 4 leksjoner.
Hva lærer jeg i «Partisjonere logger for hastighet og kostnad»?
Organiser dataene slik at undersøkelser går raskere og koster mindre. Du øver på Cloud & IT Cert Prep med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Cloud & IT Cert Prep?
Ingen tidligere erfaring er nødvendig. Cloud & IT Cert Prep på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 4 av 4.
Hvor lang tid tar leksjonen «Partisjonere logger for hastighet og kostnad»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Cloud & IT Cert Prep-leksjonen?
Ja. Alle Cloud & IT Cert Prep-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Gjøre oppslag i S3-logger med Athena
- Bygge tabeller over CloudTrail-data
- Undersøke hendelser med SQL-spørringer
- Partisjonere logger for hastighet og kostnad