분류 전체보기 138

샤드, 반복자, 체크포인트: Kinesis 스트림 안정성의 핵심

Kinesis의 데이터 단위: 샤드(Shard)Kinesis 스트림은 데이터를 샤드 단위로 분산 저장한다. 샤드는 시간 순서대로 데이터를 저장하며, 각 샤드는 독립적으로 읽기/쓰기가 가능하다. 스트림 내에는 여러 개의 샤드를 구성할 수 있으며, 이를 통해 병렬성과 확장성을 확보할 수 있다. 샤드에서 데이터를 읽는 법: 샤드 반복자(Shard Iterator)샤드에서 데이터를 읽기 위해서는 샤드 반복자(shard iterator)를 요청해야 한다. 반복자는 커서(cursor)와 같은 역할을 하며, 이 반복자를 통해 특정 위치부터 데이터를 읽을 수 있다. 반복자의 특징GetShardIterator API를 통해 요청한다.반복자는 5분간 유효하며, 만료 후에는 새로 요청해야 한다.반복자의 유형:TRIM_HO..

AWS 2025.06.08

AWS Lake Formation 개념 정리

AWS에서는 데이터를 Amazon S3에 저장한 뒤, Athena, Redshift Spectrum, EMR 등을 통해 분석하는 구조가 흔히 사용된다. 그러나 이 구조에서 데이터 접근 제어를 구현하려면 IAM, S3 버킷 정책, Glue 카탈로그 등을 복잡하게 설정해야 하는 등 여러 AWS 계정 간 데이터 공유를 안전하게 구현하는 데에는 많은 수고가 필요하다. 이러한 복잡성을 줄이기 위해 AWS는 Lake Formation이라는 서비스를 제공한다. Lake Formation이란?Lake Formation은 Amazon S3를 기반으로 하는 데이터 레이크를 쉽고 안전하게 구축할 수 있도록 지원하는 서비스이다. 기존에 AWS Glue, IAM, S3 정책 등을 조합해서 처리해야 했던 작업들을 하나의 중앙 제..

AWS 2025.06.07

Auto Scaling 그룹의 휴지 기간(Cooldown)

Auto Scaling 그룹은 트래픽 변화에 따라 EC2 인스턴스를 자동으로 추가하거나 축소하여 애플리케이션의 가용성과 성능을 유지하도록 설계된 서비스이다. 이때, 인스턴스를 추가하거나 제거한 직후에는 시스템 상태가 안정화되는 데 시간이 필요하기 때문에, 과도한 조정을 방지하고 조정이 시스템에 미치는 영향을 평가할 수 있도록 대기 시간을 두는 장치가 휴지 기간(Cooldown period)이다. 휴지 기간은 Auto Scaling 그룹이 인스턴스를 조정한 이후, 일정 시간 동안 다음 조정을 하지 않도록 제한하는 시간을 의미한다. 이 기능의 목적은 다음과 같다. 불필요한 중복 조정 방지: 인스턴스를 추가한 직후에는 아직 시스템에 반영되지 않은 상태이므로, 지표(CPU 사용률 등)를 보고 또다시 잘못된 판단..

AWS 2025.06.06

AWS DataSync: 온프레미스 데이터를 클라우드로 이전

