Community Spring Cleaning week is here! Join your fellow Maveryx in digging through your old posts and marking comments on them as solved. Learn more here!

Engine Works

Under the hood of Alteryx: tips, tricks and how-tos.
DaveBRY
Alteryx Alumni (Retired)

Growing up, my dad and I worked on cars. He told me when I got stuck on something to “use the right tool for the job,” and inevitably, whatever I was stuck on would be solved by simply using the correct tool.  

 

Over my 15-year career working with data, I often think back to his words. If you’re into working on cars, I’ll bet your garage is full of tools. Racing teams like McLaren may have thousands of tools, each designed to fit a particular part or perform a specific task. The more complex the car, the more tools you need. Which is why McLaren has a lot more tools than I do. J     

 

Data analytics software like Alteryx is a toolbox for working with data. The data is the car, and we need tools to fix it, enhance it, modify it, or simply see what is under the hood so we can diagnose the problem.  

 

It was with this mindset at the forefront that, several months ago, my team was approached to create a new marketing asset for our Alteryx Experience Center.  

 

Finding the right tools 

 

As a part of our new Alteryx Experience Center (AEC), we created a racing simulator based off the popular EA Sports and Codemasters game, F1 2022. When we were asked to create an Alteryx demo for the AEC that could be paired with the F1 2022 simulator, we jumped at the chance to get something going.  

 

Step 1: Finding the data. 

 

DaveBRY_0-1665418654517.png

 

The first step was to find what data was available. After some research, we found that F1 2022 can transmit telemetry data from the device where the game is played (in our case, a PS5) to another device via UDP streaming protocol. This allows multiple data streams for race and car telemetry to be transmitted in real-time.  

 

Step 2: Find a way to use the data. 

 

Once we knew what data was available through this stream, we set out to find a way for Alteryx to ingest and parse this data to create a dashboard that racers could review after their race. To do that, we had to find a way to ingest the real-time data stream from the game and process the resulting race data. Luckily, we were able to find an app used by the e-league racing community to do exactly that.  

 

DaveBRY_1-1665418654518.png

 

Enter Team Telemetry, an open-source app that can connect directly to the PlayStation data stream. Team Telemetry achieved two goals for us; First, it enabled us to connect to the game’s raw data stream out of the box without coding. Second, it showed real-time race data visualizations during laps. Also, it looked cool! In the background, though, it was saving the race data into a .csv file that was stored on the computer. 

 

Step 3: Find out how to get insights from the data. 

 

Now that we could collect data from the PlayStation via the Team Telemetry app, we began to look at the collected data in Excel, and immediately we ran into a problem. Many of you likely run into this as well; the data was difficult to read when it came out of the app. It was not in a row and column format we could use. Team Telemetry was never designed to produce a cleanly formatted dataset. 

 

Alteryx to the rescue 

 

The data was completely unstructured and had many duplicate entries. This is where we attacked the problem with Alteryx Designer. Using our advanced data prep tools, we were able to parse the data into a row and column structure that we could use. You can check out the workflow here to see how we did it.  

 DaveBRY_2-1665418654520.png

 

At this point, we had successfully extracted and cleaned data from the PlayStation into something useful. Now we needed to automate this process so that every time a racer in the simulator completed a race, a dashboard updated with results showing them how they did. To do this, we had to create a new process. Every time new data was written by Team Telemetry, Alteryx had to see that new entry and run the workflow. Enter Alteryx Server.  

 

DaveBRY_3-1665418654521.png

 

In Alteryx Server, we set up a schedule that ran every minute. Within the workflow, we configured a Directory tool to look for new .csv files written to the output data folder of Team Telemetry. The workflow output was saved into a SQL database. The database tables were then the source for our final step, race data visualization.  

 

Showing our work 

 

We needed a simple dashboarding tool for charts and graphs tied to an underlying SQL database. We chose to use PowerBI to create the dashboard of our results. With Alteryx automating the processing of data extraction and cleansing, we finally had a demo that took data from a video game into an enterprise database and displayed results in less than one minute after the race was over. Success! 

 

The right tool(s) for the job 

 

DaveBRY_4-1665418654522.png

 

We didn’t use Alteryx for all parts of this project. But we think this project was much truer to how you all actually use the software. No business analyst or data scientist uses just one product. Like a good mechanic, you choose the right tool for the job. While Alteryx doesn’t yet ingest real-time data, Team Telemetry does. But it didn’t have any way to make sense of the data it collected. Power BI produced a great dashboard but didn’t enable us to cleanse and restructure data in a way that enabled us to be successful. Alteryx served as the engine for this project. Adaptability is one of my favorite things about Alteryx 

 

If you’re a current or potential Alteryx customer, come see our new Alteryx Experience Center in Irvine. You can try our awesome racing simulator and see this demo in action. We’d love to show it to you. Well, that’s it for now. Stay tuned for a follow-up blog on what Alteryx Machine Learning was able to tell us about our race data! 

 

Cheers!

  

Comments
DataNath
17 - Castor

This was a great read! I'm a huge F1 fan and so it's awesome to see how Alteryx can be applied to this area! Thanks for sharing 😀