Tag Archives: Riak Enterprise

NHS launches upgraded IT backbone Spine, powered by Riak

London, Sept. 9 2014 – the Spine – the electronic backbone of the UK’s National Health Service – has been successfully rebuilt to harness new technology, including the use of Basho Technologies’ distributed database, Riak Enterprise.

The Spine – a collection of national applications, services and directories – connects clinicians, patients and local service providers throughout England to essential national services, such as electronic prescriptions and patient health records.

Spine is used by more than 20,000 organizations that provide health care across England, including primary and secondary care sites, pharmacies, opticians and dentists. Riak, the open source distributed database, is key to providing the reliability and scalability for the platform to drive efficiency and improve patient care.

The NHS’ move to revamp the Spine, in a major project led by England’s Health and Social Care Information Centre (HSCIC), was driven by the need for a scalable, resilient and flexible system that would also result in cost-savings for the organization.

With these requirements in mind, the NHS selected Riak Enterprise, the commercial version of Basho’s distributed open source, highly available NoSQL database, to support the transition and implementation of the new Spine. Basho and the HSCIC collaborated throughout to ensure the technical knowledge of both organizations was reflected in enhancements to Riak and the wider project itself.

Riak has been tested thoroughly over the past year and will also allow the NHS to update the Spine seamlessly, removing interruptions which could adversely affect NHS employees and patients.

The transition was finalised over the weekend of 22nd August, 2014, with the infrastructure undergoing a 45-day period of intensive monitoring to ensure that it is performing as expected.

“The improvement of patient care is of the utmost importance in the healthcare industry. As data, such as patient records, prescriptions and all other medical information becomes digitized, it is vital that government health organizations can adapt and provide constant, reliable access to this information,” said Adam Wray, CEO at Basho Technologies.

Stuart McCaul, Managing Director, EMEA at Basho Technologies said, “The information stored on the Spine is potentially life-saving, and so users must be able to quickly access the data they require without delay or complication. Riak has previously been adopted by other healthcare services outside of the UK, such as The Danish Health and Medical Authority, and it provides the Spine with resiliency and predictable scalability while also saving the NHS both time and costs, contributing to the improvement of patient care in England.”

About Basho Technologies

Basho is a distributed systems company dedicated to making software that is highly available, fault-tolerant and easy-to-operate at scale. Basho’s distributed database, Riak, the industry leading distributed NoSQL database, and Basho’s cloud storage software, Riak CS, are used by fast growing Web businesses and by one third of the Fortune 50 to power their critical Web, mobile and social applications and their public and private cloud platforms.

Riak and Riak CS are available open source. Riak Enterprise and Riak CS Enterprise offer enhanced multi-datacenter replication and 24×7 Basho support. For more information, visit basho.com.

# # #

Riak for Business Intelligence: The NoSQL difference for data warehousing and analytics

By: Jeremy Hill

Business Intelligence makes it possible for organizations to make sense of the vast amount of customer, manufacturing and competitive information they have available in order to make smarter and better informed decisions. In turn, this enables organizations to become more responsive to customer needs, increase efficiencies in manufacturing processes, and respond to significant events quickly.

Historically the data that drives business intelligence has been stored in structured formats in a data warehouse, such as customer information on how much is spent. However, this approach misses out on the value of semi-unstructured and unstructured data, like the details from a customer call or a customer tweet.

With such information missing, a complete view of the customer or business can be limited. The consequence is that an inability to gain knowledge and measure customer information means businesses can fall behind, especially in a competitive market.

Business Intelligence needs NoSQL
Having access to all types of relevant customer information – structured, semi-structured and unstructured – is an essential requirement for business intelligence (BI) to help enterprises get ahead of the competition. Unlike structured, relational data warehouses, NoSQL databases make this possible with improved availability, scalability and fast response times. NoSQL databases are ideal for BI and data warehousing not only because of the diverse types of information it can deal with, but also because they are able to deliver data at the very time it is needed.

