김현진
@hyunjinkim
수강생
1,246
수강평
81
강의 평점
4.9
안녕하세요.
데이터 & AI 분야에서 일하고 있는 15년차 현직자입니다.
정보관리기술사를 취득한 이후 지금까지 얻은 지식을 많은 사람들에게 공유하고자 컨텐츠 제작하고 있습니다.
반갑습니다. :)
Contact: hjkim_sun@naver.com
강의
수강평
- Airflow 마스터 클래스
게시글
질문&답변
/homework/ch10_3/dataframe_cache.py 과제 질문
안녕하세요, 지구본님!좋은 질문입니다.우선 지구본님께서 작성하신것 처럼 작성하셔도 됩니다. 그리고 만약 아래처럼 doropDuplicates 할 때 company_count_df = count_df.dropDuplicates(['company_id'])그 결과가 대폭 줄어든다면 (ex: 수십 GB → 수백MB) 오히려 지구본님께서 작성하신 게 더 좋습니다. 제가 github에 올린 코드에서 dropDuplicates 연산 뒤에 persist()를 하지 않은 이유는 우선 company_emp_df 를 읽어들인 후 제일 먼저 count()를 먼저 확인해보는 과정이 있는데 count() 전에 persist()를 해놓지 않으면 결국 HDFS에서 두 번 읽어들이게 됩니다. (company_emp_df를 로드한 직후에 수행한 count()에서 한 번, 맨 마지막 show()에서 한 번)그래서 우선 company_emp_df를 로드하자마자 일단 persist()를 해 놓은 것인고, dropDuplicates 이후에도 persist()를 하면 좋겠지만 실습상 데이터가 그리 크지 않으므로 생략했다고 보시면 되겠습니다. 만약 데이터프레임을 로드하자마자 count() 확인해보는 과정이 없다면, 지구본님께서 작성하신 것처럼 dropDulicates() 와 같은 transform 함수 수행 이후에 persist() 하는 게 더 좋습니다. 좋은 질문이에요 ^^ 화이팅입니다 😀
- 0
- 2
- 26
질문&답변
설치중인데 venv를 꼭 써야할까요?
안녕하세요 조만준님!가급적이면 venv 로 가상환경을 만들어주는게 좋습니다.물론 가상환경을 만들면 파이썬 글로벌 환경의 라이브러리들은 인식이 되지 않습니다. 하지만 바로 그런 점 때문에 가상환경을 씁니다. airflow 를 설치하면 굉장히 많은 라이브러리들을 종속성으로 함께 설치하게 되는데 경험적으로 보면 pandas랑 sqlalchemy 버전간 종속성 문제로 문제가 발생하는 경우가 종종 보입니다. 글로벌 환경을 그대로 쓰게 되면 (만약 글로벌 환경에 pandas가 존재할 때) airflow 및 sqlalchemy를 설치하게 되면 종속성 문제가 발생할 가능성이 있습니다. 따라서 가상환경을 만들어주고 그 안에서 airflow 라이브러리들은 설치하게 되면 검증된 버전을 설치하게 됩니다. 따라서 의존성 충돌이 발생할 가능성은 매우 낮아지죠. 이는 Airflow 만의 특징은 아니고 보통 파이썬 프로젝트를 하나 만들 때마다 가상 환경을 하나씩 분리해서 만들어주는 게 일반적입니다.답변이 되셨을까요?
- 0
- 2
- 32
질문&답변
ch4_3 apache zookeeper 설치파일 관련 질문
안녕하세요 구본욱님 우선 수강 중 불편을 드려 죄송합니다.zookeeper 3.8.4 버전이 old 버전이 되면서 다운로드 받는 url이 달라졌습니다. public-nat 서버에서 다운로드 받을 때 아래 경로를 통해서 받으시겠어요? curl -O https://archive.apache.org/dist/zookeeper/zookeeper-3.8.4/apache-zookeeper-3.8.4-bin.tar.gz이름은 똑같으니 다운로드만 잘 되면 ansible playbook 수행하는건 이상없이 잘 될거에요!수정된 URL 경로로 자료도 수정해놓을께요. 감사합니다 😀
- 0
- 3
- 40
질문&답변
Bash Operator 외부 쉘파일 수행하기 오류
안녕하세요 pppcent 님 우선 docker-compose.yaml 설정은 잘 돼있는 것 같아요.그럼에도 안된다면 컨테이너 내부로 들어가서 해당 파일이 있는지부터 우선 확인해볼 필요가 있습니다. 워커 컨테이너를 확인한 후 컨테이너 내부로 진입해서 /opt/airflow/plugins 디렉토리 및 그 내부에 select_fruit.sh 파일이 존재하는지부터 확인해봐야 해요. (아래 명령으로 진입)sudo docker ps sudo docker exec -it {worker컨테이너} /bin/bash 컨테이너 내부에 해당 파일이 존재하는지부터 확인해보시겠어요? 만약 없다면 docker-compose.yaml이 제대로 인식되지 않았을 가능성이 높습니다.
- 0
- 3
- 24
질문&답변
설치 버전 관련 질문입니다.
안녕하세요 이유성님!로컬PC에서 python3.9 & Airflow 3.0.4 버전으로 설치했다는 말씀이시죠?Airflow 3.0.4 버전과 3.1 버전간 차이를 제가 100% 알지는 못하지만 아마도 실습하는데 문제는 없을것으로 보입니다. 그래도 혹시 버전을 맞추고 싶다면 로컬 환경쪽 파이썬 가상환경을 3.12로 설치하시고 가상환경 만든 다음에 pip install "apache-airflow[celery]==3.1.3" --constraint "https://raw.githubusercontent.com/apache/airflow/constraints-3.1.3/constraints-3.12.txt"이렇게 다시 설치해보시겠어요? 참고로 지금 airflow 컨테이너로 설치하면 파이썬 버전이 3.12로 설치됩니다. 그래서 로컬에 python 버전도 3.12로 맞춰주시고 위에 알려드린대로 설치해주시면 파이썬 3.12 기준으로 airlfow 3.1.3 설치가 가능합니다.
- 0
- 1
- 25
질문&답변
우분투 버전 다운받아야하는데 어떤걸로 설치해야할까요?
안녕하세요 Rootree님Ubuntu-24.04 로 설치하시면 됩니다!
- 0
- 1
- 24
질문&답변
DAG 만들기 중 airflow 패키지 로드 에러
안녕하세요 abc님 주로 pip install 로 라이브러리 설치했는데 IDE 툴에서 여전히 인식이 안된다면 파이썬 가상환경이 잘 안잡혔을 가능성이 매우 높습니다.현재 현상을 확인해야하니, 우선 vscode 전체 화면을 캡쳐해서 올려주실래요? 하단 오른쪽에 보시면 현재 어떤 가상환경에서 작업하시는지 보입니다. 여기는 가상환경인데 pip install은 글로벌 환경에서 했다던가, 아니면 반대로 하셨을 가능성이 높습니다.아무튼 올바른 가상환경에서 작업하셨는지가 중요하니, vscode 전체 화면 캡쳐해서 올려주세요! 그리고 UnauthorizedAccess 에러 뜨는것도 전체 캡쳐해서 올려주시겠어요? 제가 맥북에서만 주로 작업해서 powershell 에러 내용은 한번 봐야 알 것 같아요 ^^ 감사합니다.
- 0
- 2
- 64
질문&답변
질문있습니다 섹션13. Spark streaming 부분
안녕하세요, 신정환님우선 로그 설정은 신정환님처럼 나오는게 맞습니다. 혹시 몰라 저도 EC2부터 재구성해서 다시 해봤는데 올려주신것처럼 나오더라구요. ansible-playbooks/ch9_4/setting_spark-on-yarn.yaml 파일을 보면 아래와 같이 로그 내용을 셋팅하는 구문이 있습니다. (사진) 로그 설정 파일인 log4j2.properties 를 만드는 내용인데 이 파일은 기본적으로 아래 구문이 들어가있습니다. appender.console.layout.pattern = %d{yy/MM/dd HH:mm:ss} %p %c{1}: %m%n%ex그래서 연월일 시:분:초 {log_level} {클래스명}: 에러내용 이렇게 나오게끔 되어있어요. 아마도 제가 녹화할 당시 이 내용이 안 들어가있었을 확률이 높은데, 오히려 신정환님처럼 나오는게 맞는 설정이라 걱정하지 않으셔도 됩니다. 그리고 spark-submit 했을 때 실행되는 속도는 좀 느린게 맞습니다. 편집하면서 제가 로딩이 느린부분은 모두 컷 편집을 했어요. 그래서 영상 보시기에는 빨리 나오는 것처럼 보이는게 맞고 제가 EC2 재구성해서 simple_pyspark.py 돌려봤는데 시작되기까지 34초 걸리더라구요. 제가 녹화했을 때도 이정도 걸렸으니 아마 정환님께서 느끼시는 속도가 맞을겁니다. 제가 프로젝트했을 때 운영환경은 서버 자원이 충분했었는데 실습환경보다는 훨씬 빨랐어요. 아마 자원이 넉넉치 않아서 느린 것일 수 있습니다. 혹시 simple_pyspark.py 수행했을 때 몇 초 정도 걸리셨는지 남겨주시면 저랑 비교가 될 것 같습니다.화이팅입니다 💪
- 0
- 2
- 35
질문&답변
ot 자료
안녕하세요 김예찬님! 강의 소개 부분 자료가 없었네요 😂추가해서 업로드 새로 해놨습니다. 알려주셔서 감사드려요 🙏
- 0
- 2
- 33
질문&답변
task_id 사용법이 뭔가 바뀐 것 같습니다.
안녕하세요 ㅇㅅㅇ님!혹시 작성하신 코드를 볼 수 있을까요? 그리고 질문의 내용이 제가 잘 이해가 안가서요. 😂어떤 점이 궁금하신지 조금만 더 알려주시면 감사하겠습니다 😀
- 0
- 3
- 47





