본문 바로가기

Stack/AWS

[AWS DEA] 문제로 공부하기 10 - Lake Formation

반응형
AWS DEA-C01 메타데이터 세분화 권한 제어 | Lake Formation vs Glue Catalog 완전 정리

중앙 메타데이터 + 셀 수준 권한 제어 — AWS Lake Formation이 정답인 이유

AWS DEA-C01 시험에 자주 나오는 메타데이터 권한 제어 문제입니다. 데이터베이스 · 테이블 · 열 · 행 · 셀 5단계 세분화 권한을 최소 운영 오버헤드로 지원하는 서비스는 AWS Lake Formation 데이터 필터뿐입니다. Glue Data Catalog가 테이블 수준까지만 제어하는 이유, Aurora Hive Metastore와 EMR Hive의 한계를 함께 정리합니다.

📋 문제

AWS에 중앙 집중식 메타데이터 스토리지 솔루션을 배포해야 하는 데이터 엔지니어가 있다. 솔루션은 안정적이고 확장 가능해야 하며, 데이터베이스, 테이블, 열, 행 및 셀 수준에서 세분화된 권한을 제어할 수 있어야 한다.

다음 중 최소한의 운영 오버헤드로 이러한 요구 사항을 충족하는 솔루션은 무엇인가?

✅ 핵심 요구사항 분석

  • 🗂️
    중앙 집중식 메타데이터 스토리지
    데이터베이스/테이블/스키마 정보를 한 곳에서 관리하는 데이터 카탈로그
  • 📐
    안정적 + 확장 가능 (서버리스 선호)
    EMR 클러스터처럼 직접 관리하는 인프라 없이 AWS 완전관리형 서비스
  • 🔐
    5단계 세분화 권한 (핵심 조건)
    데이터베이스 → 테이블 → 열(Column)행(Row)셀(Cell) 수준까지 제어 — 이것이 핵심 구분 포인트
  • ⚙️
    최소 운영 오버헤드
    Hive 애플리케이션 배포, EC2 관리 등의 수동 운영 작업이 없어야 함

🏗️ AWS Lake Formation 권한 제어 계층

Lake Formation 데이터 필터는 아래 5단계 계층을 모두 지원합니다. 좁아질수록 더 세밀한 제어입니다.

🏢 데이터베이스 (Database) 수준 전체 DB 접근 권한
📋 테이블 (Table) 수준 특정 테이블 접근
📊 열 (Column) 수준 특정 컬럼만 노출
📌 행 (Row) 수준 WHERE 조건으로 행 필터
🔬 셀 (Cell) 수준 행 + 열 조합 마스킹
💡 셀 수준 보안은 특정 열 값이 특정 조건일 때만 해당 행의 특정 열을 마스킹합니다. 예: 특정 부서 직원만 급여 컬럼을 볼 수 있도록 제한.

📊 솔루션별 최대 권한 제어 수준

Lake Formation ⭐
DB · 테이블 · 열 · 행 · 셀 (5단계)
Glue Catalog
DB · 테이블 수준만
Aurora Hive
SQL GRANT (운영 복잡)
EMR Hive
HiveQL 제한적

🔍 4가지 솔루션 특징 비교

🏞️
AWS Lake Formation ⭐
메타데이터 ✅ 중앙 카탈로그
권한 제어 ✅ 5단계 전부
데이터 필터 ✅ 행·열·셀 지원
운영 오버헤드 ✅ 최소 (관리형)
인프라 관리 ✅ 서버리스
✅ 모든 요건 충족 — 정답
🗂️
AWS Glue Data Catalog
메타데이터 ✅ 중앙 카탈로그
DB·테이블 권한 ✅ 리소스 정책
열 수준 권한 ❌ 미지원
행·셀 수준 ❌ 미지원
운영 오버헤드 ✅ 낮음
⚠️ 테이블 수준까지만 — 세분화 불가
🐦
Aurora Hive Metastore
메타데이터 ⚠️ Hive 메타스토어
권한 방식 SQL GRANT
Hive 배포 ❌ EMR/EC2 필요
운영 오버헤드 ❌ 높음
관리형 여부 ❌ 직접 관리
❌ 운영 오버헤드 높음 — Hive 별도 배포 필요
🐝
Amazon EMR + Hive
메타데이터 ⚠️ Hive 메타스토어
HiveQL DDL 권한 ❌ 미지원
EMR 클러스터 ❌ 직접 관리
운영 오버헤드 ❌ 매우 높음
확장성 ⚠️ 수동 스케일링
❌ HiveQL로 권한 제어 불가 + 높은 오버헤드
⚠️ 핵심 함정: Glue Data Catalog는 Lake Formation의 메타스토어로 사용되며 안정적이고 확장 가능합니다. 그러나 열·행·셀 수준의 세분화 권한 제어는 Lake Formation 데이터 필터를 통해서만 가능합니다. "Glue Catalog + Lake Formation"이 사실상 정답 아키텍처입니다.

