Data Access
Data Access provides access to your Analytics data through Snowflake (a data warehouse).
You can use Snowflake to view your Analytics data through a third-party visualization tool such as Tableau. Your data joins other Analytics data in your Snowflake account; you have access to your organization's entire Analytics data, rather than per project. The data is in a raw data format, so you can perform advanced SQL queries, that aren't possible with Unity Analytics, through Snowflake's Secure Data Sharing feature.
Unity supports GCP EU-WEST4 and GCP US-CENTRAL1 regions. To use Data Sharing, you need:
- A Snowflake account you created, independent of Unity.
- A Snowflake sharing key (account locator).
- The cloud provider and region of your Snowflake account (must be either GCP EU-WEST4 or GCP US-CENTRAL1).
Due to data replication, it might take up to 1 hour 30 minutes for event data to be available in GCP US-CENTRAL-1.
Note that only organization owners can access the Data Access settings in the Unity Cloud Dashboard.
Share to an existing Snowflake account
Set up your Snowflake account in the Unity Cloud Dashboard
Open Analytics in the Unity Cloud Dashboard, and select Analytics Settings.
Select Set up Data Access.
Select With an existing account, then select Next.
Enter your account locator and cloud region provider, then select Create.
The Analytics Settings page now displays your Data Access account.
Access your Analytics data in Snowflake
To access the shared data in Snowflake, you need to create a database from the share and grant the account admin role for the database.:
Select Data Products > Private sharing > Shared with you.
Snowflake displays the shares available for your account, including the one you set up in the Unity Cloud Dashboard. You can also view shares via the SQL command:
SHOW SHARES;
.Select the download button on the share you wish to view.
Define the roles you want to allow to access this share, and select Get Data.
This creates a database where you can query the shared data.
Alternatively, you can create a database for the share, using the following SQL in Snowflake:
CREATE DATABASE "SFSHARETEST" FROM SHARE UNITYLIVEOPS."UNITY_ANALYTICS_PDA";
GRANT IMPORTED PRIVILEGES ON DATABASE "SFSHARETEST" TO ROLE "ACCOUNTADMIN";
To view the created Databases in Snowflake, select Data > Databases. Alternatively, you can view the list of databases via the SQL command: Show databases;
To view a list of views and tables within the share, run a describe share <sharename>
SQL query in the worksheet. The Origin column in the database table displays the share names.
When you've got access to your shared views, you can run SQL in the worksheet using the data within the views.
For more information on how to consume Snowflake shared data, refer to the Snowflake documentation.
Useful resources
- Snowflake documentation on a BI tooling solution that natively supports Snowflake.
- Snowflake documentation on an ETL and data transformation tools that natively support Snowflake.
Data Access available views
Through Data Access, you can access various views containing your account’s data.
The table below describes the available views. For more information on the data available within each view, go to the view in Snowflake and select Columns.
View | Description |
---|---|
ACCOUNT_EVENTS | Lists the events that your application has sent. The EVENT_JSON column contains event-specific parameters as a JSON object. As the parameters are stored as a JSON object, you must parse the content in order to query it. |
ACCOUNT_EVENT_JSON_KEYS | Contains data on the event fields that your games use. |
ACCOUNT_GAMES | Lists the games that exist under your account. |
ACCOUNT_USERS | Lists the users who have sent in an event in the past. For each user, the columns contain a variety of useful metrics. |
ACCOUNT_FACT_EVENT_TYPE_USERS_DAY | Lists the events a user has recorded in one day and how many times they have sent in each of those events. |
ACCOUNT_FACT_WAU_USERS | Lists the users that have sent in an event in the last week. |
ACCOUNT_FACT_MAU_USERS | Lists the users that have sent in an event in the last 30 days. |
ACCOUNT_FACT_MISSION_USERS_DAY | Counts how often a user has started, completed, failed and abandoned missions. |
ACCOUNT_FACT_POTENTIAL_RETAINED_USERS_7_DAY | Contains data on users retained after installing in the last 7 days. |
ACCOUNT_FACT_POTENTIAL_RETAINED_USERS_14_DAY | Contains data on users retained after installing in the last 14 days. |
ACCOUNT_FACT_PRODUCT_USERS_DAY | Contains the number of products bought, split out by the standard filter parameters. The data comes from the productsReceived object in the transaction event. |
ACCOUNT_FACT_RETAINED_USERS_7_DAY | Contains data on users retained after installing in the last 7 days. |
ACCOUNT_FACT_RETAINED_USERS_14_DAY | Contains data on users retained after installing in the last 14 days. |
ACCOUNT_FACT_USER_SESSIONS_DAY | Contains a record for each user session. Each record contains a variety of user-level aggregate KPIs for that session. If any of the dimensions recorded in this table, excluding aggregate dimensions, change during a session (for example, AGE_GROUP or GENDER), a new record is created for that session. |
Note: The Data Access views use multiple timestamps:
EVENT_TIMESTAMP
: The time the event created on the client device
LOADED_TIMESTAMP
: The time where the event is loaded into the data warehouse.