Enabling real-time analytics
NoSQL keeps up with transaction speeds as-it-happens, enabling real-time analytics. E-commerce transactions, for example, benefit from a NoSQL database because it can make a decision about what to do next when a buyer doesn’t complete a purchase. Instead of waiting 24 hours or longer for the data to move through a traditional data warehouse system, with a NoSQL system a feed goes straight from a transaction through a connecter to a NoSQL database. A sales analytics process can make a decision with the intelligence at that very minute, to consult the customer and understand the behavior in real-time, helping secure the purchase and preventing the loss of a customer transaction.

A recently announced Basho partner, Caserta Concepts, a technology consulting firm specializing in big data analytics, data warehousing and business intelligence, works with CIOs to deliver analytics solutions that support business goals. It uses Riak and Riak CS to accommodate unique client requirements across a broad range of data types – structured, semi-structured and unstructured – and provides continuous availability to keep critical line-of-business applications going around the clock. Caserta’s practice illustrates the viability for NoSQL in the database revolution to take on the volume, variety and velocity of data dynamics of today’s web-scale applications.

Intelligence for IoT transactions
With the vast amounts of information from Internet of Things (IoT) technologies, more business intelligence needs and use cases are at the cusp. Consider oil and gas organizations providing annual service contracts for boilers – analytics tells the business that anything beyond the second call out (or truck roll) wipes out the profit on the contract. In the connected world, NoSQL enables the next level of intelligence, which allows organizations to collect information so that, in the event of failure, they are able to determine which parts are needed in advance, eliminating the need for multiple visits. Gathering intelligence from this data also allows organizations to perform preemptive maintenance during the annual inspections to lower the frequency of unplanned, costly site visits.

With NoSQL, BI and data warehousing can become quicker and much more efficient. It allows organizations to react to events more quickly, increase customer attention, streamline the supply chain, predict customer behavior at the point it matters and predict future service calls. At the rise of big, unstructured data, NoSQL presents enormous opportunity for the future of business intelligence.


Basho is pleased to announce the release of Riak CS 1.5

Basho is pleased to announce the release of Riak CS 1.5, which provides additional performance enhancements and simplifies administration and development with additional admin tools, enhanced S3 compatibility and a technical preview of an architecture to support clusters with very large amounts of storage. Highlights include:

Admin Tools

  • riak-cs-admin: Consolidates admin operations into a command line tool.
  • riak-cs-stanchion: Changes the Stanchion IP and port.
  • riak-cs-debug: Packages log, configuration and operating system command files along with Riak command results.
  • syslog: Support for standardized syslog output for log aggregation using third-party tools.

S3 API Features

  • multi-object delete: Reduces request overhead by supporting multiple deletes in a single request (up to 1,000 keys per request).
  • cache control headers: Method for providing caching instructions in a request header.
  • PUT object – copy: Creates a copy of an object that already exists in Riak CS.

A full list of S3 API compatibility can be found on the Basho docs site here.

Increased Scalability (Enterprise Feature)

Partly due to limitations with distributed Erlang, prior to 1.5 scalability, Riak CS was limited to several petabytes. CS 1.5 introduces a technical preview of an architecture that allows multiple Riak clusters to reside under a single CS namespace, thereby significantly increasing the amount of storage possible in a cluster. A production-ready version is planned for later this year, with multi-data center support to follow.

Garbage Collection Improvements

In Riak CS, deleted and updated objects are not removed immediately. Instead, a reference is written to a special bucket and later removed by the garbage collection process at regular intervals. CS 1.5 includes several garbage collection enhancements that will benefit customers with a high rate of object deletion or updates.

  • concurrent garbage collection worker processes: Speed up the rate of garbage collection with the addition of multiple workers.
  • flexible enforcement of leeway interval: In previous versions, updated and deleted objects are reaped only after they reach a predefined time-based leeway interval, which was set when an object was marked for deletion. In CS 1.5 the leeway interval is managed by the garbage collection daemon and can be changed to remove objects sooner, for example, in emergency situations where maximum storage capacity is reached.

