피드로 돌아가기
Amazon S3 Files: from Kafka to S3 via NFS
Dev.toDev.to
Infrastructure

S3 Files 도입을 통한 Kafka 이벤트 처리의 POSIX 파일 시스템 추상화 및 캐싱 최적화

Amazon S3 Files: from Kafka to S3 via NFS

Alexander Smirnoff2026년 4월 13일18intermediate

Context

기존 S3 Object Storage의 API 기반 접근 방식은 SDK 의존도를 높여 애플리케이션 코드의 복잡도를 증가시키는 한계 존재. POSIX 표준 파일 시스템의 Append-style Write 및 Directory 탐색 기능을 S3의 비용 효율성과 내구성에 결합할 필요성 대두.

Technical Solution

  • Amazon S3 Files를 활용하여 S3 Bucket을 NFS로 마운트함으로써 SDK 호출 없이 표준 File System Call(open, write_bytes)로 데이터 저장 구조 설계
  • S3의 Object Storage 특성과 EFS의 SSD 기반 Cache Layer를 결합하여 데이터 읽기 성능 최적화
  • Prefix별 Cache Import Threshold 설정을 통해 파일 크기에 따른 캐싱 전략을 차별화하여 메모리 효율성 확보
  • Lambda Event Source Mapping(ESM)과 Confluent Cloud Kafka를 연동하여 수신 데이터를 /mnt/events 경로에 직접 기록하는 Ingest Pipeline 구축
  • L2 Construct 부재 문제를 L1 CfnResource를 통한 CloudFormation 직접 정의 방식으로 해결하여 인프라 자동화 구현

- S3 Files 도입 시 파일 크기별 Cache Import Threshold를 정밀하게 설정하여 Warm Read 성능 확보 여부를 검토할 것 - L2 CDK Construct 지원 여부를 확인하고 부재 시 L1 CfnResource 기반의 인프라 정의 전략을 수립할 것 - Read Latency에 민감한 워크로드의 경우 Cold Read와 Warm Read의 성능 차이를 설계 제약 사항으로 반영할 것 - S3 Bucket의 Versioning 설정 필수 여부를 확인하여 서비스 역할(Service Role)과 권한 체계를 구성할 것

원문 읽기