묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결Airflow 마스터 클래스
plugins 폴더 관련
이 부분 진행할 때 airflow 폴더에 plugins가 있던데 수업에서 만들었던적이 있을까요..? 듣고있는데 제 폴더에는 plugins가 없어서용! 따로 만들어야 하는건지 제가 놓친건지 궁금합니다
-
미해결Airflow 마스터 클래스
bash operator 관련 문의입니다
airflow에서 example_complex에 dag 코드가 이렇게 적혀있던데수업꺼랑 좀 코드 차이가 있어서요!스케쥴이나 import하는거나 변경을 어떻게해야할지 몰라서 문의드립니다
-
미해결Airflow 마스터 클래스
스케쥴러 - DAG 파싱 부하 줄이는 과정 질문
안녕하세요 김현진 선생님강의 잘 듣고 있습니다. 아래의 퀴즈를 풀다가 궁금한 점이 생겨서 질문을 남깁니다. 스케줄러의 DAG 파일 파싱 부하를 줄이기 위해 권장되는 코드 작성 방법은 무엇일까요? --> 라이브러리 import 문을 Python callable 함수 내부로 옮긴다. 위 설명을 이해하기 위해서 상황을 가정해보았는데요,python callable 함수 외부에 선언된 API 호출문이 있는 경우를 피해야하고, 만약 그렇게 되면스케쥴러가 DAG을 파싱할 때마다 실행되는 상황이 되는 것이 맞을까요?
-
미해결Airflow 마스터 클래스
Dags refresh 주기 관련 질문
강사님, 안녕하세요! DAG 파일을 추가하거나 수정할 때, Airflow UI에 변경 사항이 자동으로 반영되기까지 보통 1~5분 정도 소요되고 있습니다. 너무 오래 걸리는 경우에는 컨테이너를 재시작해 반영하고 있는데요. 혹시 Dags의 auto-refresh 주기를 단축시킬 수 있는 설정이나, UI 상에서 수동으로 바로 새로고침할 수 있는 방법이 있을까요? 현재 'apache/airflow:3.1.0' 이미지를 사용 중입니다.
-
미해결실리콘밸리 데이터 리더가 알려주는 Airflow 기초
SWAP 문법 활용 이유
안녕하세요 한기용 지식공유자님. 좋은 강의 잘 듣고 있습니다.ELT를 구현할 때 SWAP 명령어를 사용한 정확한 이유가 궁금합니다.제가 찾아본 바로는 SWAP 명령어는 포인터 교체 방식으로 '즉시' 데이터와 메타데이터가 교체되므로, 무중단 배포가 가능하다는 것이 장점인 것 같습니다.사실, 트랜잭션을 활용해도 같은 기능을 구현할 수 있을 것 같은데메타데이터 복제를 빠뜨리는 것을 예방하고, 트랜잭션을 활용하였을 때보다 성능이 우수하고, lock을 예방하기 때문에 SWAP 문법을 활용하는 걸까요?
-
해결됨토스 시니어 개발자와 함께하는 Data Workflow Management 기반의 대용량 데이터 처리 설계 패턴 [ By. 비전공자 & Toss 개발자 ]
실습환경에 대해 질문이 있습니다!
안녕하세요섹션6의 강의를 듣다가 질문드릴게 있어 글을 작성하게되었습니다우선 강의를 너무 잘 듣고 있음에 감사드립니다.다만 질문이 하나있는데요섹션 6강의의 실습환경에 기반이 되어지는python과 airflow 그리고 DB는 버전에 맞게 미리 설치를 하고 강의를 들어야하는게 맞는거죠?저는 강의에서 최초 환경부터 같이 설치하는 모습을 보여주시나 했는데 없어서 여쭈어봅니다.
-
미해결실리콘밸리 데이터 리더가 알려주는 Airflow 기초
copy into 성능 저하
안녕하세요 한기용 지식공유자님. 37. 앞서 Airflow 예제를 개선해보자 (v4) - 실습 강의에서 데이터의 벌크 업로드를 위해 dag의 insert into 코드를 copy into로 변경했습니다.그러나 이 경우 기존에 한 줄씩 insert into 하던 방식보다 더 느린 결과가 나옵니다(insert into의 경우 2분, copy into의 경우 3분)개인적으로는 제 컴퓨터의 IO 연산이 좋지 않고, 데이터의 양이 크지 않아서 오버헤드가 더 크기 때문인 것으로 예상하고 있는데, 지식공유자님의 의견도 알고 싶습니다 🙂
-
미해결Airflow 마스터 클래스
wsl 관련 질문입니다.!
https://inf.run/d2v1x이분과 같은 증상(?)이라 해야되나 wsl로 우분투 설치시에 저도 아이디 비밀번호 입력이 없었습니다. 그래서 재부팅후 설치를 헀는데 이런게 나오네용
-
미해결Airflow 마스터 클래스
macOS에서 docker 설치
안녕하세요 mac에서 docker 설치하려고 하는데 apt-get command not found가 뜹니다. 찾아보니 apt 명령어는 macOS에서 동작 안한다고 하는데 어떻게 진행하면 될까요?
-
미해결Airflow 마스터 클래스
템플릿 변수에 대한 오류
안녕하세요 CLI로 Trigger 기능을 수행하는 부분 강의를 듣던 중에,Web UI에서 Trigger를 누르면 정상적으로 수행되지만,쉘 스크립트 커맨드로 airflow dags trigger <DAG 이름>이라는 명령어를 실행했을 때아래와 같은 실패 로그가 나타나서 문의드립니다.혹시 커맨드라인으로 실행하면 {{data_interval_end}} 와 같은 템플릿을 적용할 수 없나요?
-
미해결Airflow 마스터 클래스
custom_image 디렉토리 문의드립니다.
안녕하세요.섹션 12 강의를 듣는중인데 airflow 디렉토리 밑에 custom_image 디렉토리가 이미 하나 있어야 하더라구요.그런데 제 airflow 디렉토리 밑에는 해당 디렉토리가 없습니다.여태 진행한 강의는 분명 빠짐없이 들었는데 제가 실수로 놓친 부분이 있는 것 같습니다..다시 찾아 듣고자 하는데 어느 강의인지 찾지를 못하고 있습니다.죄송하지만 혹시 해당 부분 몇 강에서 진행하셨는지 알 수 있을까요?
-
미해결Airflow 마스터 클래스
ETL 인터뷰 관련 문의
안녕하세요 선생님,현재 데이터 엔지니어 직무 면접을 준비하고 있는 수강생입니다. 저는 이번 면접에서 ETL 아키텍처 및 데이터 파이프라인 구성과 관련된 주제를 중심으로 준비하고 있습니다.수업을 통해 많은 내용을 배우고 있지만, 솔직히 말씀드리면 양이 너무 방대하다 보니 모든 부분을 다 소화하기가 쉽지 않습니다.시간도 빠듯해 점점 불안감이 커지고 있습니다. 그래서 정말 간절한 마음으로 도움을 부탁드립니다.혹시 면접에서 특히 중요한 핵심 개념이나 자주 나오는 질문, 그리고 실제 사례 중심으로 정리하면 좋은 부분이 무엇인지 방향을 잡아주실 수 있을까요? 혹은 강의만 따로 추천 해주시면 감사하겠습니다.제가 부족한 부분을 더 보완해서 면접에서 꼭 좋은 결과를 내고 싶습니다.늘 열정적으로 가르쳐주시는 것에 감사드리며,간절히 도움을 청합니다.감사합니다.
-
미해결Airflow 마스터 클래스
섹션 9. Connection & Hook - 50강 관련 질문
안녕하세요. 오늘도 Airflow 강의를 듣던 중 에러가 나는 부분이 있어 질문드리고자 합니다 ㅠ 우선 customized 된 Hook의 bulk_load 기능을 사용하는 과정에서 에러가 발생하는데요..강의에서 알려주신대로 아래와 같이 두 개의 파이썬 파일을 작성해서 DAG을 실행했습니다.(코드도 GitHub에 올려주신 것과 동일합니다)plugins/hooks/custom_postgres_hook.pydags/dags_python_with_custom_hook_bulk_load.py 그런데 DAG 실행 과정에서 아래와 같은 에러가 발생합니다.(Failure caused by 'Engine' object has no attribute 'cursor') 제가 docker-compose.yaml 파일 내 postgres_custom 서비스를 정의할 때, 5433:5432로 포트 포워딩 해줘서 그런가 싶어서, custom_postgres_hook.py 코드에서 uri 변수에 포트번호를 5432로 같이 부여해줬음에도 동일한 에러가 발생합니다. 무엇이 문제일까요..?
-
미해결Airflow 마스터 클래스
docker 설치 관련 질문
영상에서 도커 설치하는 부분을 듣고 있는데 예전 강의다보니까공식 홈페이지에서 도커 설치하는 커맨드가 많이 바뀐 거 같습니다.어떻게 따라가면 좋을까요?
-
미해결Airflow 마스터 클래스
38강. Task groups 관련 질문
안녕하세요. Task group 생성 시, task decorator를 활용한 방법과 그렇지 않은 방법 이렇게 두 가지가 있다고 하셨는데, task decorator를 활용한 방법의 경우, docstring에 작성한 내용이 UI에서 보여지고,task decorator를 활용하지 않은 방법의 경우, tooltip 인자에 입력된 내용이 UI에서 보여지는 것으로 알고 있습니다. 그런데 Airflow 3.0.x 버전에서 실제로 실습을 진행해보니 docstring 및 tooltip 인자에 작성한 내용이 아래와 같이 UI 화면에서 보이지 않는 것으로 확인됩니다 ㅠ Airflow 3.0.x 버전 공식 문서를 읽어봐도 강사님 말씀과 동일하게 docstring 및 tooltip을 사용하면 UI 화면에서 보여질 거라고 적혀있는데... 뭐가 문제일까요..? 코드는 강사님이 작성하신 것과 동일한데, 혹시 몰라 제가 작성한 코드도 같이 첨부 드립니다.import pendulum # Airflow 3.0 버전부터 아래 경로에서 import from airflow.sdk import DAG, task, task_group, TaskGroup from airflow.providers.standard.operators.python import PythonOperator # Airflow 2.10.5 이하 버전에서 실습 시, 아래 경로에서 import # from airflow.operators.python import PythonOperator # from airflow import DAG # from airflow.decorators import task # from airflow.decorators import task_group # from airflow.utils.task_group import TaskGroup with DAG( dag_id = 'dags_python_with_task_group', schedule = None, start_date = pendulum.datetime(2023, 4, 1, tz = 'Asia/Seoul'), catchup = False ) as dag: def inner_func(**kwargs): msg = kwargs.get('msg') or '' print(msg) @task_group(group_id = 'first_group') def group_1(): ''' task_group decorator를 이용한 첫 번째 그룹입니다. ''' @task(task_id = 'inner_function1') def inner_func1(**kwargs): print('첫 번째 TaskGroup 내 첫 번째 task 입니다.') inner_function2 = PythonOperator( task_id = 'inner_function2', python_callable = inner_func, op_kwargs = {'msg': '첫 번째 TaskGroup 내 두 번째 task 입니다.'} ) inner_func1() >> inner_function2 with TaskGroup(group_id = 'second_group', tooltip = '두 번째 그룹입니다') as group_2: ''' 여기에 적은 docstring은 표시되지 않습니다. ''' @task(task_id = 'inner_function1') def inner_func1(**kwargs): print('두 번째 TaskGroup 내 첫 번째 task 입니다.') inner_function2 = PythonOperator( task_id = 'inner_function2', python_callable = inner_func, op_kwargs = {'msg': '두 번째 TaskGroup 내 두 번쨰 task 입니다.'} ) inner_func1() >> inner_function2 # Task Group도 flow 설정 가능 group_1() >> group_2
-
해결됨실리콘밸리 엔지니어와 함께하는 Apache Airflow
공식 compose 내 postgres db 설치시
저는 postgres를 airflow 공식 compose에서 함께 띄었습니다. 그렇게 하니 connection에서 오류가 발생했었습니다. 이후 구글링을 통해 connection에서 host를 해당 컨테이너의 서비스 명으로 변경해주시면 된다는 점을 확인했습니다. 이유는 왜 그런지 모르겠습니다. 강의 들으시는 분들 참고하시면 좋을 것 같습니다.
-
미해결Airflow 마스터 클래스
Python & Email Operator 기반 Xcom 강의(32강) 관련 참고사항
안녕하세요.질문은 아니고 혹시나 저와 같은 에러가 발생하신 분들이 보다 빠르게 문제를 해결하고 강의를 들으실 수 있도록 comment 하나 남깁니다! 현재 저는 Airflow 3.0.x 버전으로 수강 중인데, Python & Email Operator 기반 Xcom 강의(32강)를 듣던 중, 아래와 같이 AirflowException: SMTP connection is not found 에러가 발생했습니다. 원인 파악을 위해 코드를 다시 보던 중, 강사님 GitHub에 있는 코드(dags_python_email_xcom.py)에서 EmailOperator에 conn_id 부분이 없는 것을 확인했습니다.혹시나 저처럼 Airflow 3.0.x 버전으로 실습을 진행하시는 분들이 참고하실 수 있도록 내용 공유 드립니다~! 그럼 완강까지 다들 화이팅입니다!
-
미해결실리콘밸리 데이터 리더가 알려주는 Airflow 기초
데이터 가져올때 1달치만 가져오는 상태
지금은 정책이 바뀌었는지 기존코드 로는 1달치만 가져오네요. extract 에서data = yf.download(symbol, period="max")기간설정 해주었더니 상장날부터 가져옵니다.비전공자분들 참고하세요
-
미해결실리콘밸리 데이터 리더가 알려주는 Airflow 기초
31번 실습시 에러 발생
첫번쨰 dag 실행시 링크로 가쟈오는 csv 파일이 xml 파일로 읽어드리면서 에러로 띄우네요??도커에서 csv 파일을 읽을떄 에러메세지를 xml로 리턴하는거같은데 우선 csv 파일자체를 넣어서 하드코딩했습니다.혹시 도커로 사용시 외부 파일받아올때 보안적인 부분에서 해제해야되는경우가있나요?
-
미해결Airflow 마스터 클래스
docker&airflow 설치 관련 문의
현재 맥북으로 진행중인데 강의에서는 도커나 에어플로를 다운받을때 wsl에 커맨드를 쳐서 다운을 받는거 같은데 맥북으로 진행할때는 그냥 터미널에서 진행하면 될까요?