본문 바로가기

Data science/ML

긱뉴스 - 최신 데이터 인프라 이해하기 #4 데이터 모델링과 워크플로우 매니저

4. (continued) Ingestion and Transformation

  • Data Modeling
    • Data Warehouse와 Data Lake와 연관 있음(Source와는 연관 없음)
    • dbt
      • 데이터 분석가들을 위한 데이터 분석 툴
      • 분석가들은 data 를 transform하기가 어려웠는데, SQL만으로 데이터를  모델링해볼 수 있음
      • snapshot을 떠서 production DB에는 영향을 미치지 않고, 데이터를 마구 가공해볼 수 있음
      • Fivetran은 fivetran으로 extract한 후에 dbt로 transform할 수 있는 기능도 갖고 있음
    • LookML
      • Looker는 원래 대시보드를 만드는 도구(시각화 도구)
      • BI 도구에 더해 데이터를 transform할 수 있는 기능을 추가함
  • Workflow Manager
    • 데이터를 가져와 data warehouse로 옮길 때 workflow 단위로 옮겨줌
    • Apache Airflow
      • Apache Hadoop Job을 관리하는 workflow scheduler system 
        • task scheduling: 언제 어떤 task를 수행할 것이냐
        • distributed execution: 여러 대에 분산해서 실행
        • dependency management: 의존성(Data를 가져오는 과정에서 앞 task가 끝나지 않으면 이후 과정을 처리하지 못하는 성질)을 관리
      • DAG(directed Acyclic Graph): Airflow는 workflow를 관리하기 위해 DAG라는 파이썬 코드를 사용함. 방향을 가지면서 루프를 생성하지 않는 그래프.
    • DAGSTER
      • Airflow와 비슷 (사실 이해 못함)
    • Argo Workflow
      • Kubernetes 환경에서의 workflow manager
    • Prefect
      • Workflow를 자동화하는 엔진
      • Airflow가 가지는 기능을 다 가지고 있고, DAG의 버전 관리가 가능(이제는 Airflow도 가능)
      • Airflow보다 쓰기가 간편함 but Airflow가 커뮤니티가 더 큼

 

번외) DAGSTER 이해하기!