Other Notable Enhancements

  • faster bucket listings: Optimizations in the OTP xmerl library enables faster bucket listings, in particular for large buckets.
  • setting ACLs upon PUT object: Ability to set ACLs via header at PUT object creation is now fully functional.

Riak CS 1.5 is available at: http://docs.basho.com/riakcs/latest/riakcs-downloads/. A full list of changes is available in the release notes. Watch the blog for a detailed discussion of the multi-cluster work.

Basho Introduces Riak CS 1.5

Distributed cloud storage software adds additional Amazon S3 compatibility, performance improvements, simplified admin and increased scalability

CAMBRIDGE, Mass. – August 5, 2014Basho, the creator and developer of Riak, the industry leading distributed NoSQL database, today introduced Riak CS 1.5 and Riak CS 1.5 Enterprise, Basho’s distributed object storage software. Riak CS (Cloud Storage) is open source software built on top of Riak, used to build public or private clouds, or, as reliable storage to power applications and services. Riak CS 1.5 delivers new features that improve operation, performance and scalability. Basho continues to offer enterprise-class features in Riak CS Enterprise, which includes multi-datacenter replication, world class 24 by 7 support and flexible pricing model.

Companies dealing with large amounts of unstructured data like videos, images and documents are adopting cloud object storage so that data is highly available through a seamlessly scalable architecture. Businesses in industries such as broadcasting and telecommunications are relying on stability, integration functionality and performance of Riak CS to efficiently store, organize and access data while making it simple to manage.

“We offer our customers affordable and scalable cloud storage solutions built on Basho’s Riak CS,” said Makoto Oya, vice director of IDC Frontier. “The enhanced Amazon S3 compatibility and ability to scale well into the multi-petabyte level in Riak CS 1.5 will help us better support the rapid growth we are seeing in our storage business.”

I-NET Corp, a data processing service headquartered in Japan, uses Riak CS for its cloud service called Dream Cloud® and is looking to achieve further cost efficiency thanks to the increased scalability capabilities in Riak CS 1.5.

“Cloud-based object storage is ideal for storing our customer’s growing business-critical data, and we have relied on the excellent performance, cost efficiency and high reliability of Riak CS for the I-NET Dream Cloud®,” said Tsutomu Taguchi, senior managing director, business group of I-NET Corp. “Riak CS already provides us with high availability and now that Riak CS is further optimized to scale, we believe that Riak CS 1.5 delivered by Basho will drive even higher adoption of Dream Cloud®.”

New features enhance performance for object storage to store increasing amounts of data worldwide
Basho delivers new functions in Riak CS that include:

  • Additional Amazon S3 compatibility: Expanded storage API compatibility with S3 includes features such as multi-object delete, put object copy, and cache control headers for more flexible integration with content delivery networks (CDNs).
  • Performance improvement in garbage collection process: Delivered especially for customers with high rate of object updates and deletes, Riak CS now more quickly reaps objects flagged for garbage collection.
  • New, simplified administrative features: New and consolidated admin features make organizational tasks easier for activities such as cluster management, monitoring and troubleshooting.
  • Multi-cluster support: Technology preview for increased scalability of Riak CS Enterprise by allowing multiple Riak clusters to reside under a single CS namespace, thereby expanding the maximum capacity of a single cluster.

“Providing the strongest key value solution and object store means responding to customer needs and demands attentively,” said Dave McCrory, CTO of Basho. “With Riak CS 1.5 Enterprise, new features are delivered as requested by our customers. We are committed to make it easier to consume cutting edge versions of Riak and will continue to do this by executing a more iterative approach in how we release Riak.”

Availability and Pricing  

Riak CS 1.5 is available immediately for Debian, Ubuntu, FreeBSD, OS X, Red Hat Enterprise Linux, Fedora, SmartOS and Solaris. To view the latest technical documentation or to download Riak CS, visit docs.basho.com/riakcs/latest/.

