[DevCourse] 10-1 데이터 웨어하우스 소개

한상우·2024년 1월 23일
0

Data Science Devcourse

목록 보기
15/25

데이터 웨어하우스

  • 데이터 웨어하우스는 기본적으로 구조화된 데이터를 처리 할 때 유리하고, 데이터 레이크보다는 비용이 비싼편이다
  • 고정비용 : 매 달 정해진 비용을 내고 사용 ex) AWS Redshift
  • 가변비용 : 사용한 만큼 비용을 낸다 ex) BigQuery, Snowflake
  • 보통 가변비용의 경우가 확장가능성(Scalablity)이 더 좋다

데이터 레이크

  • 보존 기한이 없는 모든 데이터를 원래 형태대로 보존하는 storage에 가까움
  • 비구조화 데이터(ex. 로그 파일)와 구조화 데이터를 저장 가능
  • 보통 cloud storage를 가리키는 표현이라고 보면 된다. (ex. AWS S3)

ETL (extract transform load)

  • 데이터 레이크나 데이터 웨어하우스 밖의 데이터 소스 (ex. 로그, sales data, ...)에 있는 데이터를 읽어오는 일
  • 회사의 규모가 커지면 ETL의 수가 많아진다. 이에 따라 ETL이 fail할 가능성도 높아진다. 즉, 관리의 overhead가 늘어난다
  • Airflow의 경우가 이를 적절하게 스케줄하고 관리할 수 있게 도와주는 framework다

ELT (extract load transform)

  • dbt를 사용하여 데이터 레이크나 데이터 웨어하우스 안의 데이터의 요약(추상화)을 해주는 일
  • 데이터 레이크에서 ELT를 진행하는 경우 빅데이터 처리 framework(ex. Spark, Hadoop)이 필요함

데이터 웨어하우스의 구성 예시

데이터 플랫폼의 발전단계

  • 초기 단계 : 데이터 웨어하우스 + ETL

  • 발전 단계 : 데이터 양 증가

    • 데이터 레이크 도입
    • Spark와 같은 빅데이터 처리시스템 도입
  • 성숙 단계 : 데이터 활용 증대

    • 현업단의 데이터 활용이 가속화
    • ELT가 중요해지면서(데이터의 품질 보장) dbt등의 analytics engineering 도입
    • MLOPs 등 머신러닝 관련 효율성 증대 노력 증대

데이터 파이프라인

  • ETL, 데이터 웍플로우, DAG 모두 같은 말이다. 특히, Airflow에서 DAG라는 용어를 사용한다

    • DAG (Directed Acyclic Graph) : 방향성 비순환 그래프
  • 결국 데이터를 소스(프로덕션 DB, 로그, ...)로부터 목적지(데이터 웨어하우스, 데이터 레이크, ...)로 복사하는 작업이다.

  • 데이터 파이프라인을 크게 세 종류로 나누면 다음과 같다.

      1. ETL
      1. ELT
      1. Prouction Data Jobs : 데이터 웨어하우스로부터 데이터를 읽어 다른 Storage (대부분의 경우 프로덕션 환경)로 쓰는 ETL -> 요약 정보가 프로덕션 환경에서 성능 관련 이슈로 필요한 경우, 혹은 머신러닝 모델에서 필요한 feature들을 미리 계산해두는 경우 필요하다.
profile
개인 공부용 블로그입니다

0개의 댓글

관련 채용 정보