Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Join us on Thursday, June 8, for a Q&A with Unity's Content Pipeline group here on the forum, and on the Unity Discord, and discuss topics around Content Build, Import Workflows, Asset Database, and Addressables!
    Dismiss Notice

Question How to perform raw export of data collect with new analytics

Discussion in 'Unity Analytics' started by snotbubblelou, Jun 17, 2022.

  1. snotbubblelou

    snotbubblelou

    Joined:
    Jan 17, 2013
    Posts:
    15
    Is there a way to perform a raw export of data from the new analytics similar to how you can export from legacy analytics? I am collecting data through custom events that don't fit with how the data explorer allows for displaying of data.
     
  2. snotbubblelou

    snotbubblelou

    Joined:
    Jan 17, 2013
    Posts:
    15
    Looking more into this. It appears you need to contact customer support in order to export the data

    from https://docs.unity.com/analytics/FAQ.html

    Can I export data
    This is not self-serve and you'll need to contact customer support for more information.

    Ugg
     
  3. snotbubblelou

    snotbubblelou

    Joined:
    Jan 17, 2013
    Posts:
    15
    I tried to create a snowflake account and linked my unity account to the snowflake account as directed in the Analytics Settings (better make sure your snowflake account is on GCP or else it won't link). After connecting to a snowflake account, it appears the schema is sent over to snowflake but none of the data appears viewable
     
    Last edited: Jul 6, 2022
  4. Laurie-Unity

    Laurie-Unity

    Unity Technologies

    Joined:
    Mar 5, 2020
    Posts:
    203
    Hey there,

    Thanks for sharing your questions and observations. You are correct, the preferred method exporting data is through the Data Access feature. This is a more flexible, scalable and robust option than downloading a CSV in your browser. You can use it to feed data into your own systems or simply to take an archive copy. As you observed, this feature does requre that you configure the cloud provider and region on your Snowflake account to GCP EU-WEST4 or GCP US-CENTRAL1 regions.

    Can you confirm if you can now see data flowing into your Snowflake share. I am wondering if it was just a data replication delay that you were experiencing. If you still can't see anything please open a Customer Support Ticket so we can take a look at your specific project configuration.

    It looks like we need to update that FAQ that you referenced, it would have been written before the Data Access feature became available. Leave that with me, we'll get it updated.

    I am curious about your use case and your statement that "custom events that don't fit with how the data explorer allows for displaying of data". Can you tell me a bit more about what you are trying to do, as you should be able to see custom events and all their details in the built in SQL Data Explorer. Let me know what you were trying to do and I'll see if I can shed any more light on the matter.
     
  5. snotbubblelou

    snotbubblelou

    Joined:
    Jan 17, 2013
    Posts:
    15
    I am able to view the data by previewing the data in the share views of the UNITY_ANALYTICS_PDA database that was created. However, I struggle to find and organize custom events. I do not know the database schema or how to interpret the snowflake interface to understand the schema in order to write a SQL query to get the custom event data. There appear to be 42 columns? I am reluctant to walk through the tutorials in snowflake and deconstruct the UGS analytics schema to retrieve this information. At this point, it's easier for me to write my own web service to export data from my games.

    While I understand that your implementation might be the most efficient way to store large sets of data, my needs involve very little data. I am running early alpha tests on a game with procedurally generated content and runtime performance modulation created at runtime. I intended to use UGS analytics and its custom events to send data about that generated content and performance metrics for debugging purposes. My player base right now is a very small set of friends. I fear the UGS analytics might not be the right fit for my use case the way that legacy analytics was. UGS analytics feels much more constrained for specific use cases around typical engagement metrics. Which is fine, but is not my use case

    My statement "custom events that don't fit with how the data explorer allows for displaying of data" is referring to my custom event string parameters that refer to enumerations in my code base and values that are Vector3 based. Both of these don't make sense to plot on a 2d graph
     
  6. Laurie-Unity

    Laurie-Unity

    Unity Technologies

    Joined:
    Mar 5, 2020
    Posts:
    203
    Hi there,

    Thanks for the additional detail. I agree, if you are only dealing with small amounts of data then SnowFlake Data Access may be like using a sledge hammer to crack a walnut. Having said that, you can connect other tools with more advanced visualisation capabilities, like Tableau to it to solve instances when you need more exotic chart types, like in your Vector3 example.

    For completeness, the table of most interest to you will be the Events table in Snowflake Data Access or the Unity Dashboard based SQL Data Explorer. You will find more information on the data structure and some handy queries in our SQL Cookbook. Essentially there is a row in the events table for every event you send the name of the event is stored in the event_name column and the parameters, including any custom ones are all contained in the event_json column and canb be parsed out of the JSON and cast to the correct data type with something like
    event_json:customParameter::STRING
    . The table legend button and contents in the Data Explorer should help too.

    With regard to reporting on custom events and the parameters within them, this is possible to a limited degree in the Data Explorer tool and if you are comfortable you can go much further in the SQL Data Explorer.
    e.g.

    In Data Explorer you can plot by Event name then Group By Event Parameter > YourPramaterName
    Your results will still be plotted as a timeseries but you will be able to see the distribution of values in the custom parameter.
    upload_2022-7-6_8-37-52.png

    In SQL Data Explorer you can run more complex queries
    upload_2022-7-6_8-44-22.png

    Feel free to share your project ID and more details on the charts you are looking for here, by DM or in the support ticket you opened and I'll see if I caqn help with the query or chart.
     
    snotbubblelou likes this.
  7. JeffDUnity3D

    JeffDUnity3D

    Unity Technologies

    Joined:
    May 2, 2017
    Posts:
    14,446
    A simple query for custom events might be:

    SELECT count(*) FROM EVENTS
    WHERE EVENT_NAME = 'myCustomEvent'