2026.04.16(Thu)

오유찬·2026년 4월 24일

DE

목록 보기
10/16

현대 데이터 아키텍쳐

Data Mesh & Data Febric

항목데이터 매쉬데이터 패브릭
관점조직/도메인, 운영 모델 중심기술/플랫폼, 통합 레이어 중심
주요 목표도메인 팀 자율성, 데이터 제품화, 중앙 병목 제거이질적인 소스의 통합·일관된 거버넌스·단일 접근 계층
데이터 소유권도메인 팀이 소유·운영(분산)중앙 플랫폼/데이터팀이 관리(상대적 중앙집중)
기술 초점도메인별 파이프라인, 데이터 제품, 셀프서비스 플랫폼메타데이터, 카탈로그, 통합·오케스트레이션, 자동화
지연/워크로드Batch+Streaming 모두, 도메인별로 선택 (예: Netflix Data Mesh는 실시간 스트리밍 기반)Batch/Streaming 모두 지원하지만, “한 레이어에서 접근”에 초점
확장성조직이 커질수록 도메인 단위로 자연스럽게 확장 가능하나, 거버넌스 복잡도 증가기술적으로 수평 확장이 용이하지만, 중앙 레이어가 병목/복잡해질 수 있음
관계“어떻게 조직을 나눠 데이터 제품을 운영할까?”에 답하는 모델“어떻게 여러 시스템을 기술적으로 연결·관리할까?”에 답하는 모델

데이터 처리

  • 탐색
  • 데이터 품질 : 점검 및 변환
  • 분석
  • 집계
  • 변환

배치 처리

  • 배치 & 스트리밍
  • 고정된 시간 처리

스트리밍 처리 (고정 시간 윈도우 & 슬라이딩 시간 윈도우)

  • 윈도우 : 연속적인 데이터 스트림을 시간 또는 크기 기준으로 나눈 파티션으로, 계산과 집계를 수행하기 위해 사용된다.

비용 모델

  • pay-as-you-go : 쓴 만큼 내라
    - 네트워크 트래픽
    - 저장한 바이트 수
    - 보관 기간
    - 데이터 작업
    - 이동
  • 예약 용량 : 구독료

비용 최적화

  • 서비스 품질 유지하면서 비용 절감

NoSQL

표 형식 NoSQL 데이터 저장소

SELECT
	title,
	price
FROM books
WHERE pirce <50.00;

열 기반 데이터베이스에서 쿼리 처리 과정
1. price 열에 가서 조건절에 맞게 필터링
2. 반환되는 행에서 title 컬럼 값들을 뽑아서 필터링 결과로 반환
3. title, price 컬럼만 처리하여 반환

non-table NoSQL

문서형 데이터베이스 : 키-값, 키-배열, 키-객체 쌍으로 구성된 유연한 반정형 형식에 데이터를 저장

snowflake -micro partition :

  • 각 마이크로 파티션에는 50~500 MB 사이의 압축되지 않은 데이터가 포함
    - 데이터 항상 압축되어 저장되기에 실제로는 더 작다
  • 테이블의 행 그룹은 열 방식으로 구성된 개별 마이크로 파티션에 매핑된다.
  • → 초대형 테이블의 매우 세분화된 정리 가능하도록 한다

이점

  • 기존의 정적 파티셔닝과 달리 Snowflake 마이크로 파티션은 자동으로 파생됩니다. 명시적으로 사전에 정의하거나 사용자가 유지 관리할 필요가 없습니다.
  • 이름에서 알 수 있듯이 마이크로 파티션은 크기가 작기 때문에(압축 전 50~500 MB), 매우 효율적인 DML 및 더 빠른 쿼리를 위한 세분화된 정리가 가능합니다.
  • 마이크로 파티션은 값 범위에서 겹칠 수 있으며 균일하게 작은 크기와 결합되어 왜곡을 방지하는 데 도움이 됩니다.
  • 열은 종종 열 저장소 라고 하는 마이크로 파티션 내에 독립적으로 저장됩니다. 이를 통해 개별 열을 효율적으로 스캔할 수 있습니다. 쿼리에서 참조하는 열만 스캔됩니다.
  • 열은 또한 마이크로 파티션 내에서 개별적으로 압축됩니다. Snowflake는 각 마이크로 파티션의 열에 대해 가장 효율적인 압축 알고리즘을 자동으로 결정합니다.

나중에 다시 보자. 아직은 제대로 이해가 안 간다.

테이블에 저장된 데이터는 자연 차원(날짜, 지리)에 따라 정렬된다. → 쿼리 성능에 큰 영향
snowflake에서는 데이터가 테이블에 삽입되면서 클러스터링 메타데이터가 수집되고 프로세스 중에 생성된 각 마이크로 파티션에 대해 기록된다. 그 다음, 이 클러스터링 정보를 활용하여 쿼리 중 마이크로 파티션의 불필요한 스캔을 방지하고 이러한 열을 참조하는 쿼리의 성능을 크게 가속화한다.

데이터 클러스터링

  • 유사한 데이터 포인트를 함께 구성/그룹화
  • 데이터 적재 시 자동 수행

query pruning : 조건에 맞는 데이터가 없을 것 같은 파티션•파일•컬럼•마이크로 파티션은 아예 읽지 않는 최적화 기법

profile
열심히 하면 재밌다

0개의 댓글