article thumbnail image
Published 2022. 5. 29. 17:48
728x90
반응형

정리하기 앞서, 이번 글에서는 AWS Glue 에 대한 자세한 내용보다는
AWS Glue 가 무엇이고 어떤 특징을 가지고 있고 언제 사용하면 좋은지에 대한 맛보기에 가깝다고 생각하면 된다.

 

AWS Glue 가 뭐지?

AWS Glue 는 간단하게 ETL 서비스라고 할 수 있는데
ETL 서비스에 대해서 이해하고 있다면 보다 쉽게 AWS Glue 에 대해 이해할 수 있고
Data Warehouse 의 개념이나 구조에 대해서도 어느 정도 이해가 있으면 좋다고 생각한다.

데이터 웨어하우스 구성도

 

AWS 에서는 다음과 같이 AWS Glue 에 대해서 정의하고 있다.

"완전 관리형 추출(Extract), 변환(Transform), 저장(Load) ETL 서비스"

추출하고 변환해서 다시 저장하는 ETL 서비스를 완전히 AWS Glue 를 통해 관리할 수 있다고 이해할 수 있다.
이러한 서비스를 통해 간단하게 데이터를 정리하고 검증하고 옮길 수 있도록 해준다.

여기서 ETL(Extract, Transform, Load) 에 대해서 이해하고 있다면 보다 쉽게 이해할 수 있다.

Extract-Tranform-Load

 

AWS Glue 는 어떤 특징을 가지고 있지?

그럼 AWS Glue 는 어떤 특징을 가지고 있는지에 대해서 정리해봤다.

  • 서버리스
  • 중앙 메타데이터 리포지토리, AWS Glue Data Catalog
  • 자동으로 Python 및 Scala 코드를 생성하는 ETL 엔진
  • 종속성 확인, 작업 모니터링 및 재시도를 관리하는 유연한 스케줄러

AWS Glue 는 서버리스로 구성되어 인프라를 관리할 필요가 없다.
AWS Glue Data Catalog 라고 하는 중앙 메타데이터 저장소라고 하는 데이터베이스를 사용한다.
이 말은 즉, 모든 데이터를 한 곳에 모아 ETL 작업을 할 수 있도록 제공한다는 것이다.

ETL 작업을 하기 위한 Python 및 Scala 스크립트를 자동으로 생성해주는 ETL 엔진이 있다.
Python 이나 Scala 언어를 통해 스크립트를 생성하고 생성한 스크립트를 통해 ETL 작업을 하게 되는데
AWS Glue 는 스크립트를 자동으로 생성할 수 있는 이후에 설명할 Built-In Transforms 라는 기능을 제공하고 있다.

또한 작업들을 Cloudwatch 를 통해 모니터링하고 트리거를 통해 실행하고 관리할 수 있는 스케줄러를 가지고 있다.

이후에 Data Catalog 에 메타데이터를 저장하는 방법과 ETL 서비스에 대해서 정리할 예정이다.

 

AWS Glue 를 언제 사용하지?

AWS 에서는 이렇게 설명하고 있다.

"데이터 웨어하우스 또는 데이터 레이크의 스토리지에 데이터를 구성, 정리, 검증 및 포맷할 수 있습니다."

ETL 서비스를 제공하는 다른 플랫폼이나 서비스들도 마찬가지로
데이터를 원하는 형태에 맞게 변환해서 사용하기 쉽게 한 곳에 데이터를 모으기 위해서 사용한다고 생각하면 된다.
AWS Glue 도 마찬가지로 반정형 데이터를 가져와 변환을 통해 원하는 형태로 데이터를 저장할 수 있다.

 

마지막으로 AWS Glue 가 무엇이고 어떤 특징을 가지고 있고 언제 사용하는지에 대해서 간단하게 정리해봤다.
AWS Glue 에 대해 보다 깊게 이해하기 위해서는

  • Data Warehouse 의 개념과 구조에 대해 이해하고 있는가
  • ETL 에 대해 얼마나 이해하고 있는가
  • 어떤 데이터를 가져와 ETL 작업을 통해 저장할 것인가

에 대한 고민이 필요하다고 생각한다.

728x90
반응형
복사했습니다!