amazon-rds

8 개의 포스트

aws4분 읽기큐레이션 요약

AWS 주간 요약: Amazon RDS for SQL Server의 BYOM, Swift용 AWS IoT Device SDK 등 (2026년 6월 8일) | Amazon Web Services

AWS 이번 주 주요 소식은 Swift 기반 IoT 개발의 본격화와 기업용 AWS 서비스의 안정성·보안·AI 기능 강화에 초점이 맞춰져 있다. AWS IoT Device SDK for Swift가 정식 출시되어 MQTT 5, Device Shadow, Jobs, 플릿 프로비저닝을 macOS·iOS·tvOS·Linux에서 사용할 수 있게 됐다. 또한 RDS for SQL Server의 기존 라이선스 재사용, Cognito 멀티 리전 복제, Bedrock의 OpenAI 모델 지원 등 기업 환경을 겨냥한 기능도 확대됐다. ### Swift 기반 IoT와 엣지 컴퓨팅의 확장 - AWS IoT Device SDK for Swift가 정식 출시됐다. - 다음 기능을 제공한다. - 프로덕션 수준의 MQTT 5 연결 - Device Shadow를 통한 디바이스 상태 동기화 - Jobs를 이용한 원격 작업 및 업데이트 - 플릿 프로비저닝을 통한 대규모 디바이스 등록 - macOS, iOS, tvOS, Linux에서 Swift로 IoT 애플리케이션을 개발할 수 있다. - 서버 측 Swift, IoT, 엣지 컴퓨팅의 결합이 확대되고 있으며, WendyOS처럼 NVIDIA Jetson과 Raspberry Pi에서 Swift 애플리케이션 배포를 지원하는 프로젝트도 등장하고 있다. ### Amazon RDS for SQL Server의 BYOM 지원 - 온프레미스에서 SQL Server 애플리케이션을 이전하는 고객은 기존 Microsoft SQL Server 라이선스를 Amazon RDS에서 재사용할 수 있다. - Microsoft Software Assurance가 포함된 라이선스는 Microsoft License Mobility 프로그램을 통해 적용할 수 있다. - Bring Your Own Media(BYOM)는 AWS License Manager와 통합된다. - 이를 통해 라이선스 사용량을 추적하고 규정 준수 상태를 관리할 수 있다. - 기존 라이선스 투자를 활용할 수 있어 SQL Server 마이그레이션 비용 절감에 도움이 된다. ### Amazon Cognito 멀티 리전 복제 - Cognito 사용자 풀의 사용자 및 머신 ID 데이터를 보조 리전에 거의 실시간으로 동기화할 수 있다. - 복제 대상에는 다음 항목이 포함된다. - 자격 증명 - 사용자 풀 구성 - 연동 및 페더레이션 설정 - 기본 리전에 장애가 발생해도 로그인 상태의 사용자는 재인증 없이 애플리케이션을 계속 이용할 수 있다. - 등록 사용자는 기존 자격 증명으로 보조 리전에서 로그인할 수 있다. - Essentials 또는 Plus 기능 티어에서 애드온으로 제공되며, 16개 리전에서 지원된다. ### Amazon Bedrock의 OpenAI 모델 및 개발 도구 지원 - GPT-5.5, GPT-5.4, Codex가 Amazon Bedrock에서 정식 제공된다. - GPT-5.5는 에이전트 기반 코딩, 데이터 분석, 다단계 자율 작업에 강점을 가진다. - Codex는 다음 환경에서 사용할 수 있다. - Codex App - Codex CLI - Visual Studio Code - JetBrains IDE - Xcode - AWS의 기존 보안, 거버넌스, 운영 관리 체계 안에서 OpenAI 모델을 사용할 수 있다. - 가격은 OpenAI의 직접 제공 가격과 동일하며, 사용량은 기존 AWS 약정에 포함된다. ### Bedrock 관측성·콘솔·보안 기능 개선 - OpenAI 및 Anthropic 호환 API용 `bedrock-mantle` 엔드포인트에 CloudWatch 지표가 추가됐다. - 계정, 프로젝트, 모델, 프로젝트-모델 단위로 다음 정보를 모니터링할 수 있다. - 추론 요청 수 - 입력·출력 토큰 수 - 클라이언트 오류 수 - 호환 API에 최적화된 Bedrock 콘솔이 새롭게 개편됐다. - 모델 카탈로그 - 모델 나란히 비교 - 프로젝트 기반 구성 - 미리 채워진 코드 예제가 포함된 프로젝트별 문서 - Bedrock AgentCore Identity는 기존 AWS Secrets Manager 시크릿 ARN을 직접 참조할 수 있게 됐다. - 고객은 자체 KMS 키, 태깅 전략, 자동 로테이션 등 시크릿 관리 정책을 유지할 수 있다. ### 에이전트와 워크플로 자동화 - AWS Step Functions에 Bedrock AgentCore 기반의 에이전트 추론 단계가 추가됐다. - 워크플로에서 여러 AI 에이전트를 병렬 또는 순차적으로 실행할 수 있다. - 사람의 승인 단계를 삽입할 수 있어 자동화와 통제를 함께 구현할 수 있다. - 각 에이전트의 판단 과정을 추적할 수 있어 감사와 디버깅에 유리하다. ### 컨테이너 및 Kubernetes 기능 업데이트 - Amazon EKS와 EKS Distro가 Kubernetes 1.36을 지원한다. - 주요 변경 사항은 다음과 같다. - User Namespaces 정식 지원 - Mutating Admission Policies - Pod 단위 리소스의 인플레이스 수직 확장 - 리소스 상태 보고 기능 - ECS Managed Instances는 AWS Trainium과 Inferentia를 지원한다. - Inferentia2, Trainium1, Trainium2 인스턴스를 용량 공급자로 구성할 수 있다. - ECS가 워크로드에 필요한 가속기 리소스를 자동으로 할당한다. ### 네트워크 연결·비용 분석·위치 서비스 - Amazon Quick은 VPC를 통해 사설 MCP 서버에 연결할 수 있다. - 내부 애플리케이션과 도구를 인터넷에 노출하지 않고 Amazon Quick에서 사용할 수 있다. - AWS Cost and Usage Report 2.0은 Athena와 Redshift 통합을 지원한다. - 선택한 쿼리 엔진에 맞는 형식으로 비용 데이터를 전달하고, 테이블 정의와 데이터 로딩 지침도 제공한다. - Amazon Location Service Routes API에는 대중교통 및 복합 이동 경로가 추가됐다. - Transit과 Intermodal 모드를 통해 대중교통, 도보, 자동차, 택시, 렌터카를 조합한 경로를 계획할 수 있다. - 해당 기능은 13개 리전에서 제공된다. ### 실용적인 시사점 - SQL Server를 AWS로 이전한다면 기존 라이선스와 Software Assurance를 활용할 수 있는지 확인하는 것이 좋다. - 글로벌 서비스의 인증 연속성이 중요하다면 Cognito 멀티 리전 복제를 검토할 만하다. - Bedrock을 도입하는 팀은 CloudWatch 토큰·오류 지표와 Secrets Manager 연동을 함께 구성해 비용과 보안을 관리하는 것이 바람직하다. - IoT 제품을 Swift 생태계로 개발하거나 Apple 기기와 엣지 하드웨어를 함께 운영하려는 경우 AWS IoT Device SDK for Swift가 유력한 선택지가 될 수 있다.

