Getting Mixpanel Data into DOMO- data schema and syntax query


Hi, I'm trying to get Mixpanel data in DOMO for some custom analysis and have a couple of questions 


1. Data model/architecture- Data comes in the form of 17 datasets they seem to call "Reports" and there's a little bit of documentation on what each of these reports means. However, the relational nature of each of the tables/reports doesn't seem very clear. Is the data in the STAR schema, by any chance

2. Additionally when bringing in the "Raw Data" table, looks like there's a where clause (in the mini help icon next to it, there's some guidance on the syntax - Where = number(properties["time"]) >= 2000 . If i'd like to filter by "Customer_Name" instead, should the syntax be - string(properties["Customer_Name"]) = 'XYZ' ?


Screenshot attached. Any guidance here would be really helpful.


Thanks in advance!


  • jaeW_at_Onyx

    it is unlikely that the data from mixpanel is presented in the original way that it was stored in the database.


    keep in mind when you extract data from mixpanel it's being sent as a JSON object which by definition means that it can contain data stored in a non relational format (instead of single value fields, a JSON key can contain multiple values or nested key value pairs.  The Domo connectors do have to flatten the data into a set of rows and columns; for storage and use in Domo, but by definition that requires enforcing a new schema on the dataset (that almost certainly is not Kimball's star schema).


    Think about a twitter tweet.  in addition to the text, and author, you'll have an array of hashtags and an array of AT_mentions.  How should that data be compressed into one row or column.  Depending on what you're interested in you'll use a different schema.  Hence why there are multiple reports in the connector.  Each report will have a different schema and / or access different objects from Mixpanel's API.


    It'll be trial and error!


    With regards to trying to filter customers.  Don't.  If you're familiar with Kimball's dimensional modeling, think of Domo as a Staging database.  You'll be best served to collect and combine ALL your transactional data in Domo then apply filters to select 'the right' customer at the Dashboard and visualization layer.


    To directly answer your question, no, I don't know the exact syntax required to apply a filter to your dataset.

    Jae Wilson
    Check out my 🎥 Domo Training YouTube Channel 👨‍💻

    **Say "Thanks" by clicking the ❤️ in the post that helped you.
    **Please mark the post that solves your problem by clicking on "Accept as Solution"