DP-900: 상황별 Azure 데이터 저장소 선택 가이드

데이터 형태·워크로드·관리 책임 세 가지 질문으로 Azure 데이터 저장소를 고르는 법, Azure SQL 제품군과 오픈소스 DB, NoSQL 유형별 Cosmos DB API, 시험에서 자주 헷갈리는 서비스 쌍과 시나리오 문제를 정리합니다.

DP-900 공식 출제 범위 도메인 1에는 "일반적인 사용 사례에 맞는 Azure 데이터 저장소 식별"이라는 항목이 있습니다. 실제로 시험 문제의 상당수가 "이 상황에 가장 적합한 서비스는?" 형식이라, 이 항목은 다른 도메인 문제를 풀 때도 계속 쓰입니다. 서비스 이름을 따로 외우기보다 고르는 순서를 익혀 두면 처음 보는 시나리오도 풀 수 있습니다.

이 글은 DP-900 학습자료 시리즈의 지도 역할을 합니다. 각 서비스의 세부 기능은 관계형·비관계형·분석 편에서 다루고, 여기서는 저장소를 고르는 세 가지 질문, 서비스 지도, 시험에서 자주 헷갈리는 쌍을 한 번에 정리합니다.

---

 

저장소를 고르는 세 가지 질문

이사할 때 짐을 정리하는 모습을 떠올려 보세요. 서류는 서류함에, 옷은 옷장에, 사진과 영상은 외장 하드에 넣습니다. 가족 모두가 보는 일정표는 거실 벽에 붙이고요. 무엇을, 누가, 어떻게 쓰는지에 따라 보관 장소가 정해집니다. 데이터 저장소도 같은 순서로 고릅니다.

| 질문 | 선택지 | 고르는 결과 | |------|------|------| | 1. 데이터는 어떤 형태인가? | 정형 / 반정형 / 비정형 | 관계형 DB / NoSQL / 파일·개체 저장소 | | 2. 어떤 워크로드인가? | 트랜잭션 / 분석 | 운영 데이터베이스 / 데이터 웨어하우스·레이크 | | 3. 관리 책임과 호환성은? | IaaS / PaaS / SaaS, 기존 엔진 유지 여부 | VM / 관리형 서비스 / Fabric, 호환 API |

정형 데이터는 행과 열로 된 고정 스키마의 표, 반정형 데이터는 JSON 문서·키-값·그래프처럼 구조는 있지만 유연한 데이터, 비정형 데이터는 이미지·동영상·문서처럼 구조가 없는 파일입니다. 같은 정형 데이터라도 주문 처리처럼 작은 단위의 읽기·쓰기가 많으면 트랜잭션 저장소, 수년치 데이터를 집계하면 분석 저장소가 맞습니다.

시험 팁: 문제 속 단서 단어를 먼저 찾으세요. "JSON 문서, 전 세계 사용자" → Cosmos DB. "기존 SQL Server 기능을 그대로" → SQL Managed Instance. "운영 체제 접근" → SQL Server on Azure VM. "이미지·동영상" → Blob Storage. "여러 서버의 공유 드라이브" → Azure Files.

---

 

Azure 데이터 저장소 한눈에 보기

아래 지도는 데이터 형태를 기준으로 Azure 데이터 저장소를 네 묶음으로 나눈 것입니다. 시험 문제의 보기도 대부분 이 안에서 나옵니다.

!어떤 Azure 데이터 저장소를 고를까?

| 서비스 | 데이터 형태 | 대표 사용 사례 | 서비스 모델 | |------|------|------|------| | Azure SQL Database | 정형 | 새 클라우드 애플리케이션 | PaaS | | Azure SQL Managed Instance | 정형 | 기존 SQL Server 인스턴스 이전 | PaaS | | SQL Server on Azure VM | 정형 | OS까지 제어해야 하는 이전 | IaaS | | Azure Database for PostgreSQL·MySQL | 정형 | 오픈소스 DB 앱 이전 | PaaS | | Azure Cosmos DB | 반정형 | 전 세계 저지연 NoSQL 앱 | PaaS | | Azure Table Storage | 반정형(키-값) | 저렴한 대량 키-값 데이터 | PaaS | | Azure Blob Storage | 비정형 | 이미지·동영상·백업 | PaaS | | Azure Data Lake Storage Gen2 | 모든 형식 | 분석용 데이터 레이크 | PaaS | | Azure Files | 파일 | SMB·NFS 공유 드라이브 | PaaS | | Fabric Warehouse·Lakehouse | 분석 | 웨어하우스·레이크하우스 분석 | SaaS | | Eventhouse·Azure Data Explorer | 로그·텔레메트리 | 타임스탬프가 있는 대량 이벤트 분석 | SaaS·PaaS |

---

 

관계형 저장소: Azure SQL과 오픈소스 엔진

Azure SQL 제품군 고르는 법

Azure SQL은 SQL Server 엔진을 바탕으로 한 세 가지 서비스의 묶음입니다. 차이는 관리 책임과 기존 SQL Server와의 호환성입니다.