Basho delivers customized packages for its commercial software, Riak Enterprise and Riak Enterprise Plus, with health checks, as well as options for project-based Professional Services engagements. Full pricing details of Basho commercial software are at http://basho.com/riak-enterprise/#pricing. To request a trial license of Riak CS Enterprise, prospective inquiries can request a Riak CS Tech Talk at http://info.basho.com/SignUpRiakTechTalk.html.

Supporting Resources 

About Basho Technologies 

Basho is a distributed systems company dedicated to making software that is highly available, fault-tolerant and easy-to-operate at scale. Basho’s distributed database, Riak, and Basho’s cloud storage software, Riak CS, are used by fast growing Web businesses and by one third of the Fortune 50 to power their critical Web, mobile and social applications and their public and private cloud platforms.

Riak and Riak CS are available open source. Riak Enterprise and Riak CS Enterprise offer enhanced multi-datacenter replication and 24×7 Basho support. For more information, visit basho.com. Basho is headquartered in Cambridge, Massachusetts.

World-Class Basho Engineering Support and Riak Enterprise Now Available Online

March 3, 2014

Earlier this year, we expanded our product portfolio to better meet the needs of our diverse and growing community. Not only did we add support-only options for open source Riak and Riak CS, but we also expanded our commercial licensing options and added various levels of pre-packaged Professional Services. These product options ensure customers of all sizes and at all stages are successful with Riak and Riak CS, even if they’re not quite ready for the benefits of Enterprise.

In addition to offering these new product options, we have also added credit card acceptance to Basho.com. Users that already know what they need can visit payments.basho.com, select the option that is right for them, and get started right away. As always, we recommend starting with at least five nodes. However, the Payments Page will accept purchases ranging from three to 19 nodes. Users will be able to purchase Riak Starter, Riak Basic, Riak Enterprise, Riak Enterprise Plus, and the Professional Services options (excluding Daily Rate and Test Drive).

For a full list of product options and what they include, visit our Product Page for Riak and Professional Services. To purchase now, visit our Pricing Page. For Riak CS products and services, please contact us to get started.

If you have any questions or aren’t quite sure which option is best for your needs, feel free to Contact Us.


A Closer Look at Starter, Basic, and Enterprise

January 15, 2014

Yesterday, we announced our newly expanded product portfolio. We have added many new offerings for both Riak and Riak CS to better meet the needs of our growing user base. You can check out prices and what’s been added here.

To complement this announcement, we wanted to provide a few more details around what each product tier provides.

For both Riak and Riak CS, we now offer Starter, Basic, Enterprise, and Enterprise Plus packages. All of these options offer the built-in benefits of Riak and Riak CS, which include a masterless system with automatic replication, a straightforward key/value data model, HTTP API and Protocol Buffers, Client Security (both Authorization and Authentication), Riak Control (a visual GUI to monitor your cluster), Riak Search (now with integrated SOLR), Secondary Indexes, MapReduce, Basho Hadoop Connector, and Riak Data Types (distributed counters, sets, and maps). For more information about many of these features, check out our Intro to Riak webinar.

All four tiers also offer Basho Engineering Support – offering access to our Client Services Engineers for assistance. For Riak Starter, this support is available 8am – 8pm Eastern. For Basic, Enterprise, and Enterprise Plus, it is available 24x7x365.

Technical Account Management Checkpoints are available quarterly for Starter and weekly for the other tiers. These checkpoints are meant to evaluate your cluster architecture and provide assistance where necessary.

All tiers offer Online Ticket Tracking for issues and Enterprise and Enterprise Plus also offer Emergency Patches. SLAs are available for urgent tickets with a 12-hour guarantee for Starter, a 1-hour guarantee for Basic, and a 30-minute guarantee for Enterprise and Enterprise Plus (with Special Event SLAs available in real-time for Enterprise and Enterprise Plus).

Both Riak Starter and Riak Basic have an Apache 2 license for the open source product and Enterprise and Enterprise Plus have a Commercial license for more flexible permitted usage.

