As an avid cyclist, Pieter Morgan departed on a coast to coast ride across the USA, trusting his bike and accompanying technologies to guide him along the way. He quickly found that his cycling devices weren’t cutting it. With a mission to inspire and empower people to unlock their athletic potential through cycling, he founded Hammerhead in 2013 to fill this glaring gap in the sports technology market.
The company’s latest product, Karoo 2, is an Android-based advanced cycling computer that provides riders with real-time data, including predictive path technology to help virtually see the climbs ahead even when the rider doesn’t provide a route. Predictive path data is built into map/navigation tiles that are processed in the cloud, which is then made available to cyclists. To power Karoo, Hammerhead needed a modern database under the hood with the high performance, scalability, offline availability and seamless automatic data syncing to give riders a smooth, reliable cycling experience. The database had to be capable of keeping data in sync between Karoo and the Hammerhead cloud. This data includes user account preferences, routes, workouts and ride activities completed.
How to Pick the Right Database for Mobile Applications
Selecting a mobile-optimized database solution is key to building a competitive mobile application. Successful data platforms rely on flawless data synchronization, local data storage and querying capabilities, and end-to-end security. That’s why it’s important for developers and architects to consider the following criteria when evaluating mobile solutions: multi-platform support, local data storage capabilities, sync capabilities with conflict resolution, ease of development, security, agile data modeling, flexible deployment and topology options.
After exploring various database offerings, Hammerhead chose Couchbase Mobile. It provides the power and flexibility of a NoSQL database to the edge and includes Couchbase Lite, an embedded NoSQL database for mobile and embedded apps that exposes a powerful SQL++ query API. It also includes a synchronization gateway, which is responsible for synchronizing riders’ data and the cloud in order to enforce access control policies, authentication, authorization and data routing.
Hammerhead and Couchbase in Action
Couchbase Mobile and its Sync Gateway feature empower Hammerhead to stand out amongst the competition. Rich data streaming from input sensors on Karoo is saved to a local file during rides which is later synced to the cloud via Sync Gateway. The file is then saved in Couchbase on the Hammerhead Cloud. If a rider is linked to third party platforms, it’s distributed to those. The ride can then be reviewed on the Karoo Dashboard using the data stored in Couchbase.
Couchbase Mobile’s offline capabilities also enable riders to store routes that have been authored on the Karoo Dashboard or imported from third parties. When Karoo is connected to the network, routes are synced automatically to Karoo and are selected by riders to provide them with turn-by-turn directions and other guidance on the route. This is key as cyclists are often not connected to the internet during rides. The syncing/caching of data—provided via Couchbase technology—is key to rider use cases as it allows cyclists to navigate without interruptions.
Couchbase Makes Bidirectional Cloud Sync and Unlimited Scalability Possible
Cyclists, from seasoned pros to new riders, rely on the data Karoo collects to take their cycling experience to the next level. With Couchbase at its core, Hammerhead integrates bidirectional syncing through AWS cloud, allowing cyclists to have a more connected experience by linking their Karoo account to third-party platforms such as Strava, Training Peaks and Suunto. These platforms leverage the data from Karoo to evaluate cyclists’ rides, provide feedback throughout their fitness journey or allow them to engage with the cycling community.
As Hammerhead expands, the ability to scale its technology platform is crucial. Couchbase Mobile eliminates worries about scalability and ensures the app experience for future Hammerhead users will be reliable and agile. Couchbase also provides version management, enabling Hammerhead’s developers to release frequent software updates seamlessly so that riders always have the latest and greatest capabilities at their fingertips.