According to Gartner, last year global sales of smartphones to consumers reached 1.4 billion units, an increase of 14.4 per cent from 2014. With so many smartphone users, it’s no wonder that the mobile app sector is expected to be worth over £53 billion by the end of 2017 – that’s less than 18 months away. With such a large market to play for, app developers are facing steep competition to deliver the most relevant apps to end users.
As part of this trend, there has been a major shift towards content-driven apps. Personalised content tailored to specific consumers and demographics and delivered to the customer in real-time has become the norm. But what’s behind the apps powering news, navigation, and Pokémon-grabbing games?
All about the data
It’s all about the data. Interactive content-driven apps need to store and share different kinds of content and metadata. And in the app world, this includes rich, personalised content often for millions of users worldwide. It’s no longer enough to serve static content on the web. A typical content driven app has a mix of static and dynamic content. Static content includes images and text while dynamic content includes elements that are app generated, transformed and personalised for each viewer. At the database level, this means you need consistent low latency for metadata access and high-throughput for content and stat updates.
At the same time, the vast majority of data generated today is unstructured, with a variety of new and changing data types. To keep an app fresh developers need to be able to add new types of data quickly, without dealing with the complexity and time it takes to change a schema.
Content and metadata stores are highly interactive apps where content consumers discover, share and leverage information at record speed. They need to be rich and powerful, supporting hundreds of thousands of document operations every second. To have this high performance, your database needs consistent low latency and high throughput. Consistent low latency means sub-millisecond response time 99 per cent of the time regardless of the mix of reads and writes.
They also have workloads that are often spiky and unpredictable. If a piece of content suddenly goes viral, the database needs to scale out rapidly without app changes or downtime. Plus, an app data and workload should be evenly distributed across the database cluster to avoid hotspots. Most content consumers today are mobile, and web apps can be consumed from practically anywhere in the world. Therefore developers need to scale quickly across geographies, devices, and platforms.
A huge opportunity for apps
With 2.2 million apps available via Android, and 2 million available for Apple, the apps market is highly competitive – but it’s also a huge opportunity. To make sure users have a great experience, developers are increasingly turning to NoSQL to solve the demands of end users. Unlike relational databases (SQL), NoSQL is particularly well suited to handling rich data from varied sources. This is critical to app development as this means everything from user profiles, to photos, to location data can be easily accessed – ensuring that consumers get the best experience.
Consumers are spending 85 per cent of their time on smartphones in apps, and the number of apps we’re downloading on the rise (the latest research has suggested that in the UK we have on average over 50 apps on our smartphones!) This means that developers need to support their growing data requirements with flexible and scalable data management solutions to increase and maximise their profits with minimal investment. With the potential to adapt to changes in the market and expand in size whenever necessary, NoSQL resolves issues of data management, scalability and availability with little cost in terms of time and budget.
Luke Whitehead, Senior Director, EMEA Marketing at Couchbase