> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XBOX 서비스 Title Storage 개요

> XBOX 서비스 Title Storage가 무엇인지, 기능, 스토리지 유형 및 할당량, 스로틀 제한, 클라우드 게임 데이터를 위한 지원되는 데이터 형식에 대해 알아봅니다.

이 항목에서는 XBOX 서비스 Title Storage가 무엇인지, 그 기능이 무엇인지 설명하고 구성 방법을 보여줍니다.
XBOX 서비스 Title Storage 서비스는 플레이어별 또는 게임별 대용량 데이터를 위한 클라우드 스토리지를 제공합니다. 플레이어 통계 및 자산을 저장하는 데 사용할 수 있습니다. 모든 XBOX 플랫폼에서 실행되는 게임은 Title Storage를 사용할 수 있습니다.

<a name="ID4EW" />

## XBOX 서비스 Title Storage의 기능

XBOX 서비스 Title Storage에는 다음과 같은 상위 수준 기능이 포함됩니다.

* 플레이어, 타이틀 및 다양한 플랫폼 간에 공유 가능

* JSON, 이진 및 구성 파일 지원

<a name="ID4ETB" />

## 스토리지 유형

| 스토리지 유형            | 할당량(Managed Partners) | 할당량(Creators Program) | 용도                                                                 | 플랫폼                                                                          | 플레이어                  |
| ------------------ | --------------------- | --------------------- | ------------------------------------------------------------------ | ---------------------------------------------------------------------------- | --------------------- |
| Trusted Platform   | 플레이어당 256MB           | 플레이어당 64MB            | 저장된 게임 또는 재생/일시 중지/재개를 위한 게임 상태와 같은 플레이어별 데이터. 더 안전하지만 플랫폼 제한이 있음. | 모든 플랫폼에서 읽을 수 있지만 XBOX One 제품군(또는 이후 버전), XBOX 360 또는 Windows Phone만 쓸 수 있음. | 공개 또는 소유자 전용으로 구성 가능. |
| Universal Platform | 플레이어당 64MB            | 플레이어당 64MB            | 저장된 게임 또는 재생/일시 중지/재개를 위한 게임 상태와 같은 플레이어별 데이터.                     | 모든 플랫폼에서 읽거나 쓸 수 있음.                                                         | 공개 또는 소유자 전용으로 구성 가능. |
| Global             | 256MB                 | 256MB                 | 명단, 지도, 도전 과제 또는 아트 리소스와 같이 모든 사람이 읽을 수 있는 데이터.                    | XBOX 개발자 포털 또는 Partner Center를 통해서만 쓸 수 있고, 모든 플랫폼에서 읽을 수 있음.                | 모든 플레이어가 읽을 수 있음.     |

## 스로틀 제한

타이틀이 분당 수행할 수 있는 읽기 및 쓰기 횟수에는 제한이 없지만 일반적으로 1시간 세션당 평균적으로 분당 하나 이상 수행할 수 없습니다. 예를 들어 타이틀은 세션 시작 시 60번의 읽기 또는 쓰기를 수행할 수 있지만 나머지 시간 동안에는 더 이상 수행할 수 없습니다. XBOX 서비스가 요청을 스로틀해야 할 경우에 대비하여 타이틀은 이후에 더 많은 호출을 수행하지 않도록 강화되어야 합니다.

<Note>타이틀에 추가 읽기 또는 쓰기와 같은 특별한 파티셔닝 요구 사항이 있는 경우 Microsoft 담당자에게 문의하세요.</Note>

<a name="ID4ECF" />

## 데이터 유형

이 섹션에서는 지원되는 세 가지 유형을 설명합니다.

