You may think of Under Armour as a sports apparel brand, but it’s also an IoT company that manages streaming data from fitness apps such as MyFitnessPal, MapMyRun, MapMyWalk, MapMyHike, and MapMyRide.
Most Americans are familiar with Under Armour as a performance athletic apparel manufacturer and retailer. However, in 2013, the company entered the Internet of Things (IoT) market by purchasing MyFitnessPal, a downloadable fitness app for tracking calorie intake and exercise. With a catalogue that holds over 2 million types of foods and more than 350 exercises, to say that Under Armour has a huge database to manage is an understatement.
But that’s not all. Under Armour also manages the MapMyRun, MapMyWalk, MapMyHike, and MapMyRide apps. The additional data management responsibilities from these apps include GPS information streaming in from user devices. Based on the GPS installed in their smartphones, users can log distance, speed, elevation, and calories burned, and then merge the data into MyFitnessPal. But it’s not only device data that flows into Under Armour’s system. Third-party inputs such as iTunes, Google, and Stripe also add to the data lake which, without a well-organized infrastructure and data team in place, could quickly become a data hurricane.
During his presentation at the Qubole’s Data Platforms Conference in May 2017, Karthik Subramaniam, Under Armour’s data platform lead, said that streaming data is funnelled into a centralized repository by using Kafka stream data processing. Fast, scalable, and fault tolerant, the data stream is transferred to S3.
Streaming data and batch processing co-exist
Not all data is streamed, however. Batch processing still plays a role in shunting the data into S3. Foods, workouts, and user data are stored in a relational database management system using MySQL, MongoDB, and DynamoDB, and then moved to the S3 bucket(s) for internal accessibility. From the S3 bucket(s), queries can be pulled and analytics processed using Hive, Presto, or Spark. For further analytics, the data can be pushed to Tableau for Redshift.
Ultimately, one goal for data analysis is to match and then predict human behavior by matching restaurant logging metrics. Though Subramaniam didn’t launch into specifics, the scenario could play out as follows:
- You log onto MyFitnessPal when dining at a restaurant.
- The app will automatically have a list of menu items including their caloric content.
- Once you choose menu items, MyFitnessPal will log the caloric information.
- Alternatively, you take a picture of your food, the app will recognize the menu item and log the caloric information.
On the merchant side, if Under Armour partners with certain restaurants, user information collected could be used to analyze which menu items are most popular at certain times of day. This ultimately may help reduce inconsistencies in inventory, prevent costs due to spoilage, and provide a recommender system to users based on their favorite foods.
Taking analytics a step further
If Under Armour wanted to extend this further, it could prompt the user to choose a “mood” icon when logging food. Why? Hunger isn’t the only reason humans choose to eat. Food is also attached to emotion. When most cultures celebrate an event, for example, food is involved. The same could be said for emotional eaters – those who eat to self-comfort. A benefit to MyFitnessPal users could be better self-monitoring when it comes to whether they are eating because they are hungry or just eating due to boredom, anxiety, or some other emotion.
In terms of becoming a data-driven enterprise, Under Armour serves as a model for managing the volume, variety, and value of data. The company has a robust infrastructure in place for data management and continues to seek new ways to use data to benefit its customers.