S3 Files 출시, 파일 시스템과 객체 스토리지를 하나로!

by DD
1개월 전
조회수 26

S3 Files는 S3 데이터를 EFS를 통해 파일 시스템으로 접근하게 해주는 새로운 기능으로, 기존 S3 객체를 파일처럼 사용할 수 있게 함

EFS를 캐시 레이어로 활용하여 파일 시스템의 친숙한 인터페이스를 제공하지만, EFS의 비용 구조를 따른다는 단점이 존재함

데이터 동기화(Data Synchronization) 방식에 대한 이해 부족으로 인한 데이터 손실 우려와, 60초 간격의 동기화 주기에 대한 논의가 있음

ZFS의 객체 스토리지 백엔드(Object Storage Backend), Hugging Face Buckets 등 유사 기술과의 비교를 통해 기술적 차이점과 장단점을 분석함

S3 Files 아키텍처 및 작동 방식

S3 Files는 S3 버킷 또는 프리픽스를 EC2 인스턴스, 컨테이너, 또는 Lambda 함수 내에서 파일 시스템으로 마운트할 수 있게 해준다. 내부적으로는 EFS를 활용하여 파일 시스템의 기능을 제공하며, S3와 EFS 간의 데이터 동기화를 통해 일관성을 유지한다. 파일 시스템(File System)객체 스토리지(Object Storage) 간의 경계를 명확히 하여, 각 시스템의 장점을 살리는 설계를 채택했다.

비용 및 성능 트레이드오프

S3 Files는 EFS를 캐시 레이어로 사용하므로, 쓰기 작업 시 EFS에 먼저 기록되어 비용이 발생한다. 쓰기 작업(Write Operations)은 GB당 0.06달러, 캐시 저장 비용은 GB당 월 0.30달러로 책정된다. 대용량 읽기(128KB 이상)는 S3에서 직접 스트리밍되므로 비용이 발생하지 않는다. 하지만, 쓰기 중심적인 애플리케이션에서는 EFS 비용이 부담이 될 수 있다는 의견이 존재한다.

데이터 일관성 및 동기화 문제

S3 Files는 60초 간격으로 S3와 EFS 간의 변경 사항을 동기화한다. 이로 인해, 동기화 전에 S3 버킷에 직접 변경 사항이 발생하면 데이터 손실의 위험이 있다. 데이터 동기화(Data Synchronization)의 지연 시간과, S3의 결과적 일관성(Eventual Consistency)에 대한 이해 부족으로 인해 예상치 못한 문제가 발생할 수 있다는 우려가 제기되었다.

기존 S3 사용자와의 호환성

S3 Files는 기존 S3 고객이 별도의 마이그레이션 없이 사용할 수 있도록 설계되었다. 하지만, 파일 시스템과 객체 스토리지의 네임스페이스(Namespace) 의미론 차이로 인해, 일부 애플리케이션에서 예상치 못한 동작이 발생할 수 있다. S3 Files는 이러한 문제를 해결하기 위해, 파일과 객체 간의 명확한 경계를 설정하고, 필요한 경우 알림을 제공하는 방식을 채택했다.

S3 Files

댓글 0

첫 번째 댓글을 남겨보세요!