모범 사례 및 FAQ
여기서는 PlayFab Insights 사용에 대한 몇 가지 모범 사례를 살펴보고 가장 자주 묻는 질문을 다룹니다.PlayFab Insights Management는 2026년 3월 31일에 사용이 중단되었습니다. 앞으로 성능과 비용을 관리하려면 Data Connections를 사용하는 것을 권장합니다. 타이틀이 아직 Insights를 사용하고 있다면 모범 사례 세부 정보는 이 문서를 계속 참고하세요. 자세한 내용은 PlayFab Digest: March feature updates를 참조하세요.
모범 사례
- 각 성능 수준에는 일정량의 캐시가 함께 제공됩니다. 일일 데이터 사용량을 계산하고 캐시에 보관할 데이터를 며칠 분량으로 할지 결정하는 것이 좋습니다. 작은 버퍼나 잘 알려진 데이터 사용량을 통해 쿼리를 수행하는 사용자는 언제 최적의 성능을 기대할 수 있는지 알 수 있습니다. 빠른 결과를 위해 예상 성능에 맞춰 시각화를 실행하는 것도 권장됩니다.
- 예를 들어, 스튜디오가 하루에 5GB의 데이터 사용량을 가진다고 가정합니다. 캐시 크기를 450+로 선택하면 캐시에 90일 분량의 데이터를 보관할 수 있습니다. 90일 실행 윈도우에서 모든 시각화를 실행하면 효율적입니다. Join, Union 및 고급 쿼리도 효율적입니다. 또 다른 옵션은 라이브 시각화를 주로 30일 윈도우에 집중시키고 근무 시간 동안에는 캐시 크기를 최대 90일로 설정하고 근무 외 시간에는 30일로 설정하는 것입니다. 이렇게 하면 비용 절감에서 큰 효율성을 만들어냅니다. 또한 데이터는 캐시에서 압축된다는 점을 기억하세요.
- Power BI와 같은 데이터 시각화 플랫폼은 종종 단일 시각화를 위해 여러 쿼리를 실행합니다. 시각화는 순차적으로 업데이트하는 것을 권장합니다. 부하가 크거나 많은 사용자가 사용하는 경우, 동시 쿼리가 더 많이 허용되는 성능 수준으로 높여 외부 도구와 분석가를 위한 동시 쿼리를 확보하는 것이 합리적일 수 있습니다.
- 예약된 확장(scheduled scaling)의 가장 일반적인 사용 사례는 표준 근무 시간에는 확장하고 근무 시간 이후와 주말에는 축소하는 것입니다. 성능 수준을 크게 변경하는 경우(예: 3단계에서 8단계로), 여러 시간 동안 더 높은 성능 수준에 머무를 의도가 있어야 합니다. 캐시에 테라바이트 단위 데이터를 빠르게 로드하고 언로드하는 것은 리소스의 비효율적인 사용입니다. 다른 모든 제한은 즉시 적용되므로 필요한 경우 확장을 변경할 수 있습니다.
- 예약된 확장은 수동 확장과 상호 배타적이지 않습니다. 한낮에 더 많은 리소스가 필요하다면 수동으로 변경할 수 있고, 예약된 확장은 예상대로 계속됩니다.
- 데이터 저장 용량을 줄이면 데이터 손실이 발생할 수 있습니다. 저장 용량을 줄이려고 하면 “Selected retention setting is lower than current setting. Doing so may result in a loss of data.”라는 메시지로 경고를 받게 됩니다. 저장 비용이 낮으므로 장기 보관을 권장합니다.
- Insights 관리 명령을 사용하면 사용자 지정 테이블을 생성하고 업데이트할 수 있습니다. 핵심 보고 및 자주 사용되는 테이블의 경우 사용자 지정 집계 테이블을 구축하는 것이 유용합니다. 집계 테이블은 일반적으로 원본 데이터보다 작은 데이터 사용량을 가집니다. 이는 쿼리 성능을 향상시키고 더 높은 성능 수준의 필요성을 줄여줍니다.
- 데이터 집계를 자동화하려면 저비용의 확장 가능한 자동화 옵션인 Azure Data Factory 사용을 권장합니다. Azure Data Factory 사용에 대한 자세한 내용은 connectivity 섹션을 참조하세요.
- 타임스탬프를 사용하여 쿼리를 제한하는 것은 좋은 데이터 관리 관행입니다. 지난 며칠 동안의 모든 데이터를 한 번에 가져오지 마세요.
FAQ
데이터를 어떻게 쿼리할 수 있나요?
- 가장 간단한 방법은 내장된 data explorer를 사용하는 것입니다.
- connectivity 섹션에는 데이터에 액세스하는 더 많은 방법에 대한 세부 정보가 있습니다.
Microsoft 인증 링크(Azure Active Directory 사용)를 보냈는데 작동하지 않았습니다. 무슨 일이 있었나요?
- 이미 PlayFab 계정이 있는 경우, 다른 인증 방법의 초대를 수락하기 전에 로그아웃해야 합니다.
성능 수준이나 데이터 보존을 변경하려고 할 때 오류가 발생하는 이유는 무엇인가요?
- 유료 계정에 등록하지 않은 경우, 성능 수준, 보존, 내보내기 및 일부 관리 명령의 변경은 사용할 수 없습니다.
- Insights 클러스터가 현재 성능 수준을 변경하는 중이라면 변경이 완료될 때까지 기다려야 합니다.
무료 성능 수준과 유료 성능 수준 간에 전환할 수 있나요?
- 물론입니다! 현재 유료 기능이 필요하지 않은 경우 무료 계층으로 되돌릴 수 있습니다.
Insights 클러스터에 데이터를 어떻게 가져오나요?
- 대부분의 PlayFab 서비스는 자동으로 데이터를 생성합니다.
- PlayStream이나 Telemetry 시스템을 통해 자체 원격 분석을 구현할 수도 있습니다.
- Management Commands를 사용하여 사용자 지정 데이터 집합을 수집할 수 있습니다.
PlayFab 이벤트의 표준 데이터 스키마는 무엇인가요?
- PlayFab Insights에서는 모든 이벤트의 모든 데이터를 단일 테이블에 로드합니다. 이 테이블의 이름은 [‘events.all’]입니다. 이 테이블 내부에는 각 이벤트에 대한 JSON 정보 페이로드를 포함하는 “EventData”라는 열이 있습니다. events.all 테이블에 대한 자세한 정보는 About the events.all table을 참조하세요.
왜 SQL을 작성할 수 없나요?
- 현재는 대부분의 시나리오에서 KQL(Kusto Query Language) 쿼리만 지원합니다. SQL 지원 추가를 적극적으로 검토하고 있습니다. KQL에 익숙해지려면 시간이 걸리지만 익숙해지면 좋아하실 것입니다. SQL을 Kusto 쿼리로 변환하는 방법은 SQL to Kusto query translation을 참조하세요.
내 Insights 성능 수준의 초당 이벤트 수(Events Per Second)와 PlayStream 이벤트 전송 비용의 차이점은 무엇인가요?
- Insights 성능 수준의 초당 이벤트 수는 어떤 수단을 통해서든 클러스터로 유입되는 데이터 수집을 나타냅니다. PlayStream write events와 write telemetry events는 별도로 청구되며 클라우드에 쓰기 비용을 나타냅니다.
관리 페이지에 표시되는 것보다 더 높은 성능 수준을 가질 수 있나요?
- 지원 티켓을 등록해 주시면 요구 사항을 충족하는 방안을 협의하기 위해 저희가 연락드리겠습니다.
PlayFab Insights의 기반 기술은 무엇인가요?
- PlayFab Insights는 Azure Data Explorer(Kusto)의 특화된 변형을 사용합니다.
사용자 지정 쿼리를 사용하여 내보낼 때 데이터 스키마가 다른 이유는 무엇인가요?
- 사용자 지정 쿼리 출력에는 ETL(Extract Transform Load) 프로세스의 세부 정보가 포함됩니다. 일부 추가 열이 포함됩니다. 해당 열은 쿼리 환경에서 목적이 없기 때문에 숨겨져 있습니다.
보존 설정을 보유한 데이터의 총 일수보다 적은 일수로 줄이면 어떻게 되나요?
- 보존을 줄이면 데이터가 삭제될 수 있다는 경고가 표시됩니다. 예를 들어 1년 동안 운영해왔고 보존을 6개월로 줄이면 가장 최근 6개월 분량의 데이터만 저장되고 나머지는 삭제됩니다.
쿼리의 시간 초과 시간을 어떻게 늘리나요?
- 쿼리의 시간 초과 제한은 성능 수준에 정의된 컴퓨팅 파워와 관련이 있습니다. Performance and Retention의 컴퓨팅 파워 아래에 있는 컴퓨팅 파워 테이블을 참조하세요.
보낼 수 있는 원격 분석의 양에 제한이 있나요?
- WriteTelemetryEvents API 호출에는 다음과 같은 제한이 있습니다.
쿼리를 실행하려고 하면 “Query execution has exceeded the allowed limits” 오류가 발생합니다.
- 이 오류는 결과 집합의 크기 또는 결과 집합의 행 수가 허용된 제한을 초과할 때 발생합니다. where, limit 또는 summarize 연산자를 사용하여 관련 데이터로 쿼리 범위를 좁혀 반환되는 데이터의 양을 제한해 보세요.
- 모든 데이터를 내보내려면 PlayFab Game Manager의 Title Overview 페이지에서 Data 아래의 Event Export Tab으로 이동하세요.
- 데이터의 일부만 가져오거나 여전히 쿼리 제한에 부딪히는 경우, 시간이나 고유 ID(예: Player ID, Title ID)로 데이터를 분할하고 여러 개의 더 작은 쿼리를 실행할 수 있습니다. 다음은 시간을 기준으로 분할하는 방법의 예입니다.
- 자세한 내용은 Kusto documentation을 참조하세요.
truncationmaxsize와 truncationmaxrecords 변수를 더 큰 값으로 설정했는데 여전히 오류가 발생합니다.
- PlayFab Insights는 현재 이러한 변수 설정을 지원하지 않습니다. 쿼리 작성 팁은 위를 참조하세요.
Insights 데이터를 쿼리하면 이벤트 수집이 방해받나요?
- 아니요. PlayFab 이벤트는 성능 저하 없이 타이틀 데이터베이스로 유입됩니다.
내 쿼리에서 “Partial query failure: Low memory condition” 오류가 반환됩니다.
- 이는 쿼리가 너무 복잡해서 성능 수준의 메모리 한도 내에 들어갈 수 없다는 뜻입니다. 쿼리를 단순화해 보세요. 예를 들어, summarize 호출에 그룹이 너무 많거나, 한 번에 너무 많은 행을 처리하려고 할 수 있습니다. 또한 성능 수준을 업그레이드하여 각 쿼리에 더 많은 메모리를 할당할 수도 있습니다.
- 자세한 내용은 Kusto documentation을 참조하세요.
이벤트 양이 성능 수준에서 허용하는 것보다 많으면 데이터를 잃나요?
- 아니요. 다만 초과분에 대해 비용이 청구됩니다. 초과분은 소모된 Insights Credits 수로 측정됩니다. Insights Credit 가격은 PlayFab.com/Pricing에서 확인할 수 있습니다.
성능 수준을 어떻게 결정하나요?
- 적절한 성능 수준은 타이틀의 사용량에 따라 가장 잘 결정됩니다. 성능 수준을 높이면 캐시의 더 많은 데이터와 다른 쿼리 리소스에 대한 액세스를 얻어 쿼리 실행 속도가 빨라집니다. 성능 수준에 대해 자세히 알아보려면 Performance levels and retention을 참조하세요.
특정 타이틀의 Data > Explorer 페이지에 대한 권한을 사용자에게 어떻게 부여하나요?
- 사용자 액세스, 생성 및 권한 부여는 PlayFab User Roles 가이드를 따르세요.
- 사용자가 Data Explorer에 액세스하려면 다음 3가지 권한이 필요합니다.
- Explorer data & tab(읽기 및 쓰기 권한)
- Analytics data read access(읽기 권한)
- Analytics data write access(쓰기 권한)
