Spring boot 앱을 ECS Fargate로 서비스하려면 Docker Image로 만들어야 하고, 이렇게 Image로 만드는 것을 Dockerize한다고 한다.Dockerfile 생성Spring boot 앱을 Dockerize하려면 Dockerfile이라는 명칭을
Spring boot 웹 애플리케이션을 AWS에 어떻게 배포하는지 알아보자.가장 먼저 해야할 것은 VPC를 세팅하는 것이다.필요한 네트워크 리소스들은 아래와 같다.1\. 최소 4개의 서브넷2\. Internet Gateway (IGW)3\. NAT Gateway4\.
설정을 하기에 앞서 Snowflake의 Integration에 대해 알아보자. 일반적으로 Snowflake에서 데이터를 가져오거나 클라우드 서비스(예: S3)와 통합하기 위해 인증 정보를 사용해야 할 때, 해당 클라우드 공급자의 비밀 키 또는 액세스 토큰과 같은 자격
dbt를 사용하기 위해서는 아래와 같은 절차를 따라야 한다.dbt 설치dbt 환경설정connector(데이터베이스) 설정 데이터 모델링테스트 코드 작성필요시 snapshot 설정 여기서 1, 2, 3번 절차를 알아보자.dbt는 dbt core, dbt cloud 와 같
dbt(Data Build Tool)는 SQL로 작성된 데이터 변환 코드를 관리하고 실행하는 오픈 소스 툴이다. ELT(Extract, Load, Transform) 데이터 파이프라인의 'Transform' 단계를 담당한다.dbt는 기본적으로 SQL을 사용하므로 데이터
위와 같이 Airflow DAG 실행 중 Task가 실패했을 때 지정한 Slack 워크스페이스의 채널에 에러 정보를 올려주는 기능을 알아보자.https://api.slack.com/ 로 접속하여 알림을 받을 앱을 생성한다. 이 앱은 특정 채널에 메시지를 보낼
명령어를 입력하는 위치에 있는 Dockerfile 을 기반으로 image를 빌드한다. -t 옵션으로 뒤에 입력하는 이름으로 image 이름을 지정한다. --platform=linux/amd64 는 OS 호환을 위해 입력한다.Docker hub사용을 위해서는 먼저 log
Docker란? Docker는 컨테이너화된 애플리케이션을 만들고 신속하게 구축, 테스트 및 배포할 수 있는 오픈 소스 플랫폼이다. 컨테이너는 애플리케이션과 해당 애플리케이션을 실행하는 데 필요한 모든 종속성을 모두 가지고 있는 독립적인 환경이다. Docker를 사
Airflow에서 Backfill 은 이전에 실행되지 않은 작업을 재실행하는 프로세스이다. 만약 DAG가 매일 자정에 실행되도록 스케줄되어있고, 특정 기간 동안 실행되지 않았을 경우, Backfill 을 사용하여 그 기간동안 누락된 작업을 재실행할 수 있다.시작 날짜
Airflow는 PythonOperator로 여러 Python 라이브러리들을 사용하여 모든 Task를 구현할 수 있지만, 특정 작업을 수행하는 구체적인 목적을 위한 다양한 Operator들을 제공한다. 이러한 Operator들을 이용해 AWS, Postgres, GC
Airflow를 설치하는 방법은 다양한데, 그 중 간단하게 로컬에서 Airflow를 실행하기에는 Docker를 이용하는 것이 적절하다고 한다. 아래 공식문서를 통해서 Docker로 Airflow를 설치했는데 설정파일인 docker-compose.yaml 파일 내용이 이해가 잘 안가서 정리해보았다. > Docker 기반 Airflow 설치 공식문서 https...
Redshift 클러스터를 생성하는 것은 그 자체로 비용이 청구되지만 Redshift Serverless를 사용하게 되면 AWS에서 3개월 또는 300달러의 크레딧을 제공한다. 3개월동안 무료로 사용이 가능하지만 그 기간동안 크레딧 사용을 초과하게 되면 그 비용이 청구
mac OS 기준으로 처음 github를 사용할 때 인증을 요구하게 되는데, 그 때 인증을 터미널에서 입력할 수도 있지만 GCM을 이용하면 더 편하다.GCM이 대신하여 2FA (two-factor authentication)을 포함한 인증을 관리해준다.git 이 설치되
프로세스와 프로세스 ID 확인출력값에서 프로세스 ID (PID) 7956 중단또는이 한줄이면 된다고 한다.. 참고 : https://stackoverflow.com/questions/27066366/django-development-server-how-to-s
DAG 작성 DAG는 크게 DAG인스턴스를 생성하는 부분, Operator(task)를 생성하는 부분, task간 의존성을 설정하는 부분으로 나뉜다. DAG 인스턴스 생성 DAG 클래스의 인스턴스를 생성해준다. Operator들은 이렇게 생성한 dag 인스턴스를 참조
데이터 엔지니어링 직무를 알아보면서 가장 많이 접했던 용어는 '데이터 파이프라인'이었다. 그리고 이 데이터 파이프라인을 설계 하는데 가장 큰 파이를 차지하고 있는 Airflow를 심도있게 학습해야겠다고 생각했다.Apache Airflow 기반의 데이터 파이프라인 (원제
EBS EC2 인스턴스에 부착할 수 있는 네트워크 드라이브이다. USB와 같이 동작한다고 생각하면 편하다. 인스턴스가 삭제되더라도 EBS는 삭제되지 않으며(설정을 통해 인스턴스 삭제와 동시에 삭제설정도 가능) 한 번에 하나의 인스턴스에 부착될 수 있다. 또한 하나의
EC2 Elastic Compute Cloud 의 약자로, 하나의 가상 머신을 빌려주는 서비스라고 생각하면 된다. 아래와 같은 특징을 가진다. EBS - 가상 드라이브에 데이터를 저장한다 ELB - Load balancer를 통해 로드를 분산한다. ASG - Auto
Redshift에서 데이터를 가져와서 Superset으로 Dashboard 만들어보기