| 구분 | Azure SQL Database | Azure SQL Managed Instance | SQL Server on Azure VM | |------|------|------|------| | 서비스 모델 | PaaS | PaaS | IaaS | | SQL Server 호환성 | 데이터베이스 수준 핵심 기능 | SQL Server Enterprise와 거의 100% | 완전 호환 | | 관리 | 업데이트·백업 자동 | 업데이트·백업 자동 | OS·SQL Server를 직접 관리 | | 이럴 때 | 새 클라우드 앱 | 앱 변경을 최소화한 이전 | OS 접근·완전한 제어가 필요할 때 |

Azure SQL Database에는 몇 가지 배포 방식이 있습니다. 데이터베이스 하나를 쓰는 단일 데이터베이스, 사용량이 시기마다 다른 여러 데이터베이스가 리소스를 나눠 쓰는 탄력적 풀(elastic pool), 사용량에 따라 컴퓨팅을 자동 조절하는 서버리스 컴퓨팅 계층, 최대 128TB까지 지원하는 Hyperscale 서비스 계층입니다. 월말에만 바쁜 급여 DB와 월 중순에만 바쁜 보고서 DB를 한 풀에 넣으면 비용을 줄일 수 있습니다.

오픈소스 엔진

MySQL과 PostgreSQL을 쓰던 앱은 Azure Database for MySQL과 Azure Database for PostgreSQL로 큰 코드 변경 없이 옮길 수 있습니다. MySQL은 LAMP 스택 웹 앱에서 많이 쓰이고, PostgreSQL은 사용자 지정 데이터 형식과 도형 같은 기하 데이터를 다룰 수 있는 객체-관계형 데이터베이스입니다. 두 서비스 모두 자동 백업과 최대 35일(기본 7일)의 특정 시점 복원을 제공합니다.

오래된 자료에 나오는 Azure Database for MariaDB는 서비스 종료 과정에 있어 Microsoft가 MySQL로 이전할 것을 권장하고, IoT 엣지용 Azure SQL Edge는 2025년 9월 30일에 서비스가 종료되었습니다. 현재 학습 모듈에는 두 서비스가 나오지 않습니다.

시험 팁: "기존 온프레미스 SQL Server 인스턴스를 최소한의 변경으로, 하지만 VM 관리 없이" → SQL Managed Instance. "LAMP 스택 앱" → Azure Database for MySQL. "사용량이 들쑥날쑥한 여러 데이터베이스의 비용 절감" → 탄력적 풀.

---

 

비관계형 저장소: Azure Storage와 Cosmos DB

비관계형 데이터베이스는 흔히 네 가지 유형으로 나눕니다. 각 유형이 Azure의 어떤 서비스·API와 연결되는지 표로 보면 문제의 보기를 빨리 줄일 수 있습니다.

| 데이터 모델 | 특징 | Azure 선택지 | |------|------|------| | 키-값 | 고유 키 하나에 값 하나 | Azure Table Storage, Cosmos DB for Table | | 문서 | 값이 JSON 문서인 키-값 | Cosmos DB for NoSQL, Cosmos DB for MongoDB | | 열 패밀리 | 열을 논리적 그룹으로 묶은 표 | Cosmos DB for Apache Cassandra | | 그래프 | 노드와 관계(엣지) | Cosmos DB for Apache Gremlin | | 파일·개체 | 형식이 자유로운 파일 | Blob Storage, Azure Files, Data Lake Storage Gen2 |

Table Storage와 Cosmos DB for Table은 같은 프로그래밍 모델을 쓰므로 코드를 거의 바꾸지 않고 옮길 수 있습니다. Cosmos DB for Table을 고르면 전 세계 분산, 모든 속성의 자동 인덱싱, 더 높은 성능과 가용성을 얻습니다. 단순하고 저렴한 키-값 저장이면 Table Storage로 충분합니다.

시험 팁: "소셜 네트워크의 친구 관계처럼 연결을 따라가며 조회" → 그래프(Gremlin). "기존 Cassandra 워크로드를 관리형 서비스로" → Cosmos DB for Apache Cassandra.

---

 

분석용 저장소

분석 저장소는 트랜잭션 시스템에서 데이터를 옮겨 와 대량으로 집계하는 곳입니다. 현재 출제 범위에 이름이 나오는 플랫폼은 Microsoft Fabric과 Azure Databricks입니다.

| 저장소 | 이럴 때 | |------|------| | Fabric Warehouse | 정형 데이터를 T-SQL로 분석, 동시 사용자가 많은 보고 | | Fabric Lakehouse | 반정형·혼합 데이터, Spark와 노트북, 머신러닝 | | Azure Databricks | 코드 중심 Spark 작업, 여러 클라우드에서 같은 플랫폼 | | Eventhouse · Azure Data Explorer | 타임스탬프가 있는 로그·텔레메트리를 KQL로 빠르게 쿼리 |

분석 저장소 안에서 데이터를 팩트와 차원으로 정리하는 방법은 스타 스키마와 분석 데이터 모델에서 이어집니다.

---

 

시험에서 자주 헷갈리는 쌍