원문 읽기(새 탭에서 열림)
aws원문

AWS 주간 요약: Amazon EC2 M8azn 인스턴스, Amazon Bedrock의 새로운 오픈 가중치 모델 등 (2026년 2월 16일) | 아마존 웹 서비스 (새 탭에서 열림)

AWS는 최근 고성능 컴퓨팅을 위한 Amazon EC2 M8azn 인스턴스 출시와 더불어 Amazon Bedrock에 6개의 새로운 오픈 가중치(Open weights) 모델을 추가하며 인프라와 AI 역량을 동시에 강화했습니다. 이번 업데이트는 클라우드 업계 최고 수준인 5GHz의 CPU 주파수를 제공하여 고성능 요구 워크로드를 지원하는 한편, 개발자들이 다양한 오픈 소스 모델을 OpenAI API 규격과 호환되는 환경에서 더욱 유연하게 사용할 수 있도록 돕는 데 초점을 맞추고 있습니다. 이를 통해 기업들은 실시간 금융 분석부터 복잡한 추론 및 코딩 에이전트 구축까지 더욱 폭넓은 기술 선택지를 갖게 되었습니다. ### Amazon EC2 M8azn 인스턴스 정식 출시 * **압도적인 클라우드 성능:** 5세대 AMD EPYC 프로세서를 탑재하여 클라우드 사상 최고 수치인 최대 5GHz의 CPU 주파수를 제공합니다. * **이전 세대(M5zn) 대비 대폭 개선:** 컴퓨팅 성능은 최대 2배, 메모리 대역폭은 4.3배 향상되었으며, L3 캐시는 10배 더 커져 데이터 처리 효율이 극대화되었습니다. * **네트워크 및 스토리지 강화:** Nitro 시스템 6세대 카드를 기반으로 네트워크 처리량은 2배, Amazon EBS 처리량은 3배까지 향상되었습니다. * **주요 활용 분야:** 높은 주파수와 저지연 성능이 필수적인 실시간 금융 분석, 고성능 컴퓨팅(HPC), 고주파 매매(HFT), 게임 서버 및 시뮬레이션 모델링에 최적화되어 있습니다. ### Amazon Bedrock의 AI 모델 라인업 및 보안 기능 확장 * **6종의 신규 오픈 가중치 모델 추가:** DeepSeek V3.2, MiniMax M2.1, GLM 4.7/Flash, Kimi K2.5, Qwen3 Coder Next를 이제 Bedrock에서 사용할 수 있습니다. * **용도별 최적화:** 복잡한 추론과 에이전트 지능에 특화된 모델부터 긴 출력 윈도우를 지원하는 자율 코딩 모델, 그리고 운영 비용 효율성을 높인 모델까지 다양한 선택지를 제공합니다. * **Project Mantle 기반 연동:** 새로운 분산 추론 엔진인 Project Mantle을 통해 OpenAI API 규격과 즉시 호환되며, 서버레스 추론 환경에서 높은 수준의 쿼터 관리와 서비스 품질 제어를 지원합니다. * **AWS PrivateLink 지원 확대:** `bedrock-runtime`뿐만 아니라 `bedrock-mantle` 엔드포인트에 대해서도 PrivateLink를 지원하여, 데이터가 공용 인터넷을 거치지 않고 보안이 강화된 전용 네트워크를 통해 통신할 수 있습니다. ### 운영 편의성 및 비용 최적화를 위한 서비스 업데이트 * **Amazon EKS Auto Mode 로깅 강화:** CloudWatch Vended Logs를 통해 컴퓨팅 자동 확장, 스토리지, 네트워킹 등 관리형 쿠버네티스 기능의 로그를 더 저렴한 가격으로 수집하고 관리할 수 있습니다. * **OpenSearch Serverless 컬렉션 그룹:** 여러 컬렉션 간에 OpenSearch 컴퓨팅 유닛(OCU)을 공유할 수 있게 되어 전체적인 비용을 절감할 수 있으며, 지연 시간에 민감한 앱을 위해 최소 OCU 할당량을 지정할 수 있는 기능이 추가되었습니다. * **Amazon RDS 스냅샷 복원 개선:** 스냅샷을 복원하는 시점에 백업 유지 기간과 백업 창 설정을 즉시 수정할 수 있게 되었습니다. 기존에는 복원 완료 후 설정을 변경해야 했던 번거로움이 사라져 워크플로우가 간소화되었습니다. 고성능 단일 코어 성능이 필요한 조직은 M8azn 인스턴스 도입을 검토하여 실시간 처리 역량을 강화할 수 있습니다. 또한, AI 모델 선택의 폭이 넓어진 만큼 특정 작업(코딩, 추론 등)에 최적화된 오픈 가중치 모델을 Amazon Bedrock에서 테스트하여 성능과 비용의 균형을 맞춘 효율적인 AI 애플리케이션 개발 전략을 세우는 것을 추천합니다.

