속도와 비용을 고려한 로그 파티셔닝
조사가 더 빠르고 저렴하게 실행되도록 데이터를 구성해 보세요.
속도와 비용을 고려한 로그 파티셔닝은(는) CoddyKit의 무료 Cloud & IT Cert Prep 강의입니다. 이것은 4개 중 4번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Cloud & IT Cert Prep 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Cloud & IT Cert Prep 강의에는 총 4개의 강의가 포함되어 있습니다.
스캔 비용
Athena는 스캔한 데이터를 기준으로 요금을 부과하므로, 하루치 이벤트 하나를 찾기 위해 1년치 로그를 조회하면 시간과 비용을 낭비하게 됩니다. 파티셔닝은 Athena가 데이터에서 관련된 부분만 읽도록 하는 기법으로, 조회 속도를 크게 높이고 비용을 줄입니다. 이는 Athena에서 가장 중요한 단일 최적화 방법입니다.
파티션이란
파티션은 하나 이상의 열 값에 따라 테이블의 데이터를 나누며, 일반적으로 날짜 구성 요소를 S3 접두사에 매핑합니다. CloudTrail 로그는 이미 region/year/month/day 구조로 배치되어 있으므로, 이 기준으로 파티셔닝하면 물리적 구조와 일치하여 Athena가 조회 범위 밖의 폴더를 건너뛸 수 있습니다.
파티션 가지치기
조회에서 파티션 열을 필터링하면 Athena는 파티션 가지치기를 수행하여 일치하는 접두사만 읽고 나머지는 무시합니다. 적절한 파티션이 있는 상태에서 하루치 데이터를 조회하면 버킷의 아주 작은 부분만 스캔합니다. 가지치기가 없으면 같은 조회가 필요하지 않은 데이터까지 포함해 모든 데이터를 스캔합니다.
수동으로 파티션 추가
파티션을 등록하는 한 가지 방법은 ALTER TABLE ADD PARTITION을 사용해 파티션 값을 S3 위치에 매핑하는 것입니다. 이 방법은 작동하지만 매일 로그가 쌓이는 데이터에는 번거롭습니다. 매일 파티션을 하나씩 추가해야 하기 때문입니다. 일회성 과거 데이터 적재에는 적합하지만 지속적으로 생성되는 로그에는 확장성이 떨어집니다.
파티션 프로젝션
파티션 프로젝션은 현대적이고 권장되는 접근 방식입니다. 날짜 범위와 같은 파티션 패턴을 Athena에 알려 주면 카탈로그에 각 파티션을 저장하지 않고 조회 시점에 접두사를 계산합니다. 계속 증가하는 CloudTrail 및 흐름 로그 데이터에 이 방식을 사용하면 지속적인 관리가 필요 없고 가지치기도 자동으로 유지됩니다.
TBLPROPERTIES (
'projection.enabled'='true',
'projection.dt.type'='date',
'projection.dt.range'='2023/01/01,NOW',
'projection.dt.format'='yyyy/MM/dd'
)파티션에 Glue 크롤러 사용
Glue 크롤러를 사용해 일정에 따라 새 파티션을 검색하고 카탈로그에 추가할 수도 있습니다. 이렇게 하면 계속 변하는 데이터의 파티션 관리를 자동화할 수 있습니다. 다만 날짜 기반 배치가 예측 가능한 경우에는 파티션 프로젝션이 대체로 더 간단하고 크롤러 비용도 발생하지 않습니다.
열 지향 형식으로 절약 효과 확대
파티셔닝은 읽을 file을 제한하고, Parquet와 같은 열 지향 형식은 해당 file 안에서 읽을 열을 제한합니다. 로그를 Parquet로 변환하고 날짜별로 파티셔닝하는 두 방법을 결합하면 스캔하는 데이터를 몇 자릿수 규모로 줄일 수 있습니다. 많은 팀이 대량 로그의 조회에 최적화된 복사본을 저장하기 위해 변환 작업을 실행합니다.
압축
GZIP 또는 Snappy와 같은 형식으로 로그 데이터를 압축하면 스캔하는 바이트와 스토리지 비용을 더 줄일 수 있습니다. Athena는 압축된 file을 투명하게 읽습니다. 파티셔닝 및 열 지향 스토리지와 결합하면 압축은 대규모 로그 분석을 감당할 수 있게 하는 세 가지 기법을 완성합니다.
보안을 위한 파티션 설계
보안 로그는 조사가 시간 범위로 제한되므로 주로 날짜를 기준으로 파티셔닝하고, 조직 추적에서는 특정 계정을 신속하게 대상으로 지정할 수 있도록 계정 또는 리전을 기준으로 나누는 것을 고려하세요. 올바른 파티션 키는 실제 조사에서 사용하는 필터 방식을 반영하여 실제 조회에서 가지치기를 극대화합니다.
스캔 지표 확인
Athena는 조회별 스캔한 데이터를 보고합니다. 이 지표를 확인하면 파티셔닝이 제대로 작동하는지 알 수 있습니다. 파티션이 잘 구성되고 시간 범위가 제한된 조회는 테라바이트가 아니라 메가바이트를 스캔해야 합니다. 조회가 예상보다 훨씬 많은 데이터를 스캔한다면 필터가 파티션 열과 제대로 맞지 않을 가능성이 큽니다.
최적화 조합
최적화의 구성은 관련 없는 데이터를 건너뛰는 파티션, 필요한 열만 읽는 열 지향 형식, 바이트 수를 줄이는 압축입니다. 이를 CloudTrail과 흐름 로그에 적용하면 느리고 비용이 많이 드는 스캔을 빠르고 저렴한 조사로 바꿀 수 있습니다. 이는 대규모 보안 분석에 정확히 필요한 방식입니다.
빠른 확인
파티셔닝 지식을 테스트해 보세요.
복습
파티셔닝은 열(일반적으로 날짜)에 따라 테이블 데이터를 나누므로 Athena가 파티션 가지치기를 수행하고 관련 접두사만 스캔하여 비용과 시간을 줄일 수 있습니다. 계속 증가하는 로그에는 수동 ADD PARTITION이나 크롤러보다 파티션 프로젝션을 우선 사용하세요. 파티션을 열 지향 Parquet 및 압축과 결합하면 큰 폭으로 절약할 수 있습니다. 보안 로그는 날짜와 계정을 기준으로 파티셔닝하고 스캔한 데이터 지표를 확인하세요.
자주 묻는 질문
“속도와 비용을 고려한 로그 파티셔닝” 강의는 무료인가요?
네 — “속도와 비용을 고려한 로그 파티셔닝” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Cloud & IT Cert Prep 강의 전체를 잠금 해제할 수 있습니다. Cloud & IT Cert Prep 강의에는 총 4개의 강의가 포함되어 있습니다.
“속도와 비용을 고려한 로그 파티셔닝”에서 뭘 배우나요?
조사가 더 빠르고 저렴하게 실행되도록 데이터를 구성해 보세요. 브라우저에서 직접 실행하는 실습 코드로 Cloud & IT Cert Prep을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
Cloud & IT Cert Prep을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 Cloud & IT Cert Prep은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 4번째 강의입니다.
“속도와 비용을 고려한 로그 파티셔닝” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 Cloud & IT Cert Prep 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 Cloud & IT Cert Prep 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- Athena로 S3 로그 조회
- CloudTrail 데이터 위에 테이블 구축
- SQL 쿼리로 사고 조사
- 속도와 비용을 고려한 로그 파티셔닝