보기 두 개가 모두 그럴듯해 보일 때는 아래 단서로 가르세요.

| 비교 | 앞쪽을 고르는 단서 | 뒤쪽을 고르는 단서 | |------|------|------| | Blob Storage vs Data Lake Storage Gen2 | 이미지·백업 같은 개체 저장 | 폴더 계층·파일 단위 권한이 필요한 분석용 레이크 | | Blob Storage vs Azure Files | 앱이 HTTP로 읽고 쓰는 개체 | 여러 서버가 드라이브로 마운트하는 SMB·NFS 공유 | | Table Storage vs Cosmos DB for Table | 저렴하고 단순한 키-값 | 전 세계 분산, 자동 인덱싱, 더 높은 성능 | | SQL Database vs SQL Managed Instance | 새 클라우드 앱 | 기존 SQL Server 인스턴스 기능을 거의 그대로 | | SQL Managed Instance vs SQL Server on VM | OS 관리 없이 높은 호환성 | OS 접근과 완전한 제어 | | Cosmos DB for NoSQL vs for MongoDB | 새 앱의 기본 API | 기존 MongoDB 드라이버와 코드 재사용 | | Fabric Lakehouse vs Fabric Warehouse | 반정형 데이터, Spark, 노트북 | 정형 데이터, T-SQL, 많은 동시 사용자 | | Azure SQL Database vs Azure Data Explorer | 주문·결제 같은 트랜잭션 레코드 | 로그·텔레메트리 같은 대량 시계열 분석 |

---

 

시나리오로 연습하기

먼저 답을 떠올린 뒤 오른쪽 열을 확인해 보세요.

| 문제 상황 | 정답 | 판단 근거 | |------|------|------| | 상품 이미지와 동영상 수백만 개를 저렴하게 저장한다 | Azure Blob Storage | 비정형 개체 | | 전 세계 게임 사용자의 프로필(JSON)을 수 밀리초 안에 읽고 쓴다 | Azure Cosmos DB | 전 세계 분산 문서 DB | | SQL Server Agent 작업을 쓰는 온프레미스 인스턴스를 거의 그대로 옮긴다 | Azure SQL Managed Instance | 인스턴스 수준 호환성 | | 데이터베이스와 함께 설치된 사용자 지정 OS 에이전트까지 유지해야 한다 | SQL Server on Azure VM | OS 접근 필요 | | 사무실 파일 서버를 클라우드로 옮겨 여러 PC가 드라이브로 연결한다 | Azure Files | SMB 파일 공유 | | 센서 ID와 시간을 키로 하는 단순한 대량 데이터를 가장 저렴하게 저장한다 | Azure Table Storage | 키-값, 저비용 | | 원시 CSV·JSON을 폴더 구조로 모아 Spark로 분석한다 | Data Lake Storage Gen2 | 계층 구조 네임스페이스 | | 리눅스 기반 PHP 웹 앱의 MySQL을 관리형으로 옮긴다 | Azure Database for MySQL | LAMP 스택 |

---

 

시험 핵심 정리

시험장 가기 전 마지막으로 확인할 핵심 포인트입니다.

| 구분 | 핵심 암기 사항 | |------|------| | 고르는 순서 | 데이터 형태 → 워크로드 → 관리 책임·호환성 | | Azure SQL Database | 새 클라우드 앱, PaaS, 단일 DB·탄력적 풀·서버리스·Hyperscale | | SQL Managed Instance | SQL Server와 거의 100% 호환, 앱 변경 최소화 이전 | | SQL Server on Azure VM | IaaS, OS까지 완전한 제어 | | PostgreSQL · MySQL | 오픈소스 앱 이전, MySQL은 LAMP, PostgreSQL은 객체-관계형 | | MariaDB · SQL Edge | MariaDB는 종료 과정(MySQL로 이전), SQL Edge는 2025-09-30 종료 | | Cosmos DB | 전 세계 분산 NoSQL, API 5종(NoSQL·MongoDB·Cassandra·Gremlin·Table) | | Table Storage | 저렴하고 단순한 키-값 저장소 | | Blob vs Data Lake Gen2 | 개체 저장 vs 계층 구조 네임스페이스를 켠 분석용 레이크 | | Azure Files | SMB·NFS 공유 드라이브 | | Fabric Warehouse vs Lakehouse | 정형·T-SQL vs 반정형·Spark | | Eventhouse · Data Explorer | 타임스탬프가 있는 로그·텔레메트리 분석, KQL |

---

 

다음 단계

저장소 지도를 머릿속에 넣었다면, 각 묶음의 세부 기능으로 들어가세요. 관계형은 관계형 데이터 기본 개념, Blob·Files·Table·Data Lake의 세부 규칙은 Azure Storage 심화, 파티션·RU·일관성은 Azure Cosmos DB 심화에서 다룹니다.

실전 감각을 익히고 싶다면 DP-900 모의고사로 서비스 선택 문제를 직접 풀어 보세요. 단서 단어를 찾아 보기를 줄이는 연습을 몇 번 하면, 처음 보는 시나리오도 금방 답이 보입니다.

블로그 목록으로 돌아가기