aws원문

AWS 주간 요약: Amazon Bedrock의 Claude Opus 4.6, Apple로 AWS Builder ID 로그인, 기타 소식 (2026년 2월 9일) | Amazon Web Services (새 탭에서 열림)

AWS는 인프라 성능의 비약적인 향상과 보안 강화, 그리고 인공지능 모델의 고도화를 포함한 대규모 업데이트를 발표했습니다. 특히 차세대 인텔 프로세서 기반의 EC2 인스턴스와 Anthropic의 최신 모델인 Claude Opus 4.6의 도입은 성능과 지능형 워크로드 처리 능력을 획기적으로 높였습니다. 또한, 다중 계정 지원 및 인증 방식의 유연성을 확대하여 클라우드 관리의 편의성과 보안 장벽을 동시에 개선한 것이 이번 업데이트의 핵심입니다. **컴퓨팅 및 네트워크 인프라 강화** * **차세대 EC2 인스턴스 출시:** 인텔 제온 6 프로세서를 탑재한 C8id, M8id, R8id 인스턴스가 도입되었습니다. 이전 세대 대비 최대 43% 향상된 성능과 3.3배 더 넓은 메모리 대역폭을 제공하여 고성능 컴퓨팅 요구를 충족합니다. * **네트워크 비용 및 기능 개선:** AWS Network Firewall의 시간당 요금과 데이터 처리 비용이 인하되었으며, 특히 암호화된 트래픽을 검사하는 TLS(Transport Layer Security) 검사에 대한 추가 요금이 폐지되었습니다. * **ECS 배포 옵션 확장:** Amazon ECS가 Network Load Balancer(NLB)를 사용하는 서비스에 대해 선형(Linear) 및 카나리(Canary) 배포 방식을 지원합니다. 이를 통해 TCP/UDP 기반의 저지연 서비스도 안전하게 점진적인 트래픽 전환이 가능해졌습니다. **데이터 관리 및 거버넌스 효율화** * **DynamoDB 계정 간 복제:** 글로벌 테이블이 다중 AWS 계정 간 복제를 지원합니다. 이를 통해 계정 단위로 워크로드를 격리하면서도 복원력을 높일 수 있으며, 각 계정별로 별도의 보안 정책을 적용할 수 있습니다. * **RDS 연결 편의성 증대:** RDS 콘솔에서 Java, Python, Node.js 등의 프로그래밍 언어별 연결 코드 스니펫을 제공합니다. 사용 중인 인증 설정(예: IAM 인증)에 맞춰 코드가 자동 조정되며, CloudShell이 통합되어 콘솔 내에서 즉시 데이터베이스 접속이 가능합니다. * **AWS Config 지원 확대:** Amazon EKS, Amazon Q 등 30개의 새로운 리소스 유형이 추가되어, 더욱 광범위한 리소스에 대한 감사 및 규정 준수 여부를 자동으로 관리할 수 있습니다. **보안 및 신원 인증 체계의 고도화** * **인증 수단 다양화:** AWS Builder ID에 'Apple로 로그인' 기능이 추가되어 사용자 접근성이 개선되었습니다. 또한 AWS Management Console 상단 바에 계정 이름이 표시되도록 개선되어 여러 계정을 운영하는 환경에서 식별이 용이해졌습니다. * **세밀한 접근 제어:** AWS STS가 Google, GitHub, CircleCI 등 외부 ID 제공업체의 특정 클레임(Claim) 검증을 지원합니다. 이를 IAM 역할의 신뢰 정책 조건 키로 사용하여 연합 인증 사용자에 대한 정밀한 데이터 경계를 설정할 수 있습니다. * **CloudFront mTLS 지원:** 오리진 서버와의 통신에 상호 TLS(mTLS) 인증을 적용할 수 있습니다. 인증된 CloudFront 배포판만 백엔드에 접속할 수 있도록 강제함으로써 보안 수준을 한 단계 더 높였습니다. **인공지능(AI) 및 Bedrock 업데이트** * **Claude Opus 4.6 도입:** Anthropic의 가장 지능적인 모델인 Claude Opus 4.6이 Amazon Bedrock에서 사용 가능해졌습니다. 코딩, 복잡한 추론, 엔터프라이즈급 에이전트 워크플로우에서 업계 최고 수준의 성능을 발휘합니다. * **구조화된 출력(Structured Outputs):** Bedrock에서 파운데이션 모델의 응답을 정의된 JSON 스키마에 맞춰 고정할 수 있는 기능을 지원합니다. 별도의 후처리 없이도 기계가 읽기 쉬운 일관된 형식의 응답을 얻을 수 있어 서비스 안정성이 강화되었습니다. 이번 업데이트는 특히 AI 기반 애플리케이션을 구축하는 개발자들에게 강력한 도구를 제공합니다. Claude Opus 4.6과 구조화된 출력 기능을 활용하면 더 정교하고 안정적인 에이전트 서비스를 구현할 수 있습니다. 또한, 운영 측면에서는 새로운 RDS 연결 도구와 ECS 배포 옵션을 통해 개발 생산성을 높이고, CloudFront mTLS를 통해 백엔드 보안을 강화할 것을 권장합니다.

