seann avatar image
seann asked

What are best practices to use Snowflake with PlayFab player data?


We're enthralled by the Snowflake add-on and the analysis we will be able to achieve with it. One overarching question we have is whether there are any suggested best practices for querying player data along with the PLAYFAB_ARCHIVE_SHARED view.

So far, we are thinking of these options. Any suggestions are much appreciated.

  1. Build an integration through our own game server that ingests into Snowflake a custom set of tables for players and associated data. This is a bit more timely to setup, but I like that it would allow us to query past events against recently updated player data
  2. Utilize custom data on events to include all necessary player data per event so we can query against that data in Snowflake. Quicker to setup, but then the player data present in the event when it fires is the only bit available when querying. Changes to the player do not reflect.
  3. Any other way to ingest player data from PlayFab to Snowflake that doesn't involve building out an integration that we may be unaware of.


Player DatadataPartner Add-ons
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

brendan avatar image
brendan answered

Well, if 1 means setting up queries that would run on-demand as a response to players on a website, I'd advise against it (since that would mean that an abusive player could drive up your query costs). If you just mean generating daily reports, that's a great use case.

In general, events aren't the best place to manage player data, if you mean all the savegame info for a player. Best to just use the data systems (in particular, Entity Objects and Files) as designed.

But the initial best practice is to make sure to always specify your Title ID, and preferably a timestamp, when querying. That'll help make sure your queries are optimized to your title specifically.

10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

seann avatar image seann commented ·

Thanks Brendan,

This is indeed for daily studio reports, nothing a player would be using.

An example of what we may look to accomplish is to run retention reports grouped by information present in Player Data (e.g. male vs female if we were to ask for that information and store it as Player Data)

I understand the storing the data as Entity Objects and Files, but how to utilize that data joined with a report of events so I can say number of logins where Player Data gender = male. I believe just ingesting that data into Snowflake seems the best option versus events for sure. Is there any PlayFab centric way this may be accomplished in the Event History?

Appreciate the help again!

0 Likes 0 ·
brendan avatar image brendan seann commented ·

Sorry, but data simply isn't part of the event system. And events are specifically what you're using for analytics. To get that data into Snowflake so that you can query on it, you would need an event (either one of ours, or a custom event).

0 Likes 0 ·

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.