아이템 데이터베이스 구조
게임 내 아이템 데이터베이스의 구조와 설계 방식에 대한 상세 설명입니다.
기본 구조
아이템 데이터베이스는 게임 내 모든 아이템의 기본 정보와 속성을 저장하고 관리하는 핵심 시스템입니다. 효율적인 데이터 접근과 관리를 위해 계층적 구조를 채택하고 있습니다.
기본 정보
- 고유 식별자
- 이름 및 설명
- 아이템 유형
- 기본 속성
세부 속성
- 능력치 정보
- 요구사항
- 제한사항
- 특수 효과
메타데이터
- 버전 정보
- 생성/수정 시간
- 태그 정보
- 관리 데이터
시스템 데이터
- 거래 정보
- 드롭 설정
- 획득 조건
- 이벤트 데이터
데이터 계층
아이템 데이터는 여러 계층으로 구성되어 있으며, 각 계층은 특정 목적과 역할을 담당합니다. 이러한 계층 구조는 데이터의 일관성과 확장성을 보장합니다.
1. 기본 계층
모든 아이템의 기본이 되는 정보를 저장합니다. 이름, 설명, 기본 속성 등이 포함됩니다.
2. 특성 계층
아이템의 고유한 특성과 능력치 정보를 저장합니다. 장비 능력치, 소비 효과 등이 포함됩니다.
3. 인스턴스 계층
실제 게임 내에서 존재하는 아이템의 상태 정보를 저장합니다. 내구도, 강화 수치 등이 포함됩니다.
데이터 관계
아이템 데이터베이스 내의 다양한 데이터 간의 관계를 정의하고 관리합니다. 이러한 관계는 아이템 시스템의 복잡한 상호작용을 가능하게 합니다.
아이템 세트 관계
제작 관계
저장소 구조
아이템 데이터는 효율적인 접근과 관리를 위해 여러 저장소에 분산되어 저장됩니다. 각 저장소는 특정 목적에 최적화되어 있습니다.
주 저장소
캐시 저장소
검색 저장소
데이터 흐름
아이템 데이터의 생성부터 사용까지의 전체 흐름을 정의합니다. 각 단계에서의 데이터 처리와 변환 과정을 포함합니다.
단계별 설명
1. 데이터 생성 단계
아이템의 기본 정보부터 특수 속성까지 단계적으로 데이터를 생성하고 구성합니다. 메타데이터를 포함한 모든 필요한 정보가 이 단계에서 정의됩니다.
2. 데이터 검증 단계
생성된 데이터의 유효성을 다각도로 검증합니다. 필수 필드, 값 범위, 타입별 특수 요구사항 등을 확인하여 데이터의 무결성을 보장합니다.
3. 저장 단계
검증된 데이터를 메인 데이터베이스에 저장하고, 캐시와 검색 인덱스에도 동기화하여 빠른 접근과 검색이 가능하도록 합니다.
4. 사용 단계
캐시 우선 조회 전략을 통해 효율적으로 데이터를 제공하며, 필요한 경우 데이터베이스를 조회하고 캐시를 갱신합니다.
데이터베이스 스키마
주요 테이블 설명:
- Items: 아이템의 기본 정보를 저장하는 마스터 테이블
- ItemInstances: 실제 게임 내에 존재하는 아이템 인스턴스
- ItemProperties: 아이템의 세부 속성 정보
- ItemEffects: 아이템의 특수 효과 정보
- ItemTypes: 아이템 유형 분류
- ItemRarities: 아이템 희귀도 정보
- ItemSets: 세트 아이템 정보
- ItemModifiers: 아이템 인스턴스의 수정자(강화, 인챈트 등)