aws원문

Amazon RDS for SQL Server 및 (새 탭에서 열림)

AWS는 Amazon RDS for Oracle 및 SQL Server 사용자를 위해 비용 효율성과 확장성을 극대화할 수 있는 네 가지 신규 기능을 발표했습니다. 이번 업데이트에는 비프로덕션 환경을 위한 SQL Server Developer Edition 지원, CPU 최적화가 가능한 최신 M7i/R7i 인스턴스 도입, 그리고 최대 128TiB까지 확장된 스토리지 용량이 포함되었습니다. 이를 통해 기업은 개발부터 운영 단계까지 데이터베이스 라이선스 및 인프라 비용을 대폭 절감하면서도 성능 요구 사항에 맞춰 유연하게 자원을 관리할 수 있게 되었습니다. **비프로덕션 환경을 위한 SQL Server Developer Edition 지원** * 개발 및 테스트 워크로드에서 Enterprise Edition의 모든 기능을 라이선스 비용 없이 무료로 사용할 수 있는 SQL Server Developer Edition이 RDS에 추가되었습니다. * 사용자는 Amazon S3에 SQL Server 바이너리 파일을 업로드하여 인스턴스를 생성할 수 있으며, 기존 데이터를 백업 및 복원 방식으로 간편하게 마이그레이션할 수 있습니다. * 자동 백업, 소프트웨어 업데이트, 모니터링 등 RDS의 관리형 기능을 그대로 활용하면서 비프로덕션 환경의 운영 비용을 효과적으로 줄일 수 있습니다. **M7i 및 R7i 인스턴스 도입과 CPU 최적화** * RDS for SQL Server에서 M7i 및 R7i 인스턴스를 지원하여 이전 세대 인스턴스 대비 최대 55%의 비용 절감 효과를 제공합니다. * 인스턴스 비용과 라이선스 비용을 분리하여 청구함으로써 비용 구조의 투명성을 높였으며, 최신 사양의 컴퓨팅 성능을 보다 저렴하게 이용할 수 있습니다. * 'CPU 최적화(Optimize CPU)' 기능을 통해 메모리와 스토리지 용량은 유지하면서 필요한 vCPU 수만 활성화함으로써, 코어 기반 라이선스 비용을 최적화할 수 있습니다. **스토리지 용량 및 성능 확장** * RDS for Oracle 및 SQL Server의 최대 스토리지 용량이 기존 64TiB에서 128TiB로 두 배 확장되었습니다. * io2 Block Express 볼륨을 지원하여 대규모 엔터프라이즈 데이터베이스 운영에 필수적인 고성능 IOPS와 고용량을 동시에 확보할 수 있습니다. * 확장된 스토리지 한도와 유연한 확장 옵션을 통해 급증하는 데이터 규모에도 인프라 재설계 없이 안정적으로 대응이 가능합니다. 비용 절감이 시급한 프로젝트라면 개발 및 테스트 환경을 즉시 SQL Server Developer Edition으로 전환하여 라이선스 비용을 제거하는 것이 좋습니다. 또한, 라이선스 비용 부담이 큰 고사양 데이터베이스의 경우 M7i/R7i 인스턴스로 전환하고 CPU 최적화 기능을 적용하여 성능과 비용의 균형을 맞추는 전략을 권장합니다.

