
1. 들어가며
데이터 분석이나 데이터 파이프라인을 구축하다 보면 다양한 데이터 소스에서 데이터를 수집하고, 필요한 형태로 가공한 뒤 저장하는 과정이 필요합니다.
하지만 직접 ETL 환경을 구축하려면 서버 관리, 스케줄링, 확장성 등을 고려해야 하기 때문에 운영 부담이 커질 수 있습니다.
AWS에서는 이러한 과정을 보다 쉽게 수행할 수 있도록 AWS Glue라는 완전 관리형 ETL 서비스를 제공합니다.
이번 글에서는 AWS Glue가 무엇인지, 어떤 구성 요소로 이루어져 있는지, 그리고 왜 사용하는지 살펴보겠습니다.
2. AWS Glue란?

AWS Glue는 데이터를 추출(Extract), 변환(Transform), 적재(Load)하는 ETL 작업을 수행할 수 있는 AWS의 서버리스 서비스입니다.
사용자는 서버를 직접 구축하거나 관리할 필요 없이 데이터 파이프라인을 구성할 수 있습니다.
- S3 데이터 전처리
- 데이터 웨어하우스 적재
- 로그 데이터 가공
- 데이터 카탈로그 구축
- 데이터 레이크 관리
3. AWS Glue의 전체 구조

일반적인 데이터 처리 과정은 다음과 같습니다.
웹 사이트
↓
Python (BeautifulSoup, Selenium)
↓
S3
↓
Glue Crawler
↓
Glue Data Catalog
↓
Glue Job
↓
Athena / Redshift
- Python 코드로 웹 크롤링 수행
- 크롤링 결과를 CSV 또는 JSON 형태로 S3에 저장
- Glue Crawler가 파일 구조를 분석하여 메타데이터 생성
- Glue Job이 데이터를 정제 및 변환
- Athena나 Redshift에서 분석
4. 주요 구성 요소
4-1) Glue Crawler

Glue Crawler는 데이터의 구조를 자동으로 분석하는 기능입니다.
예를 들어 S3에 CSV 파일이 저장되어 있다면,
- 컬럼 이름
- 데이터 타입
- 테이블 구조
등을 자동으로 파악하여 Data Catalog에 등록합니다. 별도의 스키마를 직접 정의하지 않아도 된다는 장점이 있습니다.
4-2) Glue Data Catalog
Data Catalog는 메타데이터 저장소 역할을 수행합니다.
데이터 자체를 저장하는 것이 아니라,
- 테이블 이름
- 컬럼 정보
- 데이터 타입
- 데이터 위치
등의 정보를 관리합니다. Athena, Redshift, EMR 등의 서비스와 함께 사용됩니다.
4-3) Glue Job

Glue Job은 실제 ETL 작업을 수행하는 기능입니다. 내부적으로 Apache Spark 기반으로 동작하며,
- 데이터 필터링
- 컬럼 변환
- 데이터 정제
- 포맷 변환
등을 수행할 수 있습니다. Python(PySpark) 또는 Scala를 이용해 작업을 작성할 수 있습니다.
4-4) Glue Trigger

