February 14, 2013
Advertisers need to provide highly available, low latency experiences to thousands of clients and partners and millions of users. They also need to serve large amounts of data all over the world and can experience significant traffic spikes. To meet these needs, more advertisers are considering distributed data solutions. This post looks at common use cases for Riak in the advertising space, and the stories of two existing advertising users. For a full technical overview, download our whitepaper on Riak for advertisers.
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. For more information on serving ad content with Riak, check out our documentation.
- 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. You can find more information on building a session store with Riak here.
- Mobile: 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.
OpenX, the global leader in digital and mobile advertising technology, serves trillions of ads each year. They use Riak for handling user and trafficking data storage behind their data services API. Riak was selected due to its highly available, low-latency, redundant architecture. OpenX also uses Riak Enterprise’s multi-datacenter replication across several data centers. For more details about how OpenX uses Riak, check out the video of Anthony Molinaro, OpenX engineer, speaking at RICON2012, Basho’s 2012 developer conference.
Velti is a global marketing and advertising technology provider. Velti’s interactive subscriber services provide television broadcast audiences the ability to interact with programs using their mobile phone– voting on people or things, giving feedback, or participating in contests. They selected Riak because it is distributed, scalable, and highly available with the ability to handle large volumes of traffic. To minimize any potentially catastrophic outages, they also opted to build two geographically separated, mirrored sites using Riak Enterprise’s multi-datacenter replication feature. For more information on Velti’s use of Riak check out the complete case study.
To learn more about how advertisers can use Riak for their data needs, check out the complete overview, “Advertisers on Riak: A Technical Introduction,” or stay tuned for future blogs posts on data modeling and querying for advertising services built on Riak.
February 13, 2013
Bump, one of the most popular mobile apps of all time, 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 including events, communications sent and received, handset information and tokens needed to authenticate using social networks.
Bump chose Riak for its operational ease-of-use, ability to scale writes, and availability under failure conditions.
“It’s a relief that we don’t need to spend time thinking about whether or not Riak is working,” said Will Moss, Server Engineer at Bump. “It does what it’s supposed to do; nodes can go down but Riak will still work. It’s great to be able to deal with node failures the next day instead of at 3am.”
Recently, Bump expanded their mobile app offerings and launched Flock, a photo-sharing app. For more information on how Flock uses Riak, including their data model, watch Bump’s presentation at RICON2012, Basho’s 2012 developer conference. Bump is now running 25 nodes on Riak and storing around 3TB of data.
You can also check out the complete case study.
February 12, 2013
OmniTI is a provider of web infrastructures and applications for companies that require scalable, high-performance, mission critical solutions. They specialize in providing complex, high-transaction, and large-volume data applications. One of their customers is Viggle, a mobile app that rewards people for checking into the television shows they are watching. Viggle has more than a million users, and its advertisers include Pepsi, Kraft, and Capital One.
OmniTI designed the server architecture for Viggle’s mobile app and also designed the internal APIs that connect Viggle’s multiple back-end services, creating a cohesive, fault-tolerant system. OmniTI chose Riak as an integral part of this system, providing high availability and low latency during peak times.
“For this architecture, near-zero downtime and sustaining high throughput with low latency are critically important,” said Theo Schlossnagle, CEO of OmniTI. “We needed Viggle’s key components to remain available and responsible under sudden floods of user traffic, which made Riak the perfect fit. Riak has not disappointed us and has performed exactly as needed for this application.”
For more information on how Viggle has used OmniTI to design and support their system, check out their full announcement.
February 11, 2013
We are excited to announce Datapipe’s Stratosphere, a globally available, high-performance managed cloud computing platform, leverages Riak Cloud Storage (CS). Riak Cloud Storage provides Datapipe and its customers with highly available, low-latency and S3-compatible storage.
Datapipe offers a single provider solution for managing and securing mission critical IT services, including cloud computing, infrastructure as a service, platform as a service, managed hosting, and colocation.
Stratosphere is Datapipe’s globally available managed cloud computing platform. With the launch of Riak CS to support cloud object storage, Datapipe customers can now access cloud object storage from any solution hosted with Datapipe and adjacent to existing solutions in any Datapipe data center. Stratosphere is designed for enterprise high I/O production environments and can also be used for development, testing and QA environments. Use cases include large-scale marketing campaigns, brand sites and analytics; applications with variable peak demand times and other dynamic workloads; and cloud disaster recovery and geographic redundancy.
Datapipe delivers services from the world’s most influential technical and financial markets including New York metro, Silicon Valley, London, Hong Kong and Shanghai.
Why Riak Cloud Storage at Datapipe?
Datapipe selected Riak Cloud Storage for its low-latency, highly available object storage, operational ease-of-use, and multi-site replication capabilities. After extensively testing solutions from a variety of vendors in the space, Datapipe selected Riak Cloud Storage for a few core reasons:
- Built on years of developing Riak, Riak CS is designed to provide simple, available, distributed cloud storage at any scale.
- Riak CS is compatible with major cloud object storage clients and applications with its S3-based API.
- Riak CS meets the high performance requirements of the Stratosphere cloud-computing platform.
“Riak CS provides the high-performance, distributed datastore we need to deliver a sound foundation for our cloud storage needs now and for many years into the future,” said Ed Laczynski, VP Cloud Strategy, Datapipe.
Be on the lookout for upcoming documentation about using Riak CS-backed functionality on Stratosphere at Datapipe. Riak CS is now available with Datapipe in a limited beta, with an upcoming full release.
For a developer trial of Riak CS, sign up here.
February 7, 2013
Basho and our community have a handful of events lined up for February 13th. We have official meetups/group hacks in at least seven cities in the US.
We hope to see you next week. If you can’t attend an official Meetup, throw a Riak hack or drink up in your city and email firstname.lastname@example.org to tell us about it.
Thanks for being a part of Riak.
- Speaker: Weston Jossey, Software Engineer, Tapjoy
- Talk Title: Huge Data Migrations to Riak Made Easy(er)
- Details and RSVP
- Speaker: Sean Cribbs, Software Engineer, Basho Technologies
- Talk Title: The Deep Riak
- Details and RSVP
New York City
- Speaker: Aaron Brown, Lead Systems Engineer, ideel
- Talk Title: Riak at ideel
- Details and RSVP
- Speaker: Adron Hall and You
- Talk Title: Riak Hack & Brew
- Details and RSVP
- Speaker: Robert Zuber, Co-Founder, Copious
- Talk Title: Riak in a Multi-Datastore Strategy at Copious
- Details and RSVP
- Speaker 1: Pavan Venkatesh, Technical Evangelist, Basho Technologies
- Talk Title 1: From Relational to Riak
- Speaker 2: Sajith Kizhakkiniyil, Software Infrastructure and Backend Architecture Support, Apollo Group
- Talk Title 2: Riak at Apollo
- Details and RSVP
- Speaker: Adron Hall and You
- Talk Title: Nerd Lunch and The Start of Seattle Riak
- Details and RSVP
TED to Leverage Deep Relationships with Enterprise Companies to Accelerate Adoption of Riak Throughout Japan
CAMBRIDGE, MA and YOKOHAMA, JAPAN – February 7, 2013 – Basho Technologies, Inc. and Tokyo Electron Device Limited (TED) announced a strategic partnership and distribution agreement under which TED will resell Basho products throughout Japan and has become a strategic equity investor in Basho. Basho Technologies specializes in distributed systems technologies and is the creator of Riak, the industry leading distributed database and cloud storage software. TED provides world-class products and solutions that deliver competitive advantages to its customers. The strategic partnership enables Basho and TED to capitalize on the comprehensive resources of TED to open up new opportunities for Basho in the Japanese market. As part of the partnership, TED will build and maintain dedicated sales support and post-sales support resources specifically around Riak, Riak CS and future new products from Basho.
“Basho is very excited to enter into a long-term strategic partnership with TED,” said Sam Takagi, general manager of Basho Japan and Asia Pacific. “TED is highly regarded throughout Japan for its expertise in storage infrastructure, data backup and protection, and data warehouse design and operations. Riak’s strengths around high-availability, scalability and predictability are highly complementary to TED’s expertise and will provide an important new and innovative database and storage solution for TED’s customers. With Riak, Japanese businesses can meet demanding Internet, social and mobile requirements, as well as build highly-competitive public clouds and secure, high-performance private clouds.”
“Riak’s inherent distributed data capabilities offer a unique solution for companies building next generation applications, and cloud computing platforms that require high scalability, no downtime, and low cost operations,” said Vic Amano, VP & GM CN Business of Tokyo Electron Device Limited. “Our highly complementary expertise in data storage and our large and established network of commercial and industrial customers position us well to quickly speed adoption of Basho’s technology throughout Japan. The strategic nature of our partnership with Basho allows us to collaborate on future customer requirements and on product directions, allowing TED to maintain a competitive advantage for the next generation of database and storage technologies.”
“Through this strategic partnership, Basho is further building its global presence and particularly in the important and large market of Japan,” said Greg Collins, Basho’s president and CEO. “Our partnership with TED further underscores Basho’s commitment to the Japanese market. We are committed to building strong local capabilities and leveraging partnerships that have strong business networks and local-market expertise. TED is a terrific match for Basho. We look forward to working with TED and its customers for many years to come.”
Today’s announcement follows Basho’s recent opening of its Tokyo Office, officially launched on September 27, 2012.
About Tokyo Electron Device (TED) CN Business:
Tokyo Electron Device (TED) is a technical trading firm with a “trading business” function that provides semiconductor products and business solutions as well as a “development business” function that performs commissioned designing and the development of own-brand products. The Computer Network (CN) Business Section handles a wide range of storage systems, network-related equipment, and middleware products and provides them as part of its business solutions in the era of cloud computing. It has marketing functions in Japan and overseas to pick up on trends in the world’s advanced technologies ahead of others in order to offer products and services that cover processes that span everything from implementation to support.
For more information, visit: http://cn.teldevice.co.jp/english/.
About Basho Technologies
Basho Technologies is the leader in highly-available, distributed database technologies used to power scalable, data-intensive Web, mobile, and e-commerce applications and large cloud computing platforms. Basho customers, including fast-growing Internet-based businesses and large Fortune 500 enterprises, use the company’s flagship product, Riak, to deliver and manage digital media and unstructured data, implement multi-device user activity and sessions stores, to aggregate large amounts of data for logging, search and analytics, and to build scalable cloud storage platforms. The company is based in Cambridge, Massachusetts and operates regional offices in London, San Francisco, Tokyo and Washington DC.
Basho Technologies Medica Contact:
Bobby Patrick Chief Marketing Officer, Basho Technologies
Tokyo Electron Device Media Contact:
Yoichiro Hotta, Yoko Fukui Corporate Communications Department, Tokyo Electron Device Limited
Contact form: https://www.teldevice.co.jp/eng/contact_form_news.html
For inquiries regarding Basho Technologies and Riak Tokyo Electron Device Limited
Tsuyoshi Yoshi Tanaka, 1-510-624-3463
CN Business Contact form: http://cn.teldevice.co.jp/company/tea/form.html
February 4, 2013
Basho is proud be to be sponsoring Rubyfuza, happening this week in Cape Town, South Africa. We’ve sponsored and spoke at a few events in Cape Town over the past several years, and Riak has seen successful adoption among various South Africa-based companies like Praekelt and Mad Mimi. We’re happy to support the tech community in and around “The Tavern of the Seas.”
Sadly, as was the case with PyConZA, we won’t be able to send an official Basho envoy to be a part of it. That’s why we’re excited to announce that Jeremy Thurgood, a member of the Praekelt engineering team, will be there on our behalf as the Riak Ambassador.
Jeremy and his team have been using Riak in production for various projects, and have contributed some useful code to the community along the way. Though Python is his language of choice, he’s been brushing up on his Ruby and will be on-hand to answer any Riak questions that attendees might have. There will also be some Basho and Riak swag floating around to make sure that no one goes home empty-handed.
Enjoy Rubyfuza and make sure to say his to Jeremy if you have a moment. Also, if you’re attending a conference and want to serve as an extension of the Basho Team as a Riak Ambassador, shoot an email to email@example.com. We want to talk to you.
February 4, 2013
Today I’m happy to announce the 3rd pre-release of Yokozuna. It’s light on new features but has some good performance improvements and added robustness. Here are the highlights:
- Allow store/retrieval of schemas via HTTP.
- Upgrade to Solr 4.1.0 and the latest Riak.
- Improve write/index throughput by disabling Solr’s “realtime get” and switching from XML update to JSON.
- Added robustness around AAE and default index creation.
- Listen on ‘solr//select’ to more easily work with existing clients out of the box.
New for this release is the addition of a source package. I hope this might encourage those who are scared off by the process of building from git to give Riak/Yokozuna a try. These four steps below will produce a ready-to-run node under ‘rel/riak’.
wget http://s3.amazonaws.com/yzami/pkgs/src/riak-yokozuna-0.3.0-src.tar.gz tar zxvf riak-yokozuna-0.3.0-src.tar.gz cd riak-yokozuna-0.3.0-src make stage
January 31, 2013
This is the second in a series of blog posts covering Riak for retail and eCommerce platforms. To learn more, join our “Retail on Riak” webcast on Friday, February 8th or download the “Riak for Retail” whitepaper.
In our last post, we looked at three Riak users in the eCommerce/retail space. In this post, we will look at some common use cases for Riak and how to start building them with Riak’s key/value model and querying features.
- Shopping Carts: Riak’s focus on availability makes it attractive to retailers offering shopping carts and other “buy now” functionality. If the shopping cart is unavailable, loses product additions, or responds slowly to users, it has a direct impact on revenue and user trust.
- Product Catalogs: Retailers need to store anywhere from thousands to tens of thousands of inventory items and associated information – such as photos, descriptions, prices, and category information. Riak’s flexible, fast storage makes it a good fit for this type of data.
- User Information: As mobile, web, and multi-channel shopping become more social and personalized, retailers have to manage increasing amounts of user information. Riak scales efficiently to meet increased data and traffic needs and ensures user data is always available for online shopping experiences.
- Session Data: Riak provides a highly reliable platform for session storage. User/session IDs are usually stored in cookies or otherwise known at lookup time, a good fit for Riak’s key/value mode.
In Riak, objects are comprised of key/value pairs, which are stored in flat namespaces called “buckets.” Riak is content-type agnostic, and stores all objects on disk as binaries, giving retailers lots of flexibility to store anything they want. Here are some common approaches to modeling the data and services discussed above in Riak:
Riak provides several features for querying data:
Riak Search: Riak Search is a distributed, full-text search engine. It provides support for various MIME types & analyzers, and robust querying.
Possible Use Cases: Searching product information or product descriptions.
Secondary Indexing: Secondary Indexing (2i) gives developers the ability, at write time, to tag an object stored in Riak with one or more values, queryable by exact matches or ranges of an index.
Possible Use Cases: Tagging products with categories, special promotion identifiers, date ranges, price or other metadata.
Possible Use Cases: Filtering product information by tag, counting items, and extracting links to related products.
Check out our docs for more information on building applications and services with Riak.
January 30, 2013
Many teams run Riak in public cloud environments, either as a part of their infrastructure or as the foundation of it. Increasingly, we see enterprises and startups use a hybrid implementation that leverages both private infrastructure and public cloud services. This hybrid model is often used to address burst capacity issues, tenancy/location concerns, and simple proof-of-concept implementations prior to hardware acquisition.
Over the past few years, we have seen substantive adoption of Riak on Amazon Web Services. To that end, we are pleased that Basho has been approved as an Amazon Web Services Technology Partner. We look forward to highlighting interesting use cases, publishing detailed case studies of usage, and continuing to improve the usability and deployment speed of Riak on the AWS platform.
This post provides a high-level overview of your deployment options for using Riak on Amazon.
How Many Nodes?
Before we discuss the mechanics of implementation, it is important to consider the size of your deployment. One of the most frequent questions Basho is asked is, “How many nodes should I start with?”
If you have played with the Riak Fast Track you are familiar with deploying three nodes on a single machine. However, for production deployments, we recommend that your cluster be setup with a minimum of five nodes. For more details on how this minimum ensures the performance and availability of your implementation, please read the post entitled: Why Your Riak Cluster Should Have At Least Five Nodes.
So, you have a minimum of five nodes and you’ve decided that leveraging a cloud provider is appropriate for your current business needs. Now, how do you get started?
Amazon Machine Image
At its simplest, an Amazon Machine Image (AMI) is a pre-built machine image and configuration of Riak for Amazon EC2 users.
Obtaining and configuring the image is a relatively straightforward process. However, since Riak needs the nodes in the cluster to communicate with each other, there is some manual setup involved.
First, provision the Riak AMI onto the server of your choice via the AWS marketplace.
Once the virtual machine is created, manually configure the EC2 security group to allow the Riak nodes to speak to each other. The details of this step can be found on our docs portal under Installing on AWS Marketplace. However, this is generally as simple as opening a few inbound ports and defining a “Custom TCP rule.”
At this point, the machines can be clustered together. When the individual virtual machines are provisioned and the security group is configured, simply SSH into each machine and use internal riak-admin tools to join the nodes to the cluster.
But what if you want to automate some of the configuration of your cluster? Or, what if you want the ability to setup a VPC-based stack that includes:
- a front-end load balancer,
- a cluster of application servers,
- a Riak powered demo application,
- a back-end load balancer,
- and a cluster of Riak servers.
In that case, the Basho team has made available scripts that leverage AWS CloudFormation to build out your cluster in a scripted fashion.
Since this is a much different process than the previous method, it is well worth watching the introductory video (embedded below). In addition, the scripts in the cloudformation-riak repo can be thought of as “known good” templates. We accept Pull Requests and happy forking!
As always, there is a manual option.
If you need to control the system configuration or are most comfortable with software that you have built and deployed yourself, there is always the option to install from package or source.
For a full list of supported operating systems, check out the Installing and Upgrading page of the doc portal. In addition, we have recently launched a new download page that includes the source for the OSS version of Riak.
And easier to deploy than ever before. If you have feedback on present deployment alternatives, or recommendations on ways to make Riak support for cloud infrastructure easier, please drop us a note in the mailing list.