📝 선택지 해설

각 항목을 클릭하면 해설이 펼쳐집니다.

💡 AWS Glue Data Catalog는 중앙 집중식 메타데이터 저장소로 훌륭하게 작동합니다. 리소스 수준 정책으로 데이터베이스와 테이블에 대한 접근 제어도 가능합니다. 그러나 열(Column), 행(Row), 셀(Cell) 수준의 세분화된 권한 제어는 지원하지 않습니다. 이 수준의 제어를 하려면 Lake Formation 데이터 필터를 사용해야 합니다. 실제로 Lake Formation은 Glue Data Catalog를 내부 메타스토어로 활용하면서 권한 계층을 추가로 제공하는 구조입니다.
💡 Aurora를 Hive 메타스토어의 백엔드 스토리지로 사용하는 것은 기술적으로 가능합니다. 그러나 이 솔루션이 작동하려면 Hive 애플리케이션 자체를 Amazon EMR 클러스터나 독립형 EC2 Linux 인스턴스에 직접 배포·관리해야 합니다. "최소 운영 오버헤드" 조건에 정면으로 어긋납니다. 또한 Aurora 자체의 SQL GRANT는 RDS 내부 권한 관리이며, 데이터 레이크의 분산 데이터에 대한 세분화 권한 제어 메커니즘이 아닙니다.
💡 정답. AWS Lake Formation은 데이터 레이크와 메타데이터 카탈로그를 통합 관리하는 완전관리형 서비스입니다. 데이터 필터(Data Filter)를 통해 데이터베이스 → 테이블 → 열 → 행 → 셀 수준까지 5단계 세분화 권한을 지원합니다. 인프라를 직접 관리할 필요 없이 서버리스로 작동하여 운영 오버헤드가 최소화됩니다. 내부적으로 Glue Data Catalog를 메타스토어로 활용하므로 안정적이고 확장 가능합니다. IAM과 통합되어 사용자/역할별 세분화 권한도 일관되게 관리할 수 있습니다.
💡 두 가지 이유로 탈락합니다. 첫째, HiveQL 데이터 정의 언어(DDL) 구문(CREATE TABLE, DROP TABLE 등)으로는 Hive 메타스토어에 대한 사용자 액세스를 제어할 수 없습니다. HiveQL DDL은 스키마 정의용이지 권한 관리 도구가 아닙니다. 둘째, EMR 클러스터를 직접 배포하고 관리해야 하므로 운영 오버헤드가 매우 높습니다. 클러스터 유지보수, 스케일링, 패치 등을 모두 수동으로 처리해야 합니다.

정답: C — AWS Lake Formation + 데이터 필터

이 문제의 핵심 구분 포인트는 열·행·셀 수준 세분화 권한입니다. Glue Data Catalog는 테이블 수준까지만 제어 가능하며, 나머지 세 선택지는 운영 오버헤드가 높거나 기술적 한계가 있습니다. 오직 Lake Formation 데이터 필터만이 5단계 권한을 완전관리형으로 지원합니다.

# 권한 제어 수준 비교 서비스 DB 테이블 열 행 셀 운영 오버헤드 ───────────────────────────────────────────────────────────── Lake Formation ⭐ ✅ ✅ ✅ ✅ ✅ 낮음 (서버리스) Glue Catalog ✅ ✅ ❌ ❌ ❌ 낮음 Aurora Hive Metastore △ △ △ △ △ 높음 (EMR/EC2 필요) EMR + Hive △ △ ❌ ❌ ❌ 매우 높음 # Lake Formation 데이터 필터 활용 예시 - 열 수준: 급여 컬럼을 HR 팀에만 노출 - 행 수준: 각 지역 팀에 자신의 지역 데이터만 접근 - 셀 수준: 특정 등급 이상 직원에게만 민감 데이터 표시

📊 선택지 비교 요약

선택지 서비스 열·행·셀 권한 운영 오버헤드 확장성 결론
A Glue Catalog ❌ 테이블까지만 낮음 높음 탈락
B Aurora Hive SQL GRANT 제한 높음 (Hive 배포) 보통 탈락
C ⭐ Lake Formation ✅ 5단계 전부 최소 (서버리스) 높음 정답
D EMR + Hive ❌ HiveQL DDL 불가 매우 높음 수동 스케일 탈락
#AWS_DEA-C01 #AWSLakeFormation #LakeFormation데이터필터 #GlueDataCatalog #세분화권한제어 #열수준보안 #행수준보안 #셀수준보안 #HiveMetastore #AmazonEMR #데이터레이크 #메타데이터카탈로그 #AWS자격증 #AWS데이터엔지니어
반응형