Trigger는 작업 실행 시점을 관리합니다. 다음과 같은 방식으로 실행할 수 있습니다.
- 특정 시간마다 실행
- 이전 Job 완료 후 실행
- 이벤트 발생 시 실행
이를 통해 여러 ETL 작업을 연결하여 워크플로우를 구성할 수 있습니다.
5. AWS Glue의 장점
AWS Glue의 주요 장점은 다음과 같습니다.
| 항목 | 장점 | 설명 |
| 서버 관리 | 서버리스 환경 제공 | 인프라를 직접 구축하거나 관리할 필요가 없다 |
| 확장성 | 자동 확장 지원 | 작업량에 따라 리소스가 자동으로 조절된다 |
| 대용량 처리 | Spark 기반 처리 | 대규모 데이터를 효율적으로 처리할 수 있다 |
| AWS 연동 | 다양한 서비스와 통합 | S3, Athena, Redshift 등과 쉽게 연동된다 |
| 메타데이터 관리 | Data Catalog 제공 | 스키마를 중앙에서 관리할 수 있다 |
6. AWS Glue의 단점
| 항목 | 단점 | 설명 |
| 실행 시간 | 초기 실행 지연 | 작은 작업에도 시작 시간이 발생한다 |
| 비용 | 사용량에 비례한 과금 | 작업량이 많아질수록 비용이 증가할 수 있다 |
| 디버깅 | 테스트가 상대적으로 어려움 | 로컬 환경처럼 즉시 확인하기 어렵다 |
| 학습 비용 | Spark 이해 필요 | 복잡한 작업은 PySpark 지식이 필요하다 |
| 실시간 처리 | 배치 작업에 적합 | 실시간 스트리밍 처리에는 한계가 있다 |
7. 언제 사용하면 좋을까?
AWS Glue는 다음과 같은 환경에서 많이 사용됩니다.
7-1) 데이터 레이크 구축

S3에 저장된 데이터를 정제하고 분석용 데이터셋을 생성할 수 있습니다.
7-2) 데이터 웨어하우스 적재

Glue를 통해 데이터를 전처리한 뒤 Redshift에 적재하여 분석 환경을 구성할 수 있습니다.
7-3) 로그 데이터 처리

애플리케이션 로그를 정제하여 분석용 데이터로 활용할 수 있습니다.
7-4) 정기적인 배치 작업

Glue Trigger를 이용하면 반복적인 ETL 작업을 자동화할 수 있습니다.
8. AWS Glue와 Apache Airflow의 차이
AWS Glue와 Airflow는 서로 경쟁하는 도구라기보다 역할이 다릅니다.

| 항목 | AWS Glue | Apache Airflow |
| 역할 | ETL 처리 | 워크플로우 관리 |
| 실행 방식 | 서버리스 | 사용자가 직접 운영 |
| 내부 엔진 | Spark 기반 | Python 기반 |
| 주요 목적 | 데이터 변환 | 작업 스케줄링 및 의존성 관리 |
| 사용 예시 | 데이터 전처리 | 여러 작업의 실행 순서 관리 |
즉, AWS Glue는 데이터를 처리하는 서비스이고, Airflow는 여러 작업을 조율하는 오케스트레이션 도구라는 차이가 있습니다.
실무에서는 Airflow가 Glue Job을 실행하도록 구성하여 함께 사용하는 경우도 많습니다.
9. 마치며
AWS Glue는 서버를 직접 관리하지 않고도 ETL 작업을 수행할 수 있도록 지원하는 AWS의 서버리스 서비스입니다.
특히 S3, Athena, Redshift와 같은 AWS 서비스와의 연동이 뛰어나 데이터 레이크나 분석 환경을 구축할 때 많이 활용됩니다. 또한 메타데이터 관리와 데이터 변환 작업을 통합적으로 제공하기 때문에 데이터 엔지니어링 환경을 보다 효율적으로 구성할 수 있다는 장점이 있습니다.
다만 AWS Glue는 단순히 데이터를 처리하는 도구라기보다는 Crawler, Data Catalog, Job, Trigger 등 여러 구성 요소가 함께 동작하는 서비스입니다. 따라서 각 구성 요소의 역할과 데이터 흐름을 이해하면 Glue를 더욱 효과적으로 활용할 수 있습니다.
'Data Engineering > AWS' 카테고리의 다른 글
| AWS EFS란? (0) | 2026.06.26 |
|---|---|
| AWS EBS란? (0) | 2026.06.26 |
| AWS S3 보안 정리 - SSE, CSE, SSL/TLS 이해하기 (0) | 2026.06.25 |
| AWS S3 Lifecycle이란? (0) | 2026.06.25 |
| Data Mesh란? (0) | 2026.06.23 |