본문 바로가기

Data Engineering24

Airflow에서 custom timetable로 자유롭게 스케쥴 설정하기 💡 Airflow version 2.4 이상부터 schedule parameter가 제공된다. Airflow 스케쥴 설정에 주로 사용하는 cron-based 스케쥴로는 한계가 존재하는데, 예를 들어 아래와 같은 상황이 있다.요일마다 다른 시간에 실행하도록 하기 (e.g. 월요일 4PM, 수요일 2PM)daily 자정 스케쥴이지만 주말은 제외 - 크론표현식으로 스케쥴은 가능하지만 월요일 Dag run에서는 월요일 데이터가 아닌 토/일/월 데이터가 수집됨뷸규칙적인 간격으로 여러번 실행위와 같은 특수한 케이스들을 다루기 위해서는 timetable을 이용하면 된다.TimetablesTimetables 기능은 크론표현식과 timedelta 형태의 스케쥴의 한계를 극복하기위해 Airflow 2.2에 도입되었다.모.. 2024. 7. 28.
견고한 데이터 엔지니어링 - 원천 시스템에서의 데이터 생성 아래 내용은 견고한 데이터 엔지니어링(조 라이스, 맷 하우슬리 지음)의 5장의 내용을 정리한 것이다.5.1 데이터 원천: 데이터는 어떻게 생성될까?여러가지 방법 중 두가지 주요한 방법을 소개한다.아날로그 데이터: 실제 세계에서 생성되는 데이터로, 일시적으로 생성되는 경우가 많다.디지털 데이터: 아날로그 데이터를 디지털 형식으로 변환 하거나, 디지털 시스템의 산물이다.5.2 원천시스템: 주요 아이디어원천시스템을 사용 할때 접하게 되는 주요 아이디어들을 설명한다.5.2.1 파일과 비정형 데이터파일은 바이트 시퀀스로서, 디스크에 저장된다. 파일은 보편적으로 데이터 교환에 사용되는 매개체이므로, 데이터 엔지니어들은 여러가지 파일 형식의 파일을 정형/비정형 데이터 소스로서 접하게 된다.5.2.2 APIAPI(어플.. 2024. 5. 26.
견고한 데이터 엔지니어링 - 우수한 데이터 아키텍처의 원칙 아래 내용은 견고한 데이터 엔지니어링(조 라이스, 맷 하우슬리 지음)의 3.2장의 내용을 정리한 것이다.3.2 우수한 데이터 아키텍처의 원칙AWS의 Well-Architected 프레임 워크와 구글클라우드 네이티브 아키텍처를 위한 원칙에서 영감을 얻어 데이터 엔지니어링 아키텍처 원칙을 정의하고 한개씩 살펴본다.AWS의 Well-Architected 프레임 워크 6개 요소운영 우수성보안신뢰성성능 효율성비용 최적화지속가능성구글 클라우드 네이티브 아키텍처를 위한 5대 원칙자동화를 위한 설계하기상태를 스마트하게 관리하기관리형 서비스를 선호하기심층 방어 연습하기항상 아키텍처를 설계하기3.2.1 원칙 1: 공통 컴포넌트를 현명하게 선택하라공통 컴포넌트를 통해 팀협업을 촉진하고 사일로를 허문다.강력한 권한과 보안을 .. 2024. 5. 12.
견고한 데이터 엔지니어링 - 데이터 엔지니어링이란? 아래 내용은 견고한 데이터 엔지니어링(조 라이스, 맷 하우슬리 지음)의 1.1장의 내용을 정리한 것이다.1.1 데이터 엔지니어링이란?데이터 엔지니어링은 2010년대 데이터사이언스의 부상과 함께 급격히 주목받기 시작했다. 데이터엔지니어링의 정의는 매우 여러가지가 있어서, ‘데이터 엔지니어링이란?’ 에 대한 답변도 매우 다양하다.1.1.1 데이터 엔지니어링 정의이 책에서는 데이터 엔지니어링과 데이터 엔지니어를 아래와 같이 정의 한다. 데이터 엔지니어링 데이터 엔지니어링은 Raw데이터를 가져와 분석 및 머신러닝과 같은 다운스트림 사용 사례를 지원하는, 고품질의 일관된 정보를 생성하는 시스템과 프로세스의 개발, 구현 및 유지 관리이다. 데이터 엔지니어링은 보안, 데이터관리, 데이터 운영, 데이터 아키텍처, 오케.. 2024. 4. 20.