Finally, as with Riak Enterprise and Riak CS Enterprise in the past, both Enterprise and Enterprise Plus include Multi-Datacenter Replication (which also enables cluster-to-cluster replication for secondary workloads), Reduced Replicas at Secondary Sites for more efficient storage, and SNMP and JMX Support. Enterprise Plus adds a Basho Baseline and Annual Health Check, which provides added Basho assurance and ensures long-term platform stability and performance.

Discounts are available based on the number of nodes in production or based on usage (for Riak CS). Perpetual Licensing is available upon negotiation. For more information on these options, contact us.

In addition to the four product tiers, we also added a range of Professional Services pricing options that include on-site trainings (for groups of all sizes) and Riak/Riak CS Test Drive. With Test Drive, the Professional Services team will help with initial backend design and assist new users in pre-production phases with on-site and continuous support.

Professional Services now has à la carte options such as Health Check, Quickstart, Operations and Automation Support, and Use Case and Data Access Pattern Analysis.

Contact us to get started with these new Riak and Riak CS product tiers.


An Inside Look: Basho’s Decision to Expand Open Source Options

January 14, 2014

Today, we announced our newly expanded product portfolio. We have added many new offerings for both Riak and Riak CS to better meet the needs of our growing user base. You can check out prices and what’s been added here.

An Inside Look

In 2009, Basho first open sourced Riak. That decision has driven our culture, our development process, our business model, and – in large part – our current success. The Basho team strongly believes that open source drives adoption (a concept discussed at length in Stephen O’Grady’s book, The New Kingmakers). In addition to being a favorite of start-ups, open source continues to attract more and more IT organizations, enterprise architects, and CIOs.

Basho support for Riak and Riak CS open source users is at the heart of this expanded product portfolio. Since launching Riak 1.0 just over two years ago, providing guaranteed support for non commercial-software users has been a topic of much discussion within Basho. As a distributed database, Riak is built for mission-critical applications where any downtime is not tolerable, revenue is often on the line, and a bulletproof, low-latency customer experience is absolutely required.

Our Enterprise customers love our support. Fortune 500 customers that put Riak into production never leave Riak. Our front-line Client Services Engineers are all full-stack engineers who resolve issues directly. In 2013, Basho’s average time to first respond to an Urgent ticket was 11 minutes. The team also handled over 2,000 customer requests that ranged from Riak configuration questions and performance tuning, to application design and full-stack inquiries. Some recent examples of customer praise:

Scott Densmore with CenturyLink

Brian Akins at Turner Broadcasting

In addition to our Enterprise customers, we also have a fast-growing community of users that are in different stages of their software development lifecycle. Our Enterprise level of support (24×7) may not always be necessary. Many early-stage users simply do not yet require the advanced features of Riak Enterprise and Riak CS Enterprise, such as Multi-Datacenter Replication.

As Basho has transitioned from start-up to growth stage, we’ve continued to evaluate how we can continue the ultra-high support experience our Enterprise customers have come to rely on, while expanding support to other users. This expanded product portfolio allows us to do both.

The Finer Details of the New Portfolio

For both Riak and Riak CS, we now offer four levels of service: Starter, Basic, Enterprise, and Enterprise Plus. All of these options combine the built-in benefits of open source Riak and Riak CS with Basho engineering support, providing access to our global team of Client Services Engineers for assistance.

All tiers offer online ticket tracking for issues and Enterprise and Enterprise Plus also offer emergency patches. SLAs are available for guaranteed ticket response by a Basho engineer:

  • 12-hour guarantee for Starter
  • 1-hour guarantee for Basic
  • 30-minute guarantee for Enterprise and Enterprise Plus
  • Enterprise and Enterprise Plus also offer a continuous support availability option during customer special events

Finally, as with Riak Enterprise and Riak CS Enterprise in the past, both Enterprise and Enterprise Plus include Multi-Datacenter Replication (which also enables cluster-to-cluster replication for secondary workloads), reduced replicas at secondary sites for more efficient storage, and SNMP and JMX Support. Enterprise Plus adds a Basho baseline and annual health check, which provides added Basho assurance and ensures long-term platform stability and performance. All Enterprise offerings include a commercial license – providing more flexible permitted usage.