aws원문

AWS 데이터베이스용 Database Savings Plans를 (새 탭에서 열림)

AWS는 관리형 데이터베이스 서비스의 비용을 최대 35%까지 절감할 수 있는 새로운 요금 모델인 'Database Savings Plans'를 출시했습니다. 사용자는 1년 동안 일정 금액의 시간당 지출($/hour)을 약정함으로써, 특정 리전이나 엔진에 국한되지 않고 다양한 데이터베이스 리소스에 대해 자동적인 할인 혜택을 받을 수 있습니다. 이 플랜은 클라우드 현대화나 글로벌 확장 과정에서 데이터베이스 환경이 변하더라도 유연하게 비용 최적화를 유지할 수 있도록 설계되었습니다. **Database Savings Plans의 핵심 가치와 유연성** * **시간당 약정 모델:** 1년 기간 동안 일정액의 시간당 사용량을 약정하며, 약정 금액을 초과하는 사용분은 일반 온디맨드 요금으로 청구됩니다. * **광범위한 유연성:** 특정 리전, 인스턴스 제품군, 크기에 얽매이지 않고 지원되는 모든 데이터베이스 서비스에 할인이 자동 적용됩니다. * **현대화 지원:** 프로비저닝 방식에서 서버리스로 전환하거나, 데이터베이스 엔진을 변경(예: 상용 DB에서 오픈소스 기반 Aurora로 전환)하더라도 할인 혜택이 중단 없이 유지됩니다. **서비스별 지원 범위 및 할인율 상세** * **지원 서비스:** Amazon Aurora, RDS, DynamoDB, ElastiCache, DocumentDB, Neptune, Keyspaces, Timestream, AWS DMS 등 주요 관리형 데이터베이스를 모두 포함합니다. * **배포 모델별 혜택:** 서버리스 배포의 경우 온디맨드 대비 최대 35%, 프로비저닝된 인스턴스는 최대 20%의 할인율이 적용됩니다. * **처리량 기반 할인:** DynamoDB 및 Keyspaces의 온디맨드 처리량은 최대 18%, 프로비저닝된 용량은 최대 12%의 비용 절감이 가능합니다. **구매 및 운영 관리** * **통합 관리:** AWS Billing 및 비용 관리 콘솔을 통해 구매 프로세스를 진행할 수 있으며, 기존의 비용 관리 도구로 활용률(Utilization)과 커버리지를 분석할 수 있습니다. * **자동 업데이트:** 향후 새로운 데이터베이스 엔진, 인스턴스 유형 또는 신규 리전이 출시될 경우에도 별도의 조치 없이 Savings Plans 혜택이 자동으로 확장 적용됩니다. **실용적인 권장 사항** 1년 이상의 장기적인 워크로드를 운영하거나, 마이크로서비스 아키텍처 도입으로 인해 여러 종류의 데이터베이스를 혼용하는 기업에게 매우 유리합니다. 특히 서버리스로의 전환이나 리전 확장을 계획 중이라면, 기존의 예약 인스턴스(RI)보다 훨씬 유연한 이 플랜을 통해 관리 부담을 줄이면서 비용 효율을 극대화할 수 있습니다.

figma원문

며칠의 지연 시간에서 실 (새 탭에서 열림)

