본문 바로가기

Data Engineering6

[실날데] 실리콘밸리에서 날아온 데이터 엔지니어링 스타터 키트 - 3주차: Introduction to Airflow Airflow 소개 파이썬으로 작성된 데이터 파이프라인 프레임워크, 데이터 파이프라인 스케쥴링을 지원 정해진 시간에 ETL 실행 혹은 한 ETL의 실행이 끝나면 다음 ETL 실행 웹 UI를 제공하기도 함 데이터 파이프라인(ETL)을 쉽게 만들 수 있도록 해줌 다양한 데이터 소스와 데이터 웨어하우스를 쉽게 통합해주는 모듈 제공 (https://airflow.apache.org/docs/) 데이터 파이프라인 관리 관련 다양한 기능을 제공해줌 - 특히 Backfill Airflow에서는 데이터 파이프라인을 DAG(Directed Acyclic Graph)라고 부름 하나의 DAG는 하나 이상의 태스크로 구성됨 Operator를 사용해 Task를 정의함 ⇒ Operator가 인스턴스화가 될 경우 Task라고 함 .. 2023. 7. 30.
[실날데] 실리콘밸리에서 날아온 데이터 엔지니어링 스타터 키트 - 3주차: 데이터 파이프라인을 만들 때 고려해야 할 점 데이터 파이프라인을 만들 때 고려해야 할 점 이상과 현실 간의 괴리 이상 혹은 환상 내가 만든 데이터 파이프라인은 문제 없이 동작할 것이다 내가 만든 데이터 파이프라인을 관리하는 것은 어렵지 않을 것이다 현실 혹은 실상 데이터 파이프라인은 많은 이유로 실패함 코드 버그 데이터 소스상의 이슈 데이터 파이프라인들 간의 의존도에 이해도 부족 데이터 파이프라인의 수가 늘어나면 유지보수 비용이 기하급수적으로 늘어남 데이터 소스 간의 의존도가 생기면서 더 복잡해짐. 만일 마케팅 채널 정보가 업데이트가 안 된다면 마케팅 관련 모든 정보들이 갱신되지 않음 more tables needs to be managed (source of truth, search cost, …) Best Practice 1 가능하면 데이터가 .. 2023. 6. 22.
[실날데] 실리콘밸리에서 날아온 데이터 엔지니어링 스타터 키트 - 3주차: 데이터 파이프라인이란? 데이터 파이프라인이란? 용어 설명: ETL 데이터 프로세싱을 위해 실행하는 코드. 흔히 말하는 ETL이라고 하는 것이 곧 데이터 파이프라인임. ELT도 거시적인 관점에서는 데이터 파이프라인. ETL은 외부 데이터를 내부 데이터 시스템(데이터 웨어하우스 등)으로 가져오는 것 ELT는 내부에 있는 데이터를 재가공해서 만드는 것 데이터 레이크를 같이 쓰기도 함 ELT 프로세스를 위한 전용 기술이 있으며, dbt가 가장 유명하다 용어 설명: Data Lake vs Data Warehouse 가장 큰 차이점: 다음을 수 있는 데이터의 크기 데이터 레이크 (Data Lake) 구조화 데이터 + 비구조화 데이터 로그 데이터는 크기가 크기 때문에 웨어하우스에 로딩하기 힘들어. 그리고 구조화되지 않았기 때문에 sql로 .. 2023. 6. 18.
[실날데] 실리콘밸리에서 날아온 데이터 엔지니어링 스타터 키트 2주차 - 빅데이터 세상에도 SQL은 중요할까? SQL의 장단점 장점 빅데이터가 구조화된 데이터일 때 SQL만큼 간단하고 강력하다 SQL을 알면 프로그래밍을 할 줄 모르더라도 데이터를 조작할 수 있음 (SQL은 역사가 더 오래되었기 때문에 할 수 있는 사람이 더 많음, ex. 데이터 분석가) 빅데이터가 뜨고 하둡이 떴을 때 (~2000년대 후반까지) SQL 죽었다고 했지만 그 이후에 다시 살아남. 빅데이터 프로세싱이 너무 효율이 떨어지기 때문. Pandas 등으로 하면 번거롭고 순차적으로 느리지만 SQL은 훨씬 간단함. 데이터셀 로딩하고 조인하고 그룹하고 그 다음 카운트하고를 순차적으로 하나씩 기술해줘야 함. 개발자는 이걸 당연하다고 생각하지만, 아닌 사람들도 있고. 선언식이 아니기 때문에 끝까지 원하는 것을 알 수 있기 때문에 컴파일러가 최적화를 못.. 2023. 6. 15.