목록전체 글 (222)
NIRVANA

https://nervertheless.tistory.com/232 [Airflow] airflow - spark 연동프로젝트를 진행하다보니 airflow에서 spark job을 실행해야 하는 일이 생겼다.SparkSubmitOperator를 사용하여 spark job을 실행하기 위해서는 airflow에 설치 되어야 할 것들이 몇개 있다. 📌Airflow 설치 목nervertheless.tistory.com 여기서 aws 연결하는 잡이 실행이 더 안되고 멈추는 상황이 발생했었다. spark에서는 잘 실행이 되었어서 뭐가 문제인지 도저히 모르겠어서 답답했었다. 여러 테스트 코드로 실행을 해보다가 실행이 잘되던 코드도 sparksession을 aws에 있던 세션으로 사용되니까 계속 실행중 상태에 머..

프로젝트를 진행하다보니 airflow에서 spark job을 실행해야 하는 일이 생겼다.SparkSubmitOperator를 사용하여 spark job을 실행하기 위해서는 airflow에 설치 되어야 할 것들이 몇개 있다. 📌Airflow 설치 목록apache-airflow-providers-apache-spark 모듈(python)spark binaryjavahadoop aws aws-java-sdk-bundle 사실 뒤에 2개는 s3에서 파일을 읽어와야 해서 필요한 거고 앞에 3개만 있어도 된다. 먼저 SparkSubmitOperator에 대해 짧게 알아 보려고 한다(왜냐면 내가 SparkSubmitOperator 개념을 안 알아보고 하다가 3일 삽질을 했으므로) SparkSubmitOpe..

처음에는 ubuntu 22.04 버전으로 진행을 했는데 eventsim 깃허브, sbt 공식 문서, 모든 블로그 글 따라 해도 sbt 설치가 안됐다. 그러다가 깃헙 이슈에 이걸로 토론이 오간 걸 찾음 https://github.com/actions/setup-java/issues/712 Setup Java does not ensure that `sbt` is installed on Ubuntu 24 · Issue #712 · actions/setup-javaDescription: Notice of breaking changes for GitHub Actions warned that certain packages would not be present in Ubuntu 24.04, this included ..

📌Kafka란? 2008년 링크드인에서 내부 실시간 데이터 처리를 위해 개발한 소프트웨어 플랫폼으로 Scala와 Java로 작성 되었다. 사용자의 event data를 실시간으로 수집하고 바로 action 취하기 위해 사용되며 2011년 초에 아파치 재단에 프로젝트로 편입 되어 오픈소스화되었다. 실시간 데이터를 처리 하기 위해 설계된 오픈소스 분산 스트리밍 플랫폼Scalability와 Fault Tolerance를 제공하는 Publish-Subscription 메시징 시스템 Publish-Subscription : producer가 생성한 data를 저장하는 메시지 큐를 두어 producer와 consumer가 독립적으로 실행될 수 있도록 진행 → 시스템의 안정성을 높이고 다수의 consumer가 ..

항공권 정보를 3일에 한번씩 크롤링하여 snowflake 테이블에 적재하는 파이프라인을 만들어보고자 한다. 📌DAG Task 정의데이터 크롤링 및 CSV 저장 (E & T)S3 적재 (L)Snowflake 테이블에 적재 (L) 위와 같이 총 3가지의 task로 구성된 DAG를 작성하려 한다. 각 task는 순차적으로 진행되며 데이터 크롤링 및 csv 저장 → s3 버킷 적재 → Snowflake 테이블 적재 순으로 진행된다. 📌Snowflake 테이블 스키마 정의프로젝트 기간이 여유롭지 못한 탓에 데이터 크롤링 시에 팀원들과 정했던 규칙이 있었다. Snowflake 테이블 스키마를 구성함에 있어서도 다음과 같이 정했던 규칙을 기반으로 구성했다.출발지는 무조건 인천(INC)편도만 취급항공권 가격, ..

Airflow란?파이썬으로 작성된 데이터 파이프라인 (ETL) 프레임워크 다양한 데이터 소스와 데이터 웨어하우스를 쉽게 통합해주는 오퍼레이터의 역할을 함 airbnb에서 시작한 아파치 오픈소스 프로젝트이자 가장 많이 사용되는 데이터 파이프라인 관리 작성 프레임워크데이터 파이프라인 스케줄링 지원 및 웹 UI 제공 Airflow 구성총 다섯 개의 컴포넌트로 구성웹 서버 Flask로 구성 DAG를 워커에게 배정하는 역할을 수행 웹 UI를 통해 스케줄러 및 DAG의 상황을 시각화 스케줄러 - 데이터 파이프라인 실행 및 파이프라인 트리거 실행 (master 역할)워커 - 실제 task를 실행하는 노드, airflow의 scaling = 워커 노드의 수를 ↑메타 데이터 데이터베이스 - 스케일링, 워커, 파이프라인의..