피그마(Figma)는 급격한 사용자 증가와 데이터 볼륨 확대에 대응하기 위해 기존의 배치 기반 동기화 시스템을 실시간 증분 동기화(Incremental Synchronization) 파이프라인으로 전면 재구축했습니다. 과거 수일이 소요되던 데이터 동기화 지연 시간을 근실시간(Near Real-time) 수준으로 단축함으로써 데이터 분석의 신속성과 정확성을 확보했습니다. 이 과정에서 상용 솔루션 대신 자체 인프라에 최적화된 기술 스택을 선택하여 비용 절감과 확장성이라는 두 마리 토끼를 잡는 데 성공했습니다. **기존 배치 동기화 방식의 한계와 비용 문제** * 2020년에 설계된 초기 시스템은 매일 전체 테이블을 `SELECT *` 쿼리로 조회하여 S3에 업로드하고 Snowflake로 가져오는 단순한 구조였습니다. * 데이터 규모가 커짐에 따라 동기화 작업이 6시간에서 길게는 수일까지 지연되었으며, 이를 처리하기 위해 고가의 데이터베이스 복제본을 유지하는 데 매년 수백만 달러의 비용이 발생했습니다. * 동기화 지연은 전사 KPI 분석 및 비즈니스 의사결정을 방해하는 핵심 병목 구간이 되었습니다. **상용 솔루션 대신 자체 구축을 선택한 이유** * **유연성:** Amazon RDS와 같은 특정 클라우드 벤더의 API를 활용해 복제본 유지 관리 오버헤드 없이 직접 스냅샷을 생성하는 등 인프라 최적화가 필요했습니다. * **비용 효율성:** 대규모 데이터 환경에서 상용 솔루션을 사용할 경우 자체 구축 대비 약 5~10배 이상의 비용이 발생할 것으로 예상되었습니다. * **확장성:** 피그마의 지속적인 성장에 맞춰 빠르게 혁신하고 제어할 수 있는 맞춤형 파이프라인이 필요했습니다. **증분 동기화를 위한 기술적 아키텍처** * **스냅샷 및 데이터 적재:** Amazon RDS의 스냅샷 내보내기 기능을 사용해 S3로 초기 데이터를 복사하고, Snowflake의 `COPY INTO` 문을 통해 베이스 테이블에 로드합니다. * **CDC(Change Data Capture) 스트리밍:** Kafka Connect를 활용해 Postgres의 변경 로그를 실시간으로 캡처하고, Amazon MSK를 거쳐 Snowflake의 CDC 테이블로 스트리밍합니다. * **증분 병합(Merge):** Snowflake의 저장 프로시저(Stored Procedure)와 태스크(Task) 기능을 이용해 베이스 테이블과 CDC 데이터를 주기적으로 병합하는 맞춤형 `MERGE` 로직을 구현했습니다. **데이터 무결성을 위한 워크플로우 설계** * **부트스트랩(Bootstrap):** 새로운 테이블을 파이프라인에 추가할 때 스키마 진화에 대응할 수 있도록 아티팩트를 버전화하고, 원자적 뷰(View) 업데이트를 통해 서비스 중단 없는 전환을 지원합니다. * **검증(Validation):** 부분적 실패, 설정 오류, 소스 데이터의 이상 현상으로 인한 데이터 부패를 방지하기 위해 파이프라인 전 과정에서 데이터의 정확성과 일관성을 검증하는 프로세스를 통합했습니다. 데이터 파이프라인의 성능 한계에 직면한 조직은 단순히 컴퓨팅 파워를 늘리기보다, 전체 데이터를 옮기지 않는 '증분 동기화'와 자사 환경에 최적화된 CDC 기술 스택을 도입함으로써 비용과 성능 문제를 근본적으로 해결할 수 있습니다. 특히 대규모 환경에서는 벤더 종속성을 탈피한 자체 아키텍처 설계가 장기적인 확장성 면에서 더 유리할 수 있습니다.

figma4분 읽기큐레이션 요약

데이터베이스 아키텍처