Contact us to get started with these new Riak and Riak CS product tiers.


Basho Expands Product Portfolio for Riak to Meet the Needs of its Rapidly Growing Global User Base

CAMBRIDGE, MA – January 14, 2014Basho today announced the expansion of its product portfolio to meet the needs of the rapidly growing user communities surrounding both Riak, the industry leading distributed NoSQL database, and Riak CS, Basho’s fast growing cloud storage software. Since the launch of Riak 1.0 in 2011, Basho has grown to serve over one-third of the Fortune 50 and many of the world’s most popular brands.

Basho’s expanded Product Portfolio includes the following offerings:

  • The introduction of Riak Starter and Riak Basic providing Basho engineering and customer support for users of its Apache 2-licensed open source product. Starting at $2,800 per node/year, Riak Starter provides a new, low-cost entry point for Riak users to gain access to Basho’s support engineers. At $4,400 per node/year, Riak Basic provides enterprise-class, 24×7 support to open source users not requiring the benefits provided by Riak Enterprise or Riak CS Enterprise, Basho’s commercial software.
  • Riak Enterprise, Basho’s flagship distributed database software, will continue to offer additional enterprise-class features, such as multi-datacenter replication, combined with 24×7 support, and wrapped in Basho’s commercial license offering flexible permitted usage and ultra-high service levels. Our Riak Enterprise SLA for urgent tickets improves from 1-hour guarantee to 30 minutes in 2014. As a scale-out, multi-datacenter database, volume discounts are available.
  • Riak CS Enterprise, Basho’s flagship distributed cloud storage software, will continue to offer additional enterprise-class features, such as multi-datacenter replication, combined with 24×7 support, and wrapped in Basho’s commercial license with flexible permitted usage and high service levels. Our Riak CS Enterprise SLA for urgent tickets improves from 1-hour guarantee to 30 minutes in 2014. As a scale-out, multi-datacenter database, volume discounts are available.
  • The introduction of Riak Enterprise Plus and Riak CS Enterprise Plus integrates a baseline and annual system health check with a Riak Enterprise or Riak CS Enterprise license, providing an added assurance from Basho and ensuring long-term platform stability and performance.
  • The introduction of Riak Test Drive and Riak CS Test Drive – pre-packaged solutions offering Basho Professional Services for initial design and, with a 6-month Riak developers-node option, to assist new users in pre-production phases with on-site and continuous support.

“Our portfolio expansion is a significant response to serve the diverse needs of a rapidly growing Riak user community,” commented Bobby Patrick, Executive Vice President and CMO at Basho. “We are excited to expand our ability to offer Basho’s world-class customer support to a new segment of Riak open source users. These new offerings allow Basho to allocate resources to serve a broader variety of customer support needs, while simultaneously enhancing our support capacity to ensure the highest levels of quality and responsiveness to our Riak Enterprise and Riak CS Enterprise customers, many of whom run revenue and service-critical platforms and applications in production today that depend on Riak.”

Additional Pricing Information

Basho’s expanded subscription pricing for Riak Starter, Riak Basic, Riak Enterprise, and Riak Enterprise Plus is available on the Basho site. In addition, Basho also offers perpetual licensing options and reduced prices for developer-only nodes. Basho Professional Services offers additional services, including developer and operations training, Riak health checks, and custom engagement services.

Update on Riak 2.0

Basho anticipates the general availability of Riak 2.0 within the next 75 days. All Basho customers will have immediate access to customer support and Riak 2.0 software code at that time, subject to the support terms of their product tier. For more information on Riak 2.0, visit our blog: basho.com/introducing-riak-2-0/.

Introducing Riak 2.0: Data Types, Strong Consistency, Full-Text Search, and Much More

October 29, 2013

Today at RICON West in San Francisco, we announced the Technical Preview of Riak 2.0 is now available. This major release adds a number of new features that many of you have been waiting for.

Throughout RICON West, we will be discussing many of the Riak 2.0 features (both in track sessions or during lightning talks), so keep your eyes on the live stream over the next two days. Videos of all sessions will also be made available after the conference.

