> ## 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.

# Player Data

> 진행 상황에 사용되는 내부, 읽기 전용, 타이틀 데이터를 포함하여 플레이어별로 사용자 지정 키-값 필드를 저장하기 위한 PlayFab Player Data를 살펴봅니다.

Player Data는 플레이어 엔터티(`title_player_account`, `master_player_account`, `character`)로 범위가 지정된 플레이어별 스토리지입니다. 이를 사용하여 개별 플레이어와 연결된 게임 진행 상황, 기본 설정 및 기타 정보를 저장할 수 있습니다.

Player Data는 각기 다른 엔터티 유형으로 범위가 지정된 PlayFab의 여러 스토리지 기능 중 하나입니다. 비교를 위해서는 [엔터티 개체](/services/playfab/live-service-management/game-configuration/entities/entity-objects#related-features)를 참조하세요.

## 스토리지 옵션

PlayFab은 플레이어 데이터를 저장하는 두 가지 방법을 제공합니다.

* [엔터티(Entities)](/services/playfab/live-service-management/game-configuration/entities): 플레이어, 캐릭터, 그룹 전반에 걸쳐 개체와 파일에 데이터를 저장할 수 있습니다.
* [Player Data/UserData](/services/playfab/player-progression/player-data/quickstart): 플레이어를 위한 키/값 쌍 데이터를 저장할 수 있습니다.

가장 큰 유연성과 최상의 성능을 제공하기 위해, *모든* 새 타이틀은 [엔터티 개체](/services/playfab/live-service-management/game-configuration/entities/entity-objects)를 사용하는 것이 좋습니다.

PlayFab API에서는 함수 이름에 **UserData**라는 용어를 사용합니다. **Game Manager**에서는 이 개념을 **Player Data**로 설명합니다. 두 개념은 동일하며 상호 교환 가능합니다.

플레이어 데이터에 대한 액세스 모드는 세 가지가 있습니다.

* 클라이언트(Client): 타이틀 클라이언트가 읽고 업데이트할 수 있는 플레이어 데이터입니다. 클라이언트 API [UpdateUserData](xref:titleid.playfabapi.com.client.playerdatamanagement.updateuserdata)를 사용해 생성, 업데이트, 삭제하고, [GetUserData](xref:titleid.playfabapi.com.client.playerdatamanagement.getuserdata)를 사용해 플레이어의 데이터를 읽습니다.
* 읽기 전용(Read Only): 서버에서 만들거나 업데이트하는 플레이어 데이터입니다. 타이틀 클라이언트는 이 데이터를 읽을 수는 있지만 업데이트할 수는 없습니다. 서버 API [UpdateUserReadOnlyData](xref:titleid.playfabapi.com.server.playerdatamanagement.updateuserreadonlydata)를 사용해 생성, 업데이트, 삭제하고, 클라이언트 API [GetUserReadOnlyData](xref:titleid.playfabapi.com.client.playerdatamanagement.getuserreadonlydata)를 사용해 플레이어의 타이틀별 데이터를 읽습니다. 이 데이터는 플레이어에게 표시되지만 서버에서만 수정할 수 있습니다.
* 내부(Internal): 서버에서만 사용할 수 있는 플레이어 데이터입니다. 서버 API [UpdateUserInternalData](xref:titleid.playfabapi.com.server.playerdatamanagement.updateuserinternaldata)를 사용해 생성, 업데이트, 삭제하고, [GetUserInternalData](xref:titleid.playfabapi.com.server.playerdatamanagement.getuserinternaldata)를 사용해 플레이어의 타이틀별 데이터를 읽습니다. 이 데이터는 서버 전용이며 클라이언트에서는 볼 수 없습니다.

플레이어 데이터를 사용할 때 클라이언트 API에는 User Data와 User Read Only Data만 제공됩니다. 다른 플레이어가 읽을 수 있는 플레이어 데이터가 있다면, 데이터를 쓸 때 `Permission` 값을 `Public`으로 설정해야 합니다.

## 플레이어 데이터와 플레이어 게시자 데이터 비교

[플레이어 데이터](/services/playfab/player-progression/player-data/quickstart)는 게임 타이틀에 특정한 플레이어 정보입니다. 던전에서의 플레이어 위치 저장이나 기타 게임 관련 데이터와 같은 타이틀별 정보에 사용해야 합니다.

플레이어 게시자 데이터(Player Publisher data)는 플레이어 계정에 연결된 데이터로, 플레이어 계정 *및* 타이틀과는 반대되는 개념입니다. 스튜디오 내 모든 타이틀에 관련된 플레이어에 대한 정보를 저장하는 데 사용됩니다(크로스 타이틀 보상 등을 위해 타이틀별 정보도 포함할 수 있음).

PlayFab의 한 스튜디오 내의 모든 타이틀은 기본적으로 Publisher ID를 공유하며, 이 ID가 이 관계를 정의합니다. 플레이어 계정은 게시자 계층에 존재하며 동일한 Publisher ID를 가진 모든 타이틀에서 공유됩니다(그리고 추가적으로 타이틀별로 별개의 플레이어 데이터를 갖습니다).

한 스튜디오 내에서 서로 다른 Publisher ID를 가진 타이틀이 있거나, 서로 다른 스튜디오에서 동일한 Publisher ID를 공유하는 타이틀이 있어야 한다면, [PlayFab 커뮤니티 포럼](https://community.playfab.com/)에서 티켓을 열 수 있으며 **Developer Success** 팀이 도와드립니다.

<Note>
  *플레이어* 게시자 데이터를 [게시자 데이터](/services/playfab/live-service-management/game-configuration/titledata/using-publisher-data)와 혼동하지 마세요. 게시자 데이터는 모든 타이틀에서 공유되는 키/값 쌍 데이터입니다(플레이어별이 *아님*).
</Note>

플레이어 게시자 데이터의 사용법은 플레이어 데이터의 사용법과 거의 동일합니다. 둘 *모두* 문자열을 JSON 블롭(또는 다른 임의의 문자열 값)에 매핑하는 사전(dictionary)입니다.

자세한 내용은 [How to use player publisher data to grant a reward for playing multiple titles](/services/playfab/player-progression/player-data/using-player-publisher-data)를 참조하세요.


## Related topics

- [player_data_exported](/ko/services/playfab/api-references/events/PlayerIdentity/player-data-exported.md)
- [Player Data Reset 도구 (XblPlayerDataReset.exe)](/ko/tools/tools-services/live-player-data-reset.md)
- [PFPlayerDataManagementUpdateUserDataResult](/ko/services/playfab/api-references/c/pfplayerdatamanagementtypes/structs/pfplayerdatamanagementupdateuserdataresult.md)
- [PFPlayerDataManagementGetUserDataRequest](/ko/services/playfab/api-references/c/pfplayerdatamanagementtypes/structs/pfplayerdatamanagementgetuserdatarequest.md)
- [PFPlayerDataManagementClientGetUserDataResult](/ko/services/playfab/api-references/c/pfplayerdatamanagementtypes/structs/pfplayerdatamanagementclientgetuserdataresult.md)
