본문 바로가기

전체 글110

Amazon S3 스토리지 클래스 정리 S3는 요구사항에 따라 선택할 수 있는 다양한 스토리지 클래스를 제공한다. 일반적으로 사용되는 스탠다드 외에도 다른 스토리지 클래스에 대하여 이해하고 있으면, 더 비용효율적이고 요구에 맞는 설계를 할 수 있다.💡 Amazon S3? Amazon Simple Storage Service(Amazon S3)는 클라우드 기반의 객체 스토리지 서비스로, 여러 종류의 스토리지 클래스를 제공하여 데이터의 보존 기간, 가용성, 내구성 및 비용에 대한 요구 사항을 충족시킬 수 있다. 모든 규모와 분야에서 S3를 사용하여 데이터 레이크, 웹사이트, 모바일 어플리케이션, 백업 및 복원, 아카이브, IoT 디바이스, 빅데이터 분석 등 다양한 사용 사례에서 원하는 양의 데이터를 저장하고 보호 할 수 있다. Amazon S3 .. 2023. 5. 21.
Airflow를 알아보자 얼마전에 프로그래머스에서 하는 "실리콘밸리에서 날아온 데이터 엔지니어링 스타터 키트 with Python" 강의를 수강 완료 했다. 강의를 통해서 그동안 호기심이 많았던 Airflow를 처음 사용해봤다. 앞으로 계속해서 배운 내용을 토대로 Airflow를 더 깊고 다양하게 사용해 볼 예정이나, 그 전에 Airflow에 대해서 좀 더 알아보고 정리해 놓고 싶다는 생각이 들어 이 글을 작성한다. Apache Airflow 란?? Airflow는 Python 코드를 사용하여 배치 워크플로우를 개발, 예약 및 모니터링 할 수 있는 오픈소스 플랫폼이다. Airflow를 이용하여 ETL작업을 자동화 할 수 있고, 웹 UI를 이용해서 워크플로우의 상태를 관리 할 수 있다. 워크플로우에서는 각 작업간의 종속성을 정의 .. 2023. 5. 14.
IAM 역할을 수임하도록 Kubernetes 서비스 계정 구성 후 Pod에 권한 적용 EKS에 헬름차트로 구성한 Fluentd에서 AWS 데이터를 보낼 때 cloudwatch에 대한 권한이 필요하다. 이때, pod가 클라우드워치 수행 권한이 있는 IAM 역할을 위임하도록 serviceaccount를 구성하여 해당 파드에서 Cloudwatch로 로그를 보낼 수 있도록 한다. 💡Prerequisites: - EKS 클러스터 - IAM OpenID Connect(OIDC) 공급자 확인: aws eks describe-cluster --name --query "cluster.identity.oidc.issuer" --output text - AWS CLI 버전 2.9.20 이상 - kubectl 설치 - kubectl config 파일 (~/.kube/config) 1. IAM 정책 생성 $ c.. 2023. 4. 29.
데이터베이스에서의 Transaction (트랜잭션) Transaction(트랜잭션) 이란? 데이터베이스 트랜잭션(Transaction)은 데이터베이스에서 논리적인 작업 단위를 묶어서, 하나의 논리적인 작업으로 처리하기 위한 것이다. 트랜잭션은 여러 개의 쿼리나 명령어를 수행할 때, 그룹 단위로 묶어서 하나의 작업으로 처리한다. 따라서 작업이 끝까지 수행되거나, 전혀 수행되지 않도록 보장(All or Nothing)하는 것이 특징이다. 은행 계좌의 데이터베이스를 생각해 봤을 때, "Alice가 Bob에게 100$ 이체"라는 하나의 event에 대해서 아래 4개의 update 쿼리가 필요하다고 하자. UPDATE accounts SET balance = balance - 100.00 WHERE name = 'Alice'; --잔액 테이블에서 앨리스 잔액 - .. 2023. 4. 23.