Figma는 사용자와 기능 증가로 단일 PostgreSQL 데이터베이스의 CPU 사용률과 지연 시간이 급증하자, 장애 위험을 선제적으로 낮추기 위해 멀티 데이터베이스 구조로 전환했다. 단기적으로 인스턴스 확장, 읽기 복제본, PgBouncer 등을 도입했지만 쓰기 부하와 복제 지연 문제는 해결하지 못했다. 수평 샤딩이나 NoSQL 전환 대신, 연관된 테이블 그룹을 별도 데이터베이스로 옮기는 수직 파티셔닝을 장기 해법으로 선택했다. ## 단일 데이터베이스의 확장 한계 - Figma는 권한, 파일 정보, 댓글 등 대부분의 메타데이터를 하나의 대형 Amazon RDS 데이터베이스에 저장했다. - 데이터베이스 트래픽은 매년 약 3배씩 증가했다. - 2020년 피크 시간대 CPU 사용률이 65%를 넘었고, 사용량이 한계에 가까워질수록 지연 시간이 예측하기 어려워졌다. - 데이터베이스가 완전히 포화되면 Figma 전체가 작동을 멈출 수 있었기 때문에, 장애가 발생하기 전에 확장 문제를 해결할 필요가 있었다. ## 단기적인 안정화 조치 Figma는 장기적인 구조 변경을 준비하는 동안 약 1년의 추가 여유를 확보하기 위해 다음 조치를 시행했다. - RDS 인스턴스를 `r5.12xlarge`에서 `r5.24xlarge`로 확장해 CPU 처리 여력을 늘렸다. - 여러 개의 read replica를 구성해 읽기 트래픽을 분산했다. - 새로운 사용 사례에는 별도 데이터베이스를 사용해 기존 데이터베이스의 성장을 제한했다. - PostgreSQL 연결 풀러인 PgBouncer를 도입해 수천 개에 달하는 데이터베이스 연결이 주 데이터베이스에 미치는 영향을 줄였다. - PgBouncer는 애플리케이션과 RDS 사이에서 연결을 관리하고 재사용하는 계층으로 동작했다. ## 읽기 복제본만으로는 부족했던 이유 - 데이터베이스 사용량을 분석한 결과, 데이터 수집·수정·삭제와 같은 쓰기 작업도 상당한 부하를 차지했다. - 모든 읽기 요청을 replica로 옮길 수 없었다. - 일부 기능은 복제 지연(replication lag)에 민감해 최신 데이터가 반드시 주 데이터베이스에서 제공되어야 했다. - 따라서 읽기와 쓰기 양쪽 모두에서 원본 데이터베이스의 작업을 추가로 분산해야 했다. ## 수평 확장 방안의 검토 Figma는 테이블을 여러 데이터베이스에 분산하는 수평 샤딩도 검토했지만, 다음과 같은 부담이 있었다. - Figma가 사용하는 PostgreSQL과 기본적으로 호환되지 않는 관리형 수평 확장 솔루션이 많았다. - NoSQL이나 MySQL 기반 Vitess로 이전하려면 애플리케이션에 큰 변경이 필요했다. - 마이그레이션 과정에서 이중 읽기·쓰기 구조를 운영해야 하므로 복잡성이 커졌다. - PostgreSQL 호환 NewSQL을 선택하면 클라우드 환경에서 매우 큰 분산 PostgreSQL 클러스터를 운영하는 초기 고객이 될 위험이 있었다. - 관리형 솔루션은 내부 동작과 확장 한계를 통제하기 어렵고, Figma 규모에서 충분히 검증되지 않은 문제를 직접 겪을 수 있었다. - 직접 호스팅하면 운영 지식과 인력을 새로 확보해야 하며, 상당한 운영 비용이 발생했다. ## 테이블 그룹 단위의 수직 파티셔닝 Figma는 수평 샤딩 대신 수직 파티셔닝을 선택했다. - 수직 파티셔닝은 테이블 또는 컬럼을 다른 데이터베이스로 이동하는 방식이다. - Figma는 개별 테이블의 행을 여러 데이터베이스로 쪼개는 대신, 서로 관련된 테이블 그룹 전체를 별도 데이터베이스로 옮겼다. - 이 방식은 기존 데이터베이스의 부하를 즉시 줄일 수 있었다. - 장기적으로는 특정 테이블 그룹에 대해 향후 수평 샤딩을 적용할 수 있는 기반도 제공했다. - 기존 PostgreSQL 생태계와 애플리케이션 구조를 크게 바꾸지 않고 확장할 수 있다는 점이 장점이었다. ## 분할 대상 선정 기준 데이터베이스를 분리하기 전에 어떤 테이블을 옮길지 평가해야 했다. 주요 기준은 다음 두 가지였다. - **영향도(Impact)** - 테이블을 이동했을 때 데이터베이스 작업량이 크게 줄어야 했다. - Figma는 쿼리에 대한 평균 활성 세션 수(AAS)를 사용해 부하를 측정했다. - PostgreSQL의 `pg_stat_activity`를 10밀리초 간격으로 조회해 쿼리별 활성 상태와 CPU 대기 관련 정보를 분석했다. - **격리성(Isolation)** - 분리 대상 테이블이 다른 테이블과 강하게 결합되어 있지 않아야 했다. - 테이블 간 의존성이 높으면 데이터베이스 간 조인과 트랜잭션 처리가 복잡해지므로, 독립적으로 이동할 수 있는 영역을 우선했다. 결국 Figma의 접근 방식은 단일 데이터베이스를 무리하게 확장하는 대신, 부하가 크고 다른 기능과의 결합도가 낮은 테이블 그룹부터 별도 데이터베이스로 분리하는 것이었다. 실무에서도 먼저 읽기 부하뿐 아니라 쓰기 부하와 복제 지연을 함께 측정하고, 수평 샤딩보다 운영 복잡성이 낮은 수직 분할부터 검토하는 것이 현실적인 전략이다.

원문 읽기(새 탭에서 열림)
figma4분 읽기큐레이션 요약

사후 분석: 202

