Riak provides highly available, low-latency, scale-out small object storage to power mobile applications. Some of the main technical benefits of Riak for mobile platforms include:
Low-Latency Data Storage:Riak is built to serve predictable, low-latency requests and provide a highly available experience to end users. Simple Data Model:Riak uses a key/value data model, ideal for storing and serving mobile user information, events, and session data. Scale for Peak Loads:Riak makes it easy to add additional capacity and scale out quickly. Multi-Datacenter Replication:Riak Enterprise allows mobile platforms to serve low-latency content to concurrent users all over the world.
Here are some common ways mobile platforms use Riak:
Bump is a popular mobile application that makes it easy for users to share their contact information, photos, and other objects by simply “bumping” their smartphones. Bump uses Riak to store user data and power their photo-sharing app. Riak was chosen for its operational ease of use and availability under failure conditions. For more details about how Bump uses Riak and how they designed their application, check out Bump’s presentation at RICON2012, Basho’s 2012 developer conference. You can also read the complete case study for more information about why Bump chose Riak.
Voxer is a popular Walkie Talkie application for smartphones that allows users to send instant voice messages to one or more friends. Experiencing exponential growth, they selected Riak to power their application due to its operational simplicity and high availability. For more details about how Voxer uses Riak, check out the complete case study and watch Voxer’s CTO talk at a Riak Meetup in San Francisco.
DATA MODELING IN RIAK
Riak has a “schemaless” design. Objects are comprised of key/value pairs, which are stored in flat namespaces called buckets. Here are some common approaches to structuring mobile data with Riak’s key/value design:
|Social Authentication||Login, Email, UUID||Facebook/Twitter token|
|User Data||Login, Email, UUID||User Attributes (often stored as a JSON document)|
|Image or Video Content||Content Name, ID or Integer||.JPG .PNG, .GIF or other image format; .MOV, .MPG, .MP4 or other video file format|
|Session Information||User/Session ID||Session Data|
On top of the fundamental key/value model, Riak also offers robust querying, including: