April 14, 2014
Modern day advertisers are faced with many new challenges to ensure they can provide highly available, low latency experiences to thousands of clients and partners, and millions of users. They are also tasked with serving large amounts of data all over the world and can experience significant traffic spikes. That is why advertisers are switching to Riak for their database solution. Riak’s redundant, fault-tolerant design ensures that advertising companies can serve data reliably and quickly. Riak is also built for operational simplicity at scale and helps advertisers quickly grow to meet peak loads.
Top Use Cases for Riak in Advertising
- Serving Ad Content: Riak’s rapid storage and content agnosticism makes it ideal for storing ad content and handling influxes of ad traffic.
- Session Storage: This type of data is naturally a good fit for Riak’s key/value model. This data can also be encoded in many different ways and can evolve without any administrative changes to the schema.
- Mobile Experiences: Riak is ideal for the low-latency, always-available small object storage needed to power mobile experiences across platforms.
- Global Data Locality: Riak Enterprise’s multi-datacenter capabilities allow advertisers to maintain a global data footprint while providing an always-on, low-latency experience, anywhere in the world.
Riak in Production
Riak is already in production at many top advertising and marketing organizations. Here’s a look at a few that have switched to Riak.
Tapjoy is a mobile advertising and monetization platform that is available on over one billion devices across the world. They selected Riak due to its high availability, low-latency, and multi-datacenter replication. They store 48TB of data in Riak and operate hundreds of thousands of reads/writes per second. Learn more about why Tapjoy selected Riak from the case study.
OpenX is an ad technology platform that serves trillions of ads. They use Riak for user and trafficking data behind their data services API. OpenX also uses Riak’s multi-datacenter replication across several data centers. Watch Anthony Molinaro (Infrastructure Architect at OpenX) talk about how they use Riak for their serve-time data needs.
Velti is a mobile marketing and advertising technology provider. They use Riak for their interactive mobile platform, including letting people interact with their TV by voting, giving feedback, participating in contests, etc. Velti runs 18 nodes across two data centers, which provides them with scale, durability, and availability. Their case study goes into more detail about the process of moving to Riak.
JBA is a digital consultancy that specializes in developing customer understanding and behavioral targeting. They use Riak as a core part of their behavioral analysis and remarketing tool. They store over 10 million objects in Riak and can easily scale up to account for holiday sales cycles or new product releases as needed. Learn more about why they selected Riak from the beginning from their case study.
Moz provides analytics software to track all of a website’s inbound marketing efforts on one platform. They support over 27,000 customers and 300,000 community members worldwide. Moz uses Riak to store customer campaign search engine rankings data. Learn more about how Riak outperformed Cassandra at Moz in the case study.
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 advertising data with Riak’s key/value design:
|Advertisement||Campaign ID||Ad Content|
|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 or Session ID||Session Data|
To learn more about how advertisers can use Riak for their data needs, check out the complete overview, “Advertisers on Riak: A Technical Introduction.” To get started with Riak, Contact Us or download it now.
December 26, 2013
This year, we added a wide variety of resources to help you better understand Riak and Riak CS for different use cases. These resources include whitepapers, webinars and videos, sample apps, and outside articles and reports. Here’s a look at some of what was added in 2013.
With multiple releases over the past year, all of the primary product whitepapers have been updated. Check out new versions of:
We also added a number of vertical-specific whitepapers to help companies in various industries better evaluate Riak and Riak CS.
Intro to Riak Webinar
In addition to hosting multiple introduction webinars throughout the year, we also created a standalone “Intro to Riak” webinar that can be watched and shared easily. To watch this webinar, simply fill out the webinar request form.
To showcase the power of indexing in Riak, we created a Zombie Sample App that’s run on Riak. This app has one million “Zombielepsy” victims loaded into Riak and lets the user locate them using zip code as the index value. It supports both Term-Based Inverted Indexes and Secondary Indexes. In addition to better understanding indexing in Riak, users can:
- Create a Zombie Sighting Report System so the concentration of live zombies in an area can quickly be determined based on the count and last report date.
- Add a crowd-sourced Inanimate Zombie Reporting System so that members of the non-zombie population can report inanimate zombies.
- Add a correlation feature, utilizing Graph CRDTs, so we can find our way back to Patient Zero.
More details about this app can be found here.
Articles and Reports
Outside of what has been created by Basho, we think that outside sources can also be a valuable tool when evaluating Riak or Riak CS. Our updated News Page helps to showcase much of this, but we thought we’d call out a few helpful articles from the past year.
Information Week – “Big Data Reshapes Weather Channel Predictions”
IDC – “IDC MarketScape: Worldwide Object-Based Storage 2013 Vendor Assessment”
The Register – “What Do We Want? Strong Consistency! When Do We…Oh It’s In Riak v2”
Programmable Web – “Seagate Releases Open Source API to Eliminate Data Storage Complexity”
The Register – “Distributed Systems Boffins Flock to RICON West”
Computer Weekly – “Computer Weekly European User Awards for Storage: Winners”
Gartner – “IT Market Clock for Database Management Systems, 2013”
Information Week – “Basho Embraces OpenStack with Riak Cloud Storage”
Flyclops Blog – “Taking the Riak Plunge”
Forrester Research – “To Get National Healthcare Right Requires Adaptive Intelligence”
451 Research – “451 Research Survey Highlights Growing Adoption of NoSQL Databases”
GigaOm – “Storage Player Basho Open Sources Riak CS”
November 13, 2013
This series of blog posts will discuss how Riak differs from traditional relational databases. For more information about any of the points discussed, download our technical overview, “From Relational to Riak.”
One of the biggest differences between Riak and relational systems is our focus on availability. Riak is designed to be deployed to, and runs best on, multiple servers. It can continue to function normally in the presence of hardware and network failures. Relational databases, conversely, are simplest to set up on a single server.
Most relational databases offer a master/slave architecture for availability, in which only the master server is available for data updates. If the master fails, the slave is (hopefully) able to step in and take over.
However, even with this simple model, coping with failure (or even properly defining it) is non-trivial. What happens if the master and slave server cannot talk to each other? How do you recover from a split brain scenario, where both servers think they’re the master and accept updates? What happens if the slave is slow to respond to updates sent from the master database? Can clients read from a slave? If so, does the master need to verify that the slave has received all updates before it commits them locally and responds to the client that requested the updates?
Conversely, Riak is explicitly designed to expect server and network failure. Riak is a masterless system, meaning any server can respond to read or write requests. If one fails, others will continue to service client requests. Once this server becomes available again, the cluster will feed it any updates that it missed through a process we call hinted handoff.
Because Riak’s system allows for reads and writes when multiple servers are offline or otherwise unreachable, data may not always be consistent across the environment (usually only for a few milliseconds). However, through self-healing mechanisms like read repair and Active Anti-Entropy, all updates will propagate to all servers making data eventually consistent.
For many use cases, high availability is more important than strict consistency. Data unavailability can negatively impact revenue, damage user trust, lead to poor user experience, and cause lost critical data. Industries like gaming, mobile, retail, and advertising require always-on availability. Visit our Users Page to see how companies in various industries use Riak.
June 27, 2013
Today, we are excited to share a recent whitepaper released by the Amazon team entitled, “NoSQL Database in the Cloud: Riak on AWS.” This paper provides technical guidance on running Riak on the Amazon platform, including an overview of:
- Basic Installation
- Riak Architecture and Scale
- Operational Considerations (including sizing and configuration)
- AWS specific security configuration
- A discussion of Replication (as enabled by Riak Enterprise)
Given the number of Riak users (both open source and enterprise) who leverage public cloud environments, either as a part of their infrastructure or as the foundation of it, Basho will continue to invest in partnerships that provide deployment choice and deployment ease. Whether it’s for a hybrid cloud model – used to address burst capacity, tenancy/data locality, and proof of concept needs – or for an investment solely in public cloud, Riak will provide the operational simplicity and scalability required for your critical data.
For more information about deploying Riak on AWS, check out our posts about the Riak AMI and our other deployment options, including automated scripts and manual installation. You can also find more information about what to consider when installing Riak on AWS in our documentation.
June 13, 2013
Riak is a highly available, low-latency database for retailers that need to provide always-on eCommerce and mobile channel services. Riak offers a number of key technical benefits for retailers including a highly available experience for shoppers, the ability to scale to peak loads during major holidays with low operational costs, and global data locality for a low-latency experience for shoppers all over the world.
For retailers that want to learn about the advantages of Riak, we have put together some resources that showcase how other retailers are using Riak. Below are some of the highlights:
- The “Retail on Riak” whitepaper looks at how Riak can be used for common retail needs, such as powering shopping carts and product catalogs.
- Riak’s architecture has helped Best Buy build and operate its new platform, with Riak playing a key role. To learn more about why Riak was selected, check out this video from RICON 2012.
- ideeli, a flash shopping site, uses Riak to provide a reliable and available persistent cache. More information can be found in their case study.
- Copious is a social commerce marketplace that uses Riak to handle user authentication via Facebook or Twitter accounts. For more details on their polyglot data store, check out their case study and video from their Co-Founder.
- Shopzilla has both a case study and video that highlights how they use Riak to power their keyword and scrapbook data services.
- On our blog, you can find slides from the Retail on Riak webcast, the benefits Riak offers retailers, examples of Riak in production, and how to start building retail applications in Riak.
For a complete list of resources, visit our Resources Page.
June 12, 2013
Riak can be the perfect solution for advertising platforms because its redundant, fault-tolerant design ensures that advertisers can serve their data reliably and quickly. Riak is also built for operational simplicity at scale, making it easy for advertisers to quickly grow to meet peak loads.
We have put together a number of resources for advertisers who are evaluating Riak. Below are some of the highlights:
- The “Advertising on Riak” whitepaper provides an overview on how Riak can be used by advertising services and platforms.
- OpenX, an ad platform that serves over four trillion ads each year, has a video about why they selected Riak and how they use it to store user and trafficking data.
- Velti, a mobile marketing and advertising technology provider, uses Riak to provide high availability and scalability for their interactive subscriber service. Their case study goes into more detail about the process of moving to Riak.
- The Basho Docs site discusses common ways to model advertising data within Riak’s key/value structure.
- This blog post looks at some advantages and popular use cases of Riak in advertising.
For a complete list of resources, visit our Resources Page.
June 11, 2013
Mobile platforms and applications need to provide low-latency user experiences that can scale quickly and support highly concurrent user access. That is why so many mobile applications have selected Riak to handle their data.
To see if Riak is a fit for your mobile use case, we have put together a number of resources that showcase how mobile companies are using Riak to solve a variety of challenges. Below are some highlights:
- The “Mobile on Riak” whitepaper provides a technical introduction of Riak, specifically for mobile needs.
- Voxer has both a case study and a video that look at how they use Riak to support their massive, sudden growth.
- Bump, one of the most popular mobile apps, has a case study that looks at why they chose Riak to store their user data, and a video that goes into more details about their data model.
- Comcast uses Riak as the primary datastore for their “Highly-Available Object Storage System,” which is used by their mobile applications and websites. More details can be found in their case study and from their talk at RICON 2012.
- OmniTI uses Riak to power the mobile rewards provider, Viggle.
- On our blog, there are posts on the advantages of Riak for mobile and how to build mobile applications with Riak.
For a complete list of resources, visit our Resources Page.
June 6, 2013
For gaming platforms and applications, Riak can be the ideal data solution. Its scalability allows for rapid growth of player data, the low-latency design allows for a fast and reliable experience for players all over the world, and its flexible data model means there are no restrictions on content type and no need to change the underlying schema.
To see if Riak is a fit for your gaming use case, we have put together a number of resources that showcase how Riak is solving gaming data challenges across multiple companies. Below are some highlights:
- For a general overview of how Riak can be used for gaming companies, download our whitepaper, “Gaming on Riak.”
- For Hibernum, a social gaming developer, we have a case study on how they’re using Riak to store user game information.
- Rovio, the creators of Angry Birds, has a video that discusses how Riak supports their new mobile gaming platform.
- Kiip, a mobile app rewards network, has a talk about their process of choosing Riak and their experience scaling it. They also go into more detail on their blog.
- Mochi Media uses Riak to store social graph data for Mochi Social and MochiGames.
- On our blog, there are posts on the advantages of Riak for gaming and how to build gaming applications with Riak.
For a complete list of resources, visit our Resources Page.
May 29, 2013
On our site, you may have noticed a new addition, the Resources Page. On this page, you can download or watch the latest content related to Riak, Riak CS, partnerships, key users, and the most popular verticals (such as Gaming, Retail, Advertising, and Mobile).
If you’re looking for whitepapers, case studies, videos, docs, slides, or webcasts, this is the place to find them. It will be continuously updated with up-to-date resources about Basho. Below is a glimpse at what you can find on the Resources Page.
- Sign up for our upcoming webcast on May 31st
- Get Riak CS up and running quickly by following our Fast Track documentation
- Learn how to launch Riak quickly via our hosting partners: AWS, Azure, Engine Yard, SoftLayer, and Joyent
- Watch Angry Birds developer, Rovio, speak on how they use Riak
- Read about how Copious uses Riak for their eCommerce marketplace
- Learn how to model advertising data using a key/value structure
- Download the technical introduction to Riak specifically for mobile applications and platforms
March 13, 2013
For a complete overview, download the whitepaper, “Gaming on Riak: A Technical Introduction.” To see how other gaming companies are using Riak, visit us at the Game Developers Conference at Booth #202!
As discussed in our previous post, “Gaming on Riak: A Brief Overview and User Case Studies,” Riak can provide a number of advantages for gaming platforms. Content agnostic, an HTTP API, many client libraries, and a simple key/value data model, Riak is a flexible data store that can be used for a variety of different use cases in the gaming industry. This post looks at some common examples and how to start building them in Riak.
Player and Session Data: Riak can serve and store key player and session data with predictable low latency, and ensures it is available even in the event of node failure and network partition. This data may include user and profile information, game performance, statistics and rankings, and more. In Riak, all objects are stored on disk as binaries, providing flexible storage for many content types. Since Riak is schema-less, applications can evolve without changing an underlying schema, providing agility with growth and change.
Social Information: Riak can be used for social content such as social graph information, player profiles and relationships, social authentication accounts, and other types of social gaming data.
Content: Riak is often used to store text, documents, images, videos and other assets that power gaming experiences. This data often needs to be highly available and able to scale quickly to attract and keep users.
Global Data Locality: Gaming requires a low-latency experience, no matter where the players are located. Riak Enterprise’s multi-datacenter replication feature means data can be served to global users quickly.
Below are some common approaches to structuring gaming data with Riak’s key/value model:
Riak offers robust additional functionality on top of the fundamental key/value model. For more information on these options as well as how to implement them, their architecture, and their limitations, check out the documentation on searching and accessing data in Riak.
Riak Search is a distributed, full-text search engine. It provides support for various MIME types & analyzers, and robust querying including exact matches, wildcards, range queries, proximity searches, and more.
Possible Use Cases: Searching player and game information.
Secondary Indexing (2i) gives developers the ability, at write time, to tag an object stored in Riak with one or more queryable values. Indexes can be either integers or strings and can be queried by either exact matches or ranges of an index.
Possible Use Cases: Tagging player information with user relationships, general attributes, or other metadata.
Possible Use Cases: Filtering game data by tag, counting items, and extracting links to related data.
To learn more about how your gaming platform can benefit from Riak, download “Gaming on Riak: A Technical Introduction.” For more information about Riak, sign up for our webcast on Thursday, March 14.