2020년 1월 21~22일 Figma 장애는 장시간 실행된 고비용 쿼리와 PostgreSQL의 잘못된 쿼리 실행 계획, 그리고 이로 인해 누적된 공격적 autovacuum이 복합적으로 발생한 사건이었다. 1월 21일에는 문제 쿼리를 취소해 복구했지만, 그 여파로 데이터베이스 정리 작업이 밀리면서 다음 날 쓰기 IOPS와 잠금 경합이 급증했다. Figma는 PostgreSQL 11로 업그레이드해 문제를 안정화했고, 이후 고비용 쿼리 모니터링과 실행 시간 제한을 강화하기로 했다. ## 장애 발생 경과 ### 1월 21일: 장시간 실행 쿼리 - 오전 6시 11분, 자동 모니터링에서 오류율 증가를 감지했다. - 조사 결과, 데이터베이스 CPU를 과도하게 사용하는 장시간 실행 쿼리가 발견됐다. - 오전 6시 54분 해당 쿼리를 취소하자 성능이 정상으로 돌아왔다. - 그러나 쿼리 취소 과정에서 데이터베이스 내부에 정리해야 할 작업이 누적되었고, 이것이 다음 날 장애의 배경이 됐다. ### 1월 22일: 쓰기 부하와 잠금 경합 - 데이터베이스 CPU는 평소보다 낮았지만 쓰기 IOPS와 잠금 경합이 증가했다. - 오전 11시 42분에는 API 요청이 대기열에 쌓이며 일부 사용자가 서비스를 이용할 수 없게 됐다. - 불필요한 쿼리를 취소하고 할당된 IOPS를 늘려 일시적으로 안정화했지만, 오후 2시경 다시 성능이 악화됐다. - 데이터베이스를 재시작해 문제를 일으킨 것으로 추정한 백그라운드 프로세스를 임시 비활성화했다. - 오후 7시부터 긴급 점검을 진행하며 PostgreSQL을 업그레이드했고, 오후 8시 15분 서비스와 데이터베이스 지표가 정상화됐다. ## 공격적 autovacuum의 영향 - PostgreSQL의 autovacuum은 오래된 행 버전을 정리하고 트랜잭션 ID 고갈을 방지하는 자동 유지보수 작업이다. - 1월 21일 장시간 쿼리가 종료된 뒤 정리 대상 데이터가 대량으로 쌓였다. - 이 backlog가 임계치를 넘으면서 트랜잭션 ID 래핑을 막기 위한 더 공격적인 autovacuum이 실행됐다. - 당시 사용하던 PostgreSQL 버전에서는 이 작업이 테이블 잠금과 쓰기 작업에 큰 영향을 줬다. - Figma가 대형 테이블에서 실행 중인 autovacuum을 취소하자 지표가 일시적으로 개선됐지만, 작업은 다시 재개됐다. - `autovacuum_freeze_max_age` 값을 조정하고 데이터베이스를 재시작해야 공격적 autovacuum을 완전히 억제할 수 있었다. - 다만 autovacuum을 비활성화한 뒤에도 쓰기 지연과 잠금 경합이 계속되어, 이것만이 유일한 원인은 아니라고 판단했다. ## 잘못된 쿼리 실행 계획 - 문제의 핵심 쿼리는 복잡한 서브쿼리를 포함하고 있었고, 잠금 경합에 반복적으로 관여했다. - PostgreSQL 9의 통계 정보가 변경된 뒤 쿼리 플래너가 비효율적인 실행 계획을 선택한 것으로 분석됐다. - 실행 계획은 실제 결과가 3개 행뿐인데도 2천만 개 이상의 행을 반환할 것으로 잘못 추정했다. - 그 결과 인덱스를 사용하지 않고 전체 테이블 스캔을 수행했다. - 처리 과정에서 임시 버퍼에 대량의 데이터를 기록해 높은 쓰기 IOPS와 임시 데이터 사용량을 유발했다. - 즉, 낮은 CPU 사용률만으로 데이터베이스 상태가 양호하다고 판단하기 어려웠으며, 쓰기 지연·잠금·임시 버퍼 사용량을 함께 살펴야 했다. ## PostgreSQL 11 업그레이드 - PostgreSQL 9.6 이후에는 autovacuum과 관련된 중요한 최적화가 포함됐다. - PostgreSQL 10 이상에서는 Amazon RDS의 성능 분석 도구가 개선되어 원인 조사에 도움이 된다. - Figma는 이미 스테이징 환경을 PostgreSQL 11로 업그레이드하고 수개월간 테스트한 상태였다. - 운영 환경 업그레이드 절차도 사전에 마련해 두었기 때문에 긴급 상황에서도 업그레이드를 진행할 수 있었다. - PostgreSQL 11의 개선된 쿼리 플래너는 문제가 된 실행 계획이 선택될 가능성을 제거했다. - autovacuum의 성능 특성도 PostgreSQL 9에서 11로 오면서 개선되어 두 가지 주요 원인을 함께 완화했다. ## 후속 조치 - 고비용·장시간 실행 쿼리에 대한 모니터링을 강화한다. - 쿼리가 실행될 수 있는 시간에 더 엄격한 제한을 둔다. - 실행 계획의 예상 행 수와 실제 행 수 사이의 큰 차이를 지속적으로 점검한다. - CPU뿐 아니라 쓰기 IOPS, 쓰기 지연, 잠금 경합, 임시 버퍼 사용량, autovacuum backlog를 함께 모니터링해야 한다. - 데이터베이스 버전 업그레이드는 장애 발생 후 처음 검토하기보다, 스테이징 테스트와 운영 전환 계획을 미리 준비해야 한다. 실무적으로는 장시간 쿼리에 타임아웃을 설정하고, 정기적으로 `EXPLAIN ANALYZE`와 실행 계획 변화를 검토하며, autovacuum 상태를 별도 지표로 관리하는 것이 중요하다. alc-vesm.

원문 읽기(새 탭에서 열림)