* [이진 정보](#ID4ENF)
* [JSON 정보](#ID4EUF)
* [구성 정보](#ID4ECAAC)

<a name="ID4ENF" />

#### 이진 정보

이진 정보에는 이미지, 사운드 및 사용자 지정 데이터와 같은 항목이 포함됩니다. 데이터는 HTTP를 통해 전송되어야 하므로 이진 데이터는 HTTP가 허용하는 문자로 인코딩되어야 합니다. 예를 들어 데이터를 16진수 문자열로 변환하거나 base64 인코딩을 사용할 수 있습니다. Title Storage는 인코딩된 데이터를 처리하지 않으므로 게임은 Title Storage에서 읽고 쓸 때 동일한 스키마를 사용하여 데이터를 인코딩하고 디코딩해야 합니다.

<a name="ID4EUF" />

#### JSON 정보

JSON 정보에는 구조화된 데이터(키-값 쌍)가 포함됩니다. JavaScript와 같이 JSON 개체를 지원하는 언어에서 JSON 개체를 사용할 수 있습니다. JSON 파일에서 데이터를 검색할 때 게임은 `selectQuery` 매개 변수를 제공하여 구조 내의 특정 항목을 반환할 수 있습니다. 예를 들어 다음 정보가 포함된 JSON 파일을 사용할 수 있습니다.

```json theme={null}
{
"difficulty" : 1,
"level" :
    [
        { "number" : "1", "quest" : "swords" },
        { "number" : "2", "quest" : "iron" },
        { "number" : "3", "quest" : "gold" },
        { "number" : "4", "quest" : "queen" }
        ],
"weapon" :
    {
            "name" : "poison",
            "timeleft" : "2mins"
    }
}
```

<Note>보안상의 이유로 JSON 데이터의 첫 번째 요소는 배열이 아니어야 합니다. 루트에 배열이 있는 JSON 데이터는 서비스에서 거부됩니다.</Note>

게임은 JSON 구조의 일부를 `selectQuery`로 선택할 수 있으며(예: `weapon.name`), 그러면 다음을 받습니다.

```json theme={null}
{
    "name" : "poison"
}
```

<a name="ID4ECAAC" />

#### 구성 정보

구성 블롭은 글로벌 타이틀 스토리지에 저장되는 데이터 구조입니다. 구성 블롭의 형식은 JSON 개체의 형식과 유사합니다. 구성 블롭에는 가능한 목록에서 설정을 반환하는 가상 노드가 포함될 수 있습니다. 가상 노드는 타이틀 또는 로캘과 같은 특정 상황에 대한 설정을 제공하는 데 유용합니다. 가상 노드에는 여러 가능한 설정과 값 및 값 중에서 선택하기 위한 조건이 포함됩니다. 다음 예제에서 `defaultCardDesign` 설정은 가상 노드의 값 중 하나를 가질 수 있습니다.

```json theme={null}
{
    "defaultCardDesign":
    {
    "_virtualNode":
    {
        "_selectBy":"titleId",
        "_sourceNodes":
        [
        {"_selector":"123456799", "_data":"RobotUnicornCard.png,binary"},
        {"_selector":"default", "_data":"StandardCard.png,binary"}
        ]
    }
    },
}
```

게임이 이 파일을 읽을 때 시스템은 `\_sourceNodes` 배열에서 값 중 하나를 선택합니다. 이 경우 항목은 게임의 타이틀 ID를 기반으로 선택됩니다. 예를 들어 게임 `12456799`를 플레이하는 플레이어는 다음을 보게 됩니다.

```json theme={null}
{
    "defaultCardDesign":"RobotUnicornCard.png,binary",
    "_sourceNodes":["defaultCardDesign:titleID:1234567899"]
}
```

게임을 플레이하지 않는 플레이어는 다음을 보게 됩니다.

```json theme={null}
{
    "defaultCardDesign":"StandardCard.png,binary",
    "_sourceNodes":["defaultCardDesign:titleID:default"]
}
```

게임은 요청의 매개 변수와 일치하는 사용자 지정 선택기를 정의할 수 있습니다. 예를 들어 이 구성 블롭의 다음 JSON 개체를 고려하세요.

```json theme={null}
{
    "defaultCardDesign":
    {
        "_virtualNode":
        {
            "_selectBy":"custom:gameMode",
            "_sourceNodes":
            [
                {"_selector":"silly", "_data":"RobotUnicornCard.png,binary"},
                {"_selector":"serious", "_data":"SeriousCard.png,binary"},
                {"_selector":"default", "_data":"StandardCard.png,binary"}
                ]
        }
    },
    "backgroundColor":"green",
    "dealerHitsOnSoft17":true
}
```

게임은 `customSelector` 매개 변수에 문자열을 전달하여 반환할 항목을 선택합니다. 예를 들어 두 번째 옵션을 얻으려면 게임이 `selectQuery`로 `gameMode.serious`를 요청합니다.

<a name="ID4E5EAC" />

## XBOX 서비스 Title Storage 사용을 시작하려면

1. 저장할 데이터의 종류를 결정합니다. 예로는 저장된 게임, 게임 상태, 일일 도전 과제, 게임 지도 및 아트 리소스가 있습니다.

2. 데이터에 액세스해야 하는 타이틀과 플랫폼을 결정합니다. Title Storage는 단일 플랫폼의 단일 타이틀 및 여러 플랫폼의 여러 타이틀에서 클라우드 데이터 액세스를 지원합니다.


## Related topics

- [Title Storage](/ko/services/xbox-services/storage/title-storage/live-title-storage-nav.md)
- [XBOX 서비스 개요](/ko/services/xbox-services/fundamentals/live-xbl-overview.md)
- [Title Storage 서비스 구성의 할당량 정보 가져오기](/ko/services/xbox-services/storage/title-storage/how-to/live-getting-title-storage-quota-info.md)
- [Partner Center에서 Title Storage 구성](/ko/services/xbox-services/storage/title-storage/config/live-title-storage-portal-config.md)
- [Title Storage 예제 코드](/ko/services/xbox-services/storage/title-storage/how-to/live-title-storage-howto-nav.md)
