묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실리콘밸리 데이터 리더가 알려주는 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에 커맨드를 쳐서 다운을 받는거 같은데 맥북으로 진행할때는 그냥 터미널에서 진행하면 될까요?
-
미해결실리콘밸리 데이터 리더가 알려주는 Airflow 기초
pdf 링크 오류
안녕하세요 선생님 현재 강의의 6페이지에 (파이썬으로 간단한 ETL 작성해보기)파이썬으로 구글 코랩에서 작성하는 데이터 파이프라인 이라는 문구에 링크를 걸어두신 거 같은데요, PDF 다운로드 후 링크가 지속적으로 안열립니다.웹페이지가 아니라 직접 파일 다운로드 해서 열어도 안되는데 어떻게 해야 되나요?
-
미해결Airflow 마스터 클래스
EmailOperator 의 smtp_default 관련 문의
안녕하세요.Airflow 3.0 에서 EmailOperator 사용시 conn_id 를 세팅하지 않으면 smtp_default 를 기본적으로 사용하고 있어보입니다. smtp_default 세팅은 config 파일에 보니 email_conn_id(AIRFLOW__EMAIL__EMAIL__CONN__ID) 에 세팅되어 있어 EmailOperator 와 fail났을때 smtp_default를 세팅해놓으면 동시에 사용 가능한것은 아닐까요?
-
미해결Airflow 마스터 클래스
앱비밀번호 설정하는 방법에 대해
안녕하세요?【16 Email Operator로 메일 전송하기 강의】에서 앱비밀번호 설정하는 작업이 있는데,Google 보안에 들어가도 앱비밀번호라는 항목 자체가 없습니다.어떻게 설정하는 되는지 방법을 알려주시면 감사하겠습니다.
-
미해결실리콘밸리 데이터 리더가 알려주는 Airflow 기초
Window11 Home 버전 도커 설치 방법 - Docker Desktop - Unexpected WSL error
아래와 같은 내용을 모르고 Win11 Home 버전에서 도커 설치에 여러가지 시행 착오를 겪고 Windows 11 Home 버전에서도 Hyper-V를 활성화해서 도커 설치에 성공한 방법을 공유드립니다. Windows 10 Pro, Enterprise 및 Education 64비트 버전에서만 사용할 수 있고 Home 버전에서는 사용할 수 없습니다.특히 Docker Desktop for Windows 설치를 위해서는 반드시 Hyper-V를 지원하는 OS가 필요하지만 Home 버전에서는 Hyper-V 기능을 사용할 수 없는 탓에 Docker Toolbox(Virtual Box)를 이용한 가상화를 통해서만 Docker를 설치할 수 있습니다. 참고 사이트https://forbes.tistory.com/542#google_vignette 1. 도커 에러 -> WSL2 설치 -> 도커 실행 X 2. Ubuntu 실행 에러Installing, this may take a few minutes... WslRegisterDistribution failed with error: 0x800701bc Error: 0x800701bc WSL 2? ?? ?? ?? ????? ?????. ??? ??? https://aka.ms/wsl2kernel? ??????. Press any key to continue...-> Windows 기능 켜기-> 도커 실행 XLinux용 Windows 하위 시스템Windows - 하이퍼바이저 플랫폼(Hyper-V)가상 머신 플랫폼참고 사이트https://mi2mic.tistory.com/228 3. Hyper-V 활성화 참고 사이트https://geekorea.com/how-to-enable-hyper-v-windows11-home/ 4. 도커 설치 완료
-
미해결Airflow 마스터 클래스
Airflow 설치 후 화면 에러
wsl에서 docker설치하고, airflow를 설치해서, localhost:8080으로 들어갔는데 화면에 아래와 같은 애러가 뜨면서, Dag화면이 안뜨는 상태입니다.해결방법에 대해 말씀해주시면 감사하겠습니다.화면 에러내용에러내용/home/airflow/.local/lib/python3.12/site-packages/airflow/example_dags/standard/example_external_task_parent_deferrable.py Timestamp: 2025-07-13, 06:22:35 Traceback (most recent call last): File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed File "/home/airflow/.local/lib/python3.12/site-packages/airflow/example_dags/standard/example_external_task_parent_deferrable.py", line 60, in <module> from tests_common.test_utils.watcher import watcher ModuleNotFoundError: No module named 'tests_common'
-
미해결Airflow 마스터 클래스
chatGPT API 실습은 이제 유료인 거 맞나요??
안녕하세요 강사님 수업 잘 듣고 있습니다!다름이 아니라 이제 chatGPT API 강의를 듣고 있는데print(resp.text)에서 에러가 계속 나서 보니5$이상 결제를 해야 API 이용이 가능하다는 말이 있어서 혹시 맞는지 확인 부탁드립니다..!