Cloud & Platform
Azure 학습 및 실습 정리
Azure 학습 및 실습 정리 학습 내용을 정리한 백필 노트입니다.
이 글은 2025년 학습 기록을 블로그 형식으로 정리한 백필 노트입니다.
1. Azure Storage 계정
- 컨테이너 생성
- 데이터 업로드
- 계층적 네임스페이스 활성화
- 파일 공유 설정
- 테이블 엔터티 관리
- 리소스 그룹: rg-data-hsw
2. Storage 계정 생성
- 계정 이름: stgacct<이니셜>01
- 지역: Korea Central
- 성능: 표준
- 중복성: LRS (로컬 중복 스토리지)
데이터 보호 설정
- 복구(Recovery) 섹션 → 일시 삭제(Soft Delete) 모두 해제
Soft Delete: 데이터 삭제 시 실제 삭제 대신 일정 기간 동안 복구 가능 상태로 보존.
업로드 JSON 예시
- product1.json
{
"id": "1",
"productname": "Bearing Ball",
"productnumber": "BA-8327",
"quantityinstock": 1109,
"productcategory": {
"subcategory": "Parts",
"category": "Components"
}
}
- product2.json
{
"id": "2",
"productname": "Chainring Nut",
"productnumber": "CN-6137",
"color": "Silver",
"quantityinstock": 1750,
"productcategory": {
"subcategory": "Parts",
"category": "Components"
}
}
[참고 링크]
3. Explore Azure Files
- Azure Files: SMB/NFS 기반 클라우드 파일 공유 제공
- 리프트 앤 시프트(Lift & Shift) 시나리오 지원
- 파일 잠금 및 OS 기반 도구 활용 가능
설정
- 데이터 저장소 → 파일 공유 추가
- 이름: files
- 액세스 계층: 트랜잭션 최적화
- 백업: 비활성화
Windows 스크립트는 Windows Server 2012 이상에서만 작동.
4. Explore Azure Tables
- Azure Tables: 비관계형 키/값 저장소 제공
테이블 생성
- 이름: products
엔터티 예시
- PartitionKey: 1 / RowKey: 1
- Name: Widget
- Price: 2.99
- PartitionKey: 1 / RowKey: 2
- Name: Kniknak
- Price: 1.99
- Discontinued: true
PartitionKey + RowKey = 복합 기본 키
자동 생성 열: Timestamp
5. Cosmos DB 계정 생성
- 유형: Azure Cosmos DB for NoSQL
- 계정 이름: acctcosdb<이니셜>
- 지역: Korea Central
- 용량 모드: 프로비저닝된 처리량(RU)
- 무료 계층 할인 적용
데이터 예시
{
"name": "Road Helmet,45",
"id": "123456789",
"categoryID": "123456789",
"SKU": "AB-1234-56",
"description": "The product called \"Road Helmet,45\" ",
"price": 48.74
}
SQL Query 예시
SELECT *
FROM c
WHERE CONTAINS(c.name,"Helmet")
6. Azure Synapse Analytics
- 작업 영역: acct-synapse-ws-<이니셜>
- 리소스 그룹: rg-synapse-<이니셜>
- 스토리지 계정: datalake<이니셜>
- 파일 시스템: fs<이니셜>
외부 데이터 연결
- 이름: AdventureWorks Products
- URL: https://raw.githubusercontent.com/MicrosoftLearning/DP-900T00A-Azure-Data-Fundamentals/master/Azure-Synapse/products.csv
쿼리 예시
SELECT TOP 100 *
FROM OPENROWSET(
BULK 'https://datalakehsw.dfs.core.windows.net/fshsw/products.csv',
FORMAT = 'CSV',
PARSER_VERSION = '2.0',
HEADER_ROW = TRUE
) AS [result]
Apache Spark 풀
- 이름: spark
- 크기: Small (4 vCore / 32GB)
- 노드 수: 3
- 자동 크기 조정: 사용
7. IoT + Stream Analytics 리소스
- IoT Hub: iothub...
- Storage 계정: store...
- Stream Analytics 작업: stream...
IoT Hub → 수신 데이터
Storage → 결과 기록
Stream Analytics → 실시간 데이터 처리
8. Azure Synapse Analytics (Spark Streaming)
- Spark Structured Streaming + Delta Tables 활용
- JSON 기반 장치 상태 데이터 스트리밍
- 실시간 오류 카운트 집계 및 Delta Lake Time Travel 기능 지원
9. Synapse Analytics 작업 공간 (데이터 탐색기 풀 포함)
- 작업 영역: synapse-ws-<이니셜>
- 데이터 탐색기 풀: dxpool<이니셜>
- 워크로드: 컴퓨팅 최적화
- 크기: 초소형(2코어) 또는 Small(4코어)
- 추가 설정: 스트리밍 수집 활성화
[참고 링크]
- Data Explorer: https://learn.microsoft.com/ko-kr/azure/data-explorer/web-ui-query-overview
- Power BI 샘플 데이터:
10. Azure Databricks 작업 영역
- 이름: databricks-<이니셜>
- 지역: West US 2
- 가격 책정: 프리미엄(평가판 14일)
11. Azure RDB & NoSQL DB Project
- RDB 구성
- SSMS 설치 및 연결
- Azure SQL Database, MI, VM 기반 SQL
- NoSQL DB 구성
- Azure Cosmos DB (CoreSQL)
- MongoDB (MongoDB Client 연결)