RyanNerd
라덕'Story
RyanNerd
  • 분류 전체보기 (117)
    • Study Note (80)
      • Python (3)
      • R (1)
      • Airflow (7)
      • 통계 (26)
      • Machine Learning (16)
      • Streamlit (9)
      • Django (1)
      • Deep Learning (12)
      • dbt (2)
      • SQL (3)
    • 빅데이터분석기사 (1)
      • 필기 (1)
    • Programmers (28)
      • Python (13)
      • SQL (15)
    • Project (3)
      • Django (3)
    • Mac (2)

블로그 메뉴

  • NaverBlog
  • 홈

최근 글

전체 방문자
오늘
어제
hELLO · Designed By 정상우.
RyanNerd

라덕'Story

Study Note/dbt

호수와 창고: 의료 데이터는 어디에 저장될까?

2026. 1. 8. 13:49

안녕하세요! 오늘은 데이터 저장소의 두 거물, Data Lake와 Data Warehouse의 차이를 알아보겠습니다. 병원 데이터를 다루다 보면, "이 영상 데이터는 어디서 가져와요?" 혹은 "지난달 환자 통계는 어디 있어요?"라는 질문을 하게 되는데요. 그 답이 바로 여기에 있습니다.

 

1. Data Lake : 날 것 그대로의 저장소 

위 그림의 왼쪽(파란색)을 봐주세요.

  • 정의: 데이터를 원래의 형태(Raw format) 그대로 저장하는 중앙 저장소입니다.
  • 특징 (Schema-on-Read): 데이터를 저장할 때는 규칙이 없습니다. 나중에 읽을 때(Read) 스키마를 정의합니다.
  • 의료 현장 예시:
    • 비정형 데이터: MRI, X-ray 이미지, 내시경 비디오.
    • 반정형 데이터: 환자 바이탈 사인(ECG) 로그 JSON 파일.
  • 주요 사용자: 데이터 과학자(Data Scientist), 머신러닝 엔지니어. (딥러닝 모델 학습용 데이터를 여기서 꺼내갑니다.)

2. Data Warehouse (데이터 웨어하우스): 잘 정리된 약국

위 그림의 오른쪽(주황색)입니다.

  • 정의: 분석과 리포팅을 위해 가공되고(Cleaned), 구조화된(Structured) 데이터를 저장하는 곳입니다.
  • 특징 (Schema-on-Write): 데이터를 저장할 때(Load) 미리 정의된 스키마(규칙)에 맞춰야 합니다. SQL 쿼리 속도가 매우 빠릅니다.
  • 의료 현장 예시:
    • 원무팀에서 보는 월별 매출 보고서.
    • 심사팀에서 보는 환자별 진단 코드(ICD-10) 목록.
  • 주요 사용자: 데이터 분석가(Data Analyst), 비즈니스 사용자. (우리가 대시보드 만들 때 주로 접속하는 곳입니다.)

 

3. 현업의 핵심 구조: Fact Table vs Dimension Table

데이터 웨어하우스 내부는 보통 스타 스키마(Star Schema)라는 형태로 정리되어 있습니다. (위 그림의 오른쪽 차트를 참고하세요!)

① Fact Table  

  • 정의: 비즈니스 프로세스에서 발생한 '측정 가능한 숫자(Metrics)'를 담고 있습니다.
  • 특징: 데이터 양이 엄청나게 많습니다(Millions row).
  • 의료 예시:
    • Fact_Admissions (입원 사실): 입원 기간(일수), 진료비(원), 처방 횟수(건).
    • "환자 A가 2026-01-08에 입원해서 100만 원을 냈다."라는 사건을 기록합니다.

② Dimension Table (차원 테이블) 

  • 정의: Fact 데이터를 설명해 주는 '문맥(Context)'이나 '속성(Attributes)'**을 담고 있습니다.
  • 특징: Fact 테이블보다 크기가 작고, 필터링(WHERE 절)이나 그룹핑(GROUP BY)에 사용됩니다.
  • 의료 예시:
    • Dim_Patient (환자 정보): 이름, 나이, 성별, 주소.
    • Dim_Date (날짜 정보): 연, 월, 일, 요일, 공휴일 여부.

요약

  • 딥러닝(이미지/영상)을 한다면? -> Data Lake에서 데이터를 가져옵니다.
  • 병원 경영 지표(KPI)를 뽑는다면? -> Data Warehouse에서 SQL을 날립니다.
  • 쿼리를 짤 때는 Fact Table(숫자)을 중심에 두고, Dimension Table(누가, 언제, 어디서)을 조인(Join)해서 분석합니다.

'Study Note > dbt' 카테고리의 다른 글

[dbt 입문] 한 방에 이해하기: 왜 모두가 dbt를 쓰는가?  (0) 2026.01.07
    'Study Note/dbt' 카테고리의 다른 글
    • [dbt 입문] 한 방에 이해하기: 왜 모두가 dbt를 쓰는가?
    RyanNerd
    RyanNerd
    라이언 덕후의 일상 스토리~

    티스토리툴바