AWS DataSync는 온프레미스 스토리지와 AWS 클라우드 간에 데이터를 빠르고 안전하게 전송할 수 있도록 도와주는 완전관리형 데이터 이동 서비스이다. 단순히 파일을 복사하는 것이 아니라, 대규모 데이터 이동, 네트워크 최적화, 무결성 검증, 보안 전송, 스케줄 자동화까지 포함된 전문 전송 솔루션이다. DataSync는 다음과 같은 상황에서 매우 유용하다.사내 파일 서버(NAS 등)에 있는 데이터를 S3나 EFS로 이전하고자 할 때정기적으로 변경되는 파일을 스케줄에 따라 동기화하고자 할 때기존 데이터를 AWS로 백업하거나 마이그레이션할 때클라우드에서 분석 및 머신러닝을 위한 데이터 이동이 필요한 경우 DataSync는 아래 순서대로 동작한다.에이전트 설치온프레미스 VM(VMware, Hyper-V 등..

AWS 2025.06.05

Amazon Aurora 병렬 쿼리(Parallel Query)

Amazon Aurora는 AWS에서 설계한 고성능 관계형 데이터베이스로, 일반적인 MySQL/PostgreSQL보다 뛰어난 확장성과 성능을 제공한다. 이 중 병렬 쿼리(Parallel Query) 기능은 대용량 데이터를 더욱 빠르게 조회하기 위한 고급 기능으로 Aurora MySQL에서 사용할 수 있다. 기본적으로 RDBMS에서는 쿼리를 처리할 때 DB 인스턴스가 스토리지에서 데이터를 읽고 필터링한 후 결과를 반환한다. 하지만 수백만 건의 데이터를 스캔해야 하는 경우, 스토리지 I/O 병목이 발생하면서 쿼리 속도가 크게 저하될 수 있다는 문제가 있다. 병렬 쿼리는 이러한 병목을 해결하기 위해, 쿼리 처리를 DB 인스턴스만이 아니라 스토리지 계층에서도 병렬로 분산시켜 처리한다. 병렬 쿼리의 작동 방식 ..

AWS 2025.06.04

Amazon Aurora의 엔드포인트 및 리더 엔드포인트 기반 로드밸런싱

Amazon Aurora는 AWS에서 제공하는 고성능 관계형 데이터베이스 엔진으로, 뛰어난 확장성과 내결함성을 제공한다. 특히 Aurora는 기본적으로 복제본(Replica) 구조를 포함하고 있어 읽기 요청 분산에 매우 유리하다. 이를 위해 Aurora는 다양한 유형의 엔드포인트(Endpoint) 를 제공한다. Aurora의 엔드포인트 종류클러스터 엔드포인트 (Cluster Endpoint)쓰기 요청을 위한 엔드포인트로, 항상 Primary(Writer) 인스턴스로 라우팅된다.리더 엔드포인트 (Reader Endpoint)읽기 요청 전용 엔드포인트로, 클러스터에 있는 복제본 인스턴스들 중 하나로 자동 분산되며, 일반적으로 균등하게 로드밸런싱된다. 인스턴스 엔드포인트 (Instance Endpoint)특정..

AWS 2025.06.03

Amazon EBS 볼륨 타입 정리

Amazon EC2 인스턴스에 블록 스토리지를 제공하는 EBS(Elastic Block Store)는 다양한 유형의 볼륨 타입을 제공한다. 각각의 EBS 볼륨은 성능 특성과 가격이 다르기 때문에, 워크로드에 맞는 적절한 타입을 선택해야 한다. 1️⃣ 범용 SSD (gp2, gp3)SSD 기반으로 IOPS 중심의 워크로드에 적합하다.gp2: 스토리지 크기에 비례해 IOPS 성능이 증가한다. (최대 16,000 IOPS)gp3: IOPS와 처리량을 스토리지 크기와 무관하게 설정할 수 있다. (IOPS 최대 16,000, 처리량 최대 1,000 MB/s)적합한 용도:부트 볼륨소규모에서 중간 규모의 데이터베이스일상적인 범용 애플리케이션 2️⃣ 프로비저닝된 IOPS SSD (io1, io2)가장 높은 IOPS 성..

AWS 2025.06.02

DNS 레코드와 별칭(Alias)

웹 서비스를 배포하거나 도메인 연결을 구성할 때, DNS와 레코드의 개념은 필수적으로 이해해야 하는 요소이다. 특히 AWS Route 53을 사용할 경우, 일반적인 DNS 레코드 외에 "별칭(Alias)"이라는 특별한 기능이 추가되어 헷갈릴 수 있다. 이번에 DNS 레코드의 기본 개념부터, 각 레코드 유형, 그리고 별칭과 비별칭의 차이까지 정리해보려 한다. 1. DNS 레코드란?DNS 레코드는 "도메인 이름을 어디로 연결할지 정의하는 규칙"이다. 사용자가 브라우저에 도메인 이름을 입력하면, DNS는 해당 도메인을 어떤 IP 주소나 다른 리소스로 연결할지 결정한다. 예) example.com이라는 도메인을 192.0.2.1이라는 서버의 IP 주소에 연결하려면 ➡️ A 레코드 사용 2. 주요..

AWS 2025.06.01

API vs HTTP: 웹 통신 개념 비교

HTTP란?HTTP(Hypertext Transfer Protocol)는 웹에서 클라이언트와 서버가 통신하기 위해 사용하는 표준 프로토콜이다. 우리가 브라우저에서 웹사이트에 접속할 때, 혹은 앱에서 데이터를 불러올 때 사용하는 기본 통신 방식이 바로 HTTP다.요청 메시지 형식은 다음과 같으며, "어떻게 데이터를 요청하고 응답받을 것인가"에 대한 형식과 규칙을 제공한다.GET /login HTTP/1.1Host: example.comUser-Agent: Mozilla/5.0 API란 무엇인가?API(Application Programming Interface)는 어떤 소프트웨어가 다른 소프트웨어와 상호작용할 수 있게 해주는 인터페이스다.즉, API는 "이 기능을 어떻게 요청해야 하는가"에 대한 설계 규..

AWS 2025.05.31

IAM DB 인증 - 비밀번호 없이 안전하게 RDS 접속하기

왜 IAM DB 인증이 필요한가?Amazon RDS(MySQL, PostgreSQL)를 사용할 때, 우리는 보통 사용자 이름과 비밀번호를 통해 로그인 하는데, 이는 다음과 같은 보안 취약점을 안고 있다:비밀번호를 코드나 설정 파일에 하드코딩해야 함비밀번호가 노출될 위험이 있음비밀번호를 주기적으로 변경해야 함IAM과 분리된 사용자 관리로 운영 복잡성 증가위와 같은 문제들을 해결하기 위해 비밀번호 없는 RDS 접속 방식이 필요해졌다. IAM DB 인증이란?IAM DB 인증은 비밀번호 없이 RDS에 로그인할 수 있게 해주는 기능으로, AWS IAM 사용자 또는 역할이 생성한 15분 유효의 임시 토큰을 사용해 RDS(MySQL, PostgreSQL)에 로그인할 수 있다. 주요 특징:비밀번호 대신 임시 토큰 사용..

AWS 2025.05.30