기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
AWS Glue ETL
AWS Glue ETL은 다양한 소스에서 데이터를 추출하고, 비즈니스 요구 사항에 맞게 이를 변환하여 선택한 대상으로 로드하는 것을 지원합니다. 이 서비스는 Apache Spark 엔진을 사용하여 워커 노드 전체에 빅 데이터 워크로드를 분산하여 인 메모리 프로세싱으로 더 빠르게 변환할 수 있도록 합니다.
AWS Glue는 Amazon Simple Storage Service(Amazon S3), Amazon DynamoDB, Amazon Relational Database Service(Amazon RDS) 등 다양한 데이터 소스를 지원합니다. 지원되는 데이터 소스에 대해 자세히 알아보려면 AWS Glue의 ETL 연결 유형 및 옵션을 참조하세요.
AWS Glue에서 작성
AWS Glue는 사용자 경험과 사용 사례에 따라 ETL 작업을 작성할 수 있는 다양한 방법을 제공합니다.
-
Python 쉘 작업은 Python으로 작성된 기본 ETL 스크립트를 실행하도록 설계되었습니다. 이러한 작업은 단일 머신에서 실행되며 중소 규모의 데이터세트에 더 적합합니다.
-
Apache Spark 작업은 Python 또는 Scala로 작성할 수 있습니다. 이러한 작업은 Spark를 사용하여 여러 워커 노드에 걸쳐 워크로드를 수평적으로 규모를 조정하므로 대규모 데이터세트와 복잡한 변환을 처리할 수 있습니다.
-
AWS Glue 스트리밍 ETL은 Apache Spark Structured Streaming 엔진을 사용하여 스트리밍 데이터를 마이크로 배치 작업으로 변환하며, 정확히 한 번
처리되는 의미론을 제공합니다. AWS Glue 스트리밍 작업은 Python 또는 Scala로 작성할 수 있습니다. -
AWS Glue Studio는 Apache Spark 프로그래밍을 처음 접하는 개발자도 Spark 기반 ETL을 쉽게 사용할 수 있는 상자와 화살표 스타일의 시각적 인터페이스입니다.
데이터 처리 단위
AWS Glue는 데이터 처리 단위(DPU)를 사용하여 ETL 작업에 할당된 컴퓨팅 리소스를 측정하고 비용을 계산합니다. 각 DPU는 vCPU 4개와 16GB 메모리와 동일합니다. 작업의 복잡성과 데이터 볼륨에 따라 DPU를 AWS Glue 작업에 할당해야 합니다. 적절한 양의 DPU를 할당하면 성능 요구 사항과 비용 제약 사이에서 균형을 맞출 수 있습니다.
AWS Glue는 다양한 워크로드에 최적화된 여러 작업자 유형을 제공합니다.
-
G.1X 또는 G.2X(대부분의 데이터 변환, 조인, 쿼리에 적합)
-
G.4X 또는 G.8X(더 까다로운 데이터 변환, 집계, 조인, 쿼리에 적합)
-
G.025X(소량 및 산발적인 데이터 스트림에 적합)
-
표준(AWS Glue 버전 1.0 이전 버전용, AWS Glue 이후 버전에는 권장되지 않음)
Python 쉘 사용
Python 쉘 작업의 경우 1DPU를 사용하여 16GB 메모리를 사용하거나 0.0625DPU를 사용하여 1GB 메모리를 사용할 수 있습니다. Python 쉘은 중소 규모의 데이터세트(최대 약 10GB)를 사용하는 기본 ETL 작업에 사용됩니다.
작업자 유형 비교
다음 표는 Apache Spark 환경을 사용하는 배치, 스트리밍 및 AWS Glue Studio ETL 워크로드에 대한 다양한 AWS Glue 작업자 유형을 보여줍니다.
G.1X |
G.2X |
G.4X |
G.8X |
G.025X |
표준 |
|
vCPU |
4 |
8 |
16 |
32 |
2 |
4 |
메모리 |
16 GB |
32GB |
64GB |
128GB |
4GB |
16 GB |
디스크 공간 |
64GB |
128GB |
256GB |
512GB |
64GB |
50GB |
작업자당 실행기 |
1 |
1 |
1 |
1 |
1 |
2 |
DPU |
1 |
2 |
4 |
8 |
0.25 |
1 |
AWS Glue 버전 2.0 이상에서는 표준 작업자 유형을 사용하지 않는 것이 좋습니다. G.025X 작업자 유형은 AWS Glue 버전 3.0 이상을 사용하는 스트리밍 작업에만 사용할 수 있습니다.