기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
GAMESUS01-BP01 사용자 콘텐츠, 구독자 정보 및 게임 내 구매에 맞게 조정된 패턴에 맞는 스토리지 기술 사용
유형, 보존 요구 사항 및 액세스 빈도별로 데이터를 분류해야 합니다. 이를 통해 게임 또는 백엔드 서비스가 생성하는 수많은 데이터 유형에 가장 최적화된 스토리지 솔루션을 선택할 수 있습니다. 빠르게 변경되는 데이터는 키 값 또는 인 메모리 데이터베이스 서비스에 저장해야 합니다. 트랜잭션 데이터는 관계형 데이터베이스 서비스에 저장해야 합니다. 대용량 파일, 게임 자산 또는 사용자 생성 콘텐츠는 객체 스토리지 서비스에 저장해야 합니다.
이 모범 사례가 확립되지 않을 경우 노출되는 위험 수준: 높음
구현 지침
게임은 액세스 빈도, 지연 시간 및 비용에 최적화된 스토리지 솔루션이 필요한 다양한 데이터 유형을 생성하고 사용합니다. 저장된 데이터는 태그를 사용하여 분류하여 제거할 수 있거나 장기간 저장해야 하는 데이터를 구분해야 합니다.
다음 서비스는 다양한 게임 사용 사례에 적합합니다.
Amazon Aurora(MySQL 및 PostgreSQL과 호환)는 고가용성, 저지연 및 자동 조정을 제공하므로 플레이어 계정 관리 및 인증, 게임 내 경제, 리더보드 및 플레이어 순위, 게임 상태 지속성, 이벤트 및 캠페인 관리, 다중 리전 및 고가용성 배포와 같은 대량의 트랜잭션 데이터를 처리하는 데 매우 적합합니다.
Amazon DynamoDB는 지연 시간이 짧고 처리량이 높으며 확장성이 원활한 것으로 알려진 완전관리형 NoSQL 데이터베이스로, 실시간 플레이어 데이터, 세션 관리, 인벤토리, 게임 내 경제, 실시간 멀티플레이어 게임 상태, 매치메이킹, 이벤트 로깅 및 글로벌 시청자를 위한 조정을 처리하는 데 이상적입니다.
Amazon DocumentDB(MongoDB와 호환)는 확장 가능하고 지연 시간이 짧은 문서 지향 데이터베이스 서비스를 제공하며, 인벤토리 시스템, 플레이어 프로필 및 사용자 지정, 게임 월드 및 절차적으로 생성된 콘텐츠, 소셜 및 플레이어 상호 작용, 분석 및 동작 추적, 게임 내 메타데이터 및 구성과 같은 유연한 반정형 데이터를 저장하는 데 적합합니다.
Amazon ElastiCache는 Redis 또는 Memcached를 사용한 인 메모리 캐싱을 지원하여 빠른 데이터 액세스와 응답 시간 단축을 제공합니다. 이는 원활한 사용자 경험을 위해 속도와 성능이 필수적인 실시간 멀티플레이어 게임에 매우 중요합니다. ElastiCache는 실시간 리더보드, 세션 관리, 게임 메타데이터 캐싱, 게임 내 채팅 및 메시징, 매치메이킹, 실시간 분석 및 원격 측정, 트래픽이 많은 이벤트 규모 조정에 게임에 사용됩니다.
Amazon Simple Storage Service(S3)를 사용하여 게임 자산, 비디오, 사진, 텍스트 로그 파일 등과 같은 객체를 저장할 수 있습니다. S3는 업계 최고의 확장성, 데이터 가용성, 보안 및 성능을 제공하는 객체 스토리지 서비스입니다.
빈번하고 빈도가 낮은 데이터 액세스를 지원하는 여러 스토리지 클래스와 비용 효율적인 아카이브 스토리지를 제공하는 경우. 개발 과정에서 자주 액세스하는 데이터의 경우 스튜디오는 짧은 지연 시간과 높은 처리량 성능을 위해 S3 Standard에 객체를 저장해야 합니다. 자주 핫에서 콜드로 또는 그 반대로 이동하는 데이터의 경우 스튜디오는 S3 Intelligent-Tiering을 조사해야 합니다. Intelligent-Tiering은 데이터의 액세스 패턴을 모니터링하고 데이터를 가장 비용 효율적인 액세스 계층으로 자동으로 이동합니다.
높은 처리량과 짧은 지연 시간이 필요하고 단일 가용 영역에 있는 스튜디오의 경우 S3 Express One Zone을 사용합니다. 이렇게 하면 데이터를 단일 AZ에 복제하고 S3 표준에 비해 데이터 액세스 속도를 개선할 수 있습니다. 기록 데이터의 심층 아카이브 요구 사항을 위해 Amazon은 Amazon Glacier도 제공합니다. Amazon Glacier 스토리지 클래스는 데이터 아카이빙을 위해 특별히 구축되어 클라우드에서 고성능, 검색 유연성 및 저비용 아카이브 스토리지를 제공합니다.
Amazon Elastic Block Store를 사용하여 게임 서버 또는 자산 리포지토리가 작동하는 데 필요한 게임 서버의 바이너리, 실행 파일 및 구성을 저장할 수 있습니다. EC2 인스턴스에 연결되지 않은 미사용 볼륨을 스냅샷 처리하고 삭제해야 합니다. 이렇게 하면 불필요한 서비스 및 하드웨어의 사용량을 줄이면서 발생하는 스토리지 요금이 줄어듭니다.
구현 단계
-
게임 데이터를 유형, 보존 요구 사항 및 액세스 빈도별로 분류하고 데이터에 태그를 지정하여 단기 스토리지 요구 사항과 장기 스토리지 요구 사항을 구분합니다.
-
트랜잭션 데이터에 Amazon Aurora를 사용하고, 실시간 플레이어 데이터에 DynamoDB를 사용하고, 반정형 데이터에 DocumentDB를 사용하고, 시간에 중요한 게임 정보의 지연 시간이 짧은 캐싱에 ElastiCache를 사용합니다.
-
Amazon S3에 게임 자산, 로그 및 사용자 생성 콘텐츠를 저장하고, 액세스 패턴 및 아카이브 요구 사항에 따라 적절한 스토리지 클래스(예: Intelligent-Tiering, One Zone 및 Glacier)를 선택하고, 정기적인 스냅샷 관리를 통해 게임 서버 바이너리 및 구성에 EBS를 사용합니다.