Here is a look at some of the major enhancements available in Riak 2.0:

  • Riak Data Types. Building on the eventually consistent counters introduced in Riak 1.4, Riak 2.0 adds sets and maps as new distributed data types. These Riak Data Types simplify application development without sacrificing Riak’s availability and partition tolerance characteristics.
  • Strong Consistency. Developers have the flexibility to choose whether buckets should be eventually consistent (the default Riak configuration today that provides high availability) or strongly consistent, based on data requirements.
  • Full-Text Search Integration with Apache Solr. Riak Search is completely redesigned in Riak 2.0, leveraging the Apache Solr engine. Riak Search in 2.0 supports the Solr client query APIs, enabling integration with a wide range of existing software and commercial solutions.
  • Security. Riak 2.0 adds the ability to administer access rights and utilize plug-in authentication models. Authentication and Authorization is provided via client APIs.
  • Simplified Configuration Management. Riak 2.0 continues to improve Riak’s operational simplicity by changing how, and where, configuration information is stored in an easy-to-parse and transparent format.
  • Reduced Replicas for Multiple Data Centers. Riak Enterprise 2.0 can optionally store fewer copies of replicated data across multiple data centers to better maintain a balance between storage overhead and availability.

Ready to get started? Download the Technical Preview.

Please note that this is only a Technical Preview of Riak 2.0. This means that it has been tested extensively, as we do with all of our release candidates, but there is still work to be completed to ensure it’s production hardened. Between now and the final release, we will be continuing manual and automated testing, creating detailed use cases, gathering performance statistics, and updating the documentation for both usage and deployment.

