전체 글

전체 글

    [airflow] Xcom

    airflow에서 사용되는 xcom 은 Cross Communication의 약어이다. 이는 airflow dag 내부에서 task간 데이터 공유를 위해서 사용된다. 예를들어, task1의 수행결과를 task2의 입력으로 사용하고싶을때 xcom 을 이용해 구현할 수 있다. 이 기능은 주로 작은 데이터를 공유할때 사용되며 xcom의 내용은 메타 DB의 Xcom 테이블에 값이 저장된다. task에서 xcom을 사용하게되면 airflow 에서 task를 선택했을때 'Xcom'이라는 영역이 나타난다. 이를 클릭하면 xcom 테이블에 어떤값이 key-value 형태로 저장되었는지 확인할 수 있다. xcom을 사용하는 방법으로는 크게 2가지가 있다. ① **kwargs에 존재하는 'ti' (task instance..

    [airflow] task 내 함수 선언

    보통은 라이브러리를 import 할때는 아래처럼 가장 상단에 작성하는것이 일반적이다. from airflow import DAG import pendulum from airflow.decorators import task with DAG( dag_id="dags_python_with_macro", schedule="10 0 * * *", start_date=pendulum.datetime(2023, 12, 1, tz="Asia/Seoul"), catchup=False ) as dag: 그러나 아래처럼 task decorator 안에서 라이브러리를 불러와서 사용하는 경우도 존재한다. @task(task_id='task_direct_calc') def get_datetime_calc(**kwargs): fr..

    [airflow] WSL

    Airflow는 Windos에 직접 설치가 불가능하다. 그래서 Window에 리눅스 서버를 올려서 Airflow를 설치해야하는데, 이를 위해서 WSL을 많이 이용한다. WSL은 Windows Subsystem for Linux의 약어로, 윈도우에서 리눅스 실행환경을 지원해주는 Windows의 확장 기능이다. WSL 이 있기 이전에도 Windows에서 가상머신(Virtual Machine, VM)을 이용해 Linux를 사용할 수 있었다. 가상머신은 하나의 물리적인 컴퓨터 안에 구축된 가상 컴퓨터이며, 온전한 컴퓨터 시스템(CPU/메모리/네트워크 인터페이스 및 스토리지까지 갖춘)으로 작동한다. 가상화 VM은 메모리 오버헤드가 심하다. 가상 머신은 하나의 물리적인 서버에서 독립적인 가상 환경을 운영할 수 있도..

    [서평] 21세기 통화 정책

    30년 차 이코노미스트 홍춘욱 박사님은 '경제학은 모두를 만족시키는 학문은 아니다.'라고 말한다. '경제는 거의 대부분의 경우에 누군가가 좋으면 누군가는 손해를 보게 되어있다'라는 말씀도 덧붙인다. 홍춘욱 박사님의 말씀처럼 모두가 행복할수 있는 경제 정책은 없기 때문에 중요한 것은 '경제의 균형'을 맞추는 것이다. 연방준비제도 이사회 14대 의장(2006-2014)을 지냈던 벤 버냉키는 책에서 연준이 어떻게 글로벌 금융위기에 맞서서 경제의 균형을 맞추기 위해 노력했는지 여실히 보여준다. 경제는 복잡계이며 쉽게 예측이 가능하진 않다. 이 때문에 실제로 연준은 경제의 균형을 맞추는 과정에 잘못된 판단을 내리기도 하며 이를 벤 버냉키도 인정한다. 그러나 버냉키는 각 경제 위기가 닥칠 때 최대한 빠르고 과감하게..

    [서평] 비주얼 씽킹

    가장 잘 짜인 농구 팀은 재능이 상호 보완을 이루는 선수들로 구성된 팀이며, 건강한 벌통은 가장 다양한 벌들이 공존하는 벌통이라고 한다. 한 가지 분야에만 탁월한 사람들을 모아서 팀을 이루는 것보단, 다양한 재능을 가진 사람들을 모으는 것이 건강하고 탁월한 조직이 되는 것은 분명하다. 다양한 시각과 능력들이 서로를 보완하며 여러 도전에 대하여 더 나은 해결책을 내놓을수 있기 때문이다. 농구팀에서 슛을 잘하는 사람이 있다면 패스를 잘하는 사람과 상대팀을 훌륭히 마킹할 사람도 있어야 좋은 팀이 성립된다. 실제로 한 연구에서 다양한 사람들로 구성된 팀이 비슷한 사람들로 구성된 팀보다 탁월한 성과를 낸다는 결과를 보여준다. 연구진은 두 명씩 묶은 100개 팀을 결성한 다음 가상 미로를 완성하게 했다. 각 팀은 ..

    [airflow] why airflow?

    데이터는 일반적으로 추출(Extract), 적재(Load), 그리고 가공(Transfrom)하는 과정을 거쳐 최종적으로 사용된다. 이 데이터 흐름은 항상 원활하게 이루어지지는 않은데, 각 단계에서 오류가 발생할수 있기 때문이다. 예를들어, 데이터를 추출하기 위해 필요한 API가 갑자기 작동하지 않을 수 있고, 데이터를 적재하는 snowflake에서 오류가 발생할수 있고, 그리고 DBT를 이용해 데이터를 변환하는 과정에서 실수가 있었을 수도있다. 이렇게 각각의 단계에서 이슈가 발생할수 있고, 때문에 이런 것들을 관리할 도구가 필요하다. 이를 도와주는것이 airflow이다. 위와같은 데이터흐름이 하나만 존재한다면 airflow가 필요하지 않을지도 모르지만, 데이터 파이프라인이 늘어나면 늘어날수록 airflo..

    [서평] 대한민국 돈의 역사

    달러 스위칭이라는 투자 방법이 있다. 달러 스위칭이란 자산을 달러로 가지고있다가 환율이 급등할때에 소유한 달러를 매도하여 우리나라 주식(또는 부동산)을 저가 매수한 후, 환율이 안정화되면 다시 달러에 투자를 반복하여 수익을 얻는 매매 전략이다. 이 전략은 달러 환율과 우리나라 주식의 가격이 반대로 움직인다는 전제하에 성립한다. 투자는 단순히 '펀더멘탈이 좋은 회사에 투자하는 것' 이라는 생각만 가졌던 나에게 이런투자전략은 나에게 새롭게 다가왔다. 그러나 해당전략이 성립하려면 '환율과 국내 자산이 반대로 움직인다.' 라는 전제가 사실이어야만한다. 나는 이 전략을 취하기전에 전략이 합당한지 확인해보고 싶었다. 마침 그때가 통계학과 졸업 프로젝트 시즌이었고, 나는 해당 주제로 프로젝트를 진행했다. 그리고 그 ..

    [서평] 할머니를 살린 말

    작년에 할머니께서 뇌경색으로 쓰러진 일이 있었다. 정말 운이 좋게도 그 당시에 도우미분께서 할머니댁에 방문하신 상태라 할머니는 빠르게 병원에 입원할 수 있었다. 지금 돌이켜보면 그 상황은 기적같다. 그렇게 할머니는 골든타임내에 입원하셨지만 희망을 잃으신 듯 했다. 이전에 할아버지께서도 낙상사고로 입원을 하신후에 퇴원을하지 못하셨고, 주위 어른들도 입원하신 후에 건강하게 퇴원한 경우가 거의 없었기 때문이었다. 그런 선례들은 퇴원할수 있으리라는 할머니의 기대를 꺾기에 충분했다. 매번 전화를 드릴때마다 할머니께서는 "몸이 잘 안움직인다.", "퇴원할 수 있을지 모르겠다." 같은말을 연신 내뱉으시며 깊은 한숨을 내뱉으셨다. 당시 할머니에게는 노세보 효과가 작용하고 있었을 것이다. 노세보(Nocevo)는 라틴어로..