As we are finalizing Riak 2.0, we welcome your feedback for our Technical Preview. We are always available to discuss via the Riak Users mailing list, IRC (#riak on freenode), or contact us.

Riak 2.0 Technical Preview: Deep Dive

Riak Data Types
In distributed systems, we are forced to trade consistency for availability (see: CAP Theorem) and this can complicate some aspects of application design. In Riak 2.0, we have integrated cutting-edge research on data types known as called CRDTs (Conflict-Free Replicated Data Types) pioneered by INRIA to create Riak Data Types. By adding counters, sets, maps, registers, and flags, these Riak Data Types enable developers to spend less time thinking about the complexities of vector clocks and sibling resolution and, instead, focusing on using familiar, distributed data types to support their applications’ data access patterns.

A more detailed overview of Riak Data Types is available that examines implementation considerations and the basics of usage.

Strong Consistency
In all prior versions, Riak was classified as an eventually consistent system. With the 2.0 release, Riak now lets developers choose when operations should be strongly or eventually consistent. This gives developers a choice between these semantics for different types of data. At the same time, operators can continue to enjoy the operational simplicity of Riak. Consistency preferences are defined on a per bucket type basis, in the same cluster.

A RICON West 2012 talk entitled, Bringing Consistency to Riak, shares much of the initial thinking behind this effort. In addition, the pull request that adds consistency to riak_kv provides detailed information about related repositories and the implementation approach.

Redesigned Full-Text Search
Riak is a key/value store and the values are simply stored on disk as binary. With previous versions of Riak Search, Riak developers have long been able to index the content of these stored values. In Riak 2.0, Riak Search (code-named Yokozuna) has been completely redesigned and now uses the Apache Solr full-text document indexing engine directly. Together, Riak and Solr provide a reliable full-text context indexing solution that is highly available and built for scale. In addition, Riak Search 2.0 also fully supports the Solr client query APIs, which enables integration with existing software solutions (either homegrown or commercial).

The Basho engineers responsible for Yokozuna have created a resources page that includes recorded talks, Solr documentation links, and books on the topic.

Basho designed Riak with critical data in mind. Whether it’s data that affects revenue, user experience, or even a patient’s health (as is the case with the NHS), Riak ensures that this critical data is always available. However, often this critical data is also sensitive data. Riak 2.0 adds security to this data through the ability to administer access rights and plug-in various secure authentication models commonly used today.

The initial RFC that describes the security effort, including related Pull Requests, is available at github.com/basho/riak/issues/355.

Simplified Configuration Management
At Basho, we pride ourselves on providing operationally friendly software that functions smoothly when dealing with the challenges of a distributed system. In the past, configuration of Riak occurred in two files: app.config and vm.args. Riak 2.0 changes how and where configuration information is stored. It no longer uses Erlang-specific syntax but, rather, provides a layout more suited for all operators and automated deployment tools. This layout is easy to parse and transparent for Riak administrators.

More information on the vision and specific implementation considerations are contained in the repository at github.com/basho/cuttlefish.

Bucket Types
In versions of Riak prior to 2.0, keys were made up of two parts: the bucket they belong to and a unique identifier within that bucket. Buckets act as a namespace and allow for similar keys to be grouped. In addition, they provide a means of configuring how previous versions of Riak treated that data.

In Riak 2.0, several new features (security and strong consistency in particular) need to interact with groups of buckets. To this end, Riak 2.0 includes the concept of a Bucket Type. In addition to allowing new features without special prefixes in Bucket names, Riak developers and operators are able to define a group of buckets that share the same properties and only store information about each Bucket Type, rather than individual buckets.

More information about Bucket Types can be found in the Github Issue at github.com/basho/riak/issues/362. This issue describes the planned functionality, discussions about implementation, and includes related pull requests.

Change in Defaults for Sibling Resolution
Riak has always supported both application-side and timestamp and vector clock-based Last Write Wins server-side resolution. Prior to Riak 2.0, vector clock-based Last Write Wins has been the default. Moving forward, new clusters will hand off siblings to applications by default. This is the safest way to work with Riak, but requires developers to be aware of sibling resolution.

In a blog series entitled, Understanding Riak’s Configurable Behaviours, Basho Evangelist John Daily discusses the configuration of Last Write Wins, and many other options, in great detail.

More Efficient Use of Physical Memory
Riak nodes are designed to manage the changing demands of a cluster as it experiences network, hardware, and other failures. To do this, Riak balances each node’s resources accordingly. Riak 2.0 has vastly improved LevelDB’s use of available physical memory (RAM) by allowing local databases to dynamically change their cache sizes as the cluster fluctuates under load.

In the past, it was necessary to specify RAM allocation for different LevelDB caches independently. This is no longer the case. In Riak 2.0, LevelDB databases that manage key/value or active anti-entropy data share a single pool of memory, and administrators are free to allocate as much of the available RAM to LevelDB as they feel is appropriate in their deployment. Detailed implementation documentation can be found in the basho/leveldb wiki.

Riak Ruby Vagrant Project
If you are interested in testing Riak 2.0, in a contained environment with the Riak Ruby Client, Basho engineer Bryce Kerley has put together the Riak-Ruby-Vagrant repository. In addition, this environment can be easily adapted to usage with other clients for testing the new features of Riak 2.0.


Sign Up For a Riak Tech Talk

May 20, 2013

Are you and your team evaluating Riak? Basho offers Tech Talks for companies that are evaluating Riak Enterprise and Riak CS Enterprise. In these sessions, our technical evangelists will provide your engineers, developers, and ops team with a personalized Riak deep-dive to help develop your use case and answer questions. The goal is to accelerate your learning process, give you direct access to our team, and ensure your evaluations and deployments are a success. You can sign up for a Tech Talk here. Simply provide your contact information, some details on your use case, and what stage you’re in, and we’ll work with you to set up an in-person or virtual meeting depending on location and availability.

Riak Tech Talks cover topics including:

  • Riak’s architecture, properties and principles
  • Structuring applications with Riak’s key/value data model
  • Various querying options including search, secondary indexing, and MapReduce
  • What your operations team needs to know before implementation
  • Riak configuration, tuning, and performance considerations
  • Case studies of similar use cases in production and what they learned
  • What’s new in Riak and features under development

You can sign up for a Tech Talk here.