Riak 2.0 Technology Preview depth analysis

Riak 2.0 Technology Preview has been available for download, the major version added a lot to look forward characteristics, its main improvements include: . 1. Riak data types  (Riak 1.4 introduced) in the final match counter basis, Riak 2.0 added a set and map as a new type of distributed data. Riak these data types to simplify application development without sacrificing availability, and partition tolerance characteristics of Riak. 2. Strong consistency.  Developers can choose according to the data requirements which bucket should have the final consistency (today's Riak default configuration provides high availability) or strong consistency. Integrated full-text search .Riak Apache Solr search has been completely redesigned in Riak 2.0, to take advantage of Apache Solr engine. Riak 2.0 of Solr search support client query API, to integrate the current main software and business solutions. 3. Security.  Riak 2.0 adds administrator access and use the plug-in model validation. It provides authentication and authorization by the client API. 4. Simplified configuration management.  Riak 2.0 continue to improve the ease of operation, and by changing the storage location of the configuration information stored in an easy and transparent parsing format. 5. Reduce copy multiple data centers. Riak 2.0 Enterprise Edition can choose to store some copies of data in multiple data centers, in order to maintain a better balance between storage cost and availability. Please note that this is only a technical preview version of Riak 2.0. This means that it has been extensively tested, although we have all been treated release candidate, but to ensure that the production sclerosis is still much work to be done. From now until the final version is released, we will continue with manual and automated testing, develop detailed use cases, collect performance statistics, and update documents to use and deploy. Riak 2.0 Technology Preview: Depth profiling 1. Riak type of data in distributed systems, we have to sacrifice in exchange for the consistency of availability (see: CAP Theorem), which will make some aspects of application design becomes complicated. Riak In version 2.0, we integrate cutting-edge type of data research --CRDTs (conflict-free copy data type), the first created Riak data types. By adding a counter, set, map, flag registers, and the data types of these Riak, (Riak) allows developers to spend less time in terms of the complexity of the vector clock and conflict resolution, contrast (so they can) they focus on familiar distributed data types to support their application data access patterns. Data type checking and precautions embodiment Riak and basic usage, and  herein provides a more detailed overview. 2. strong consistency in all of the previous versions, Riak was characterized as a final consistency of the system. With the release of version 2.0, Riak now allows developers to select the operation when it should be consistent or eventually consistent strong. This provides developers with a choice of these different types of data semantics. At the same time operators can also continue to enjoy the ease of operation of Riak. Each bucket on the basis of types in the same cluster are defined consistency preferences. A discussion RICON West 2012 conference called "add consistency Riak", on the basis of this discussion, we have absorbed many of the original ideas. In addition, (on github) add consistency pull request for riak_kv provides detailed information about the database and implement methods. 3. redesigned full-text search Riak is a key / value store, and the stored binary value on a simple disk. In previous versions of Riak searched, Riak developer would have to be indexed in the storage of these data content. In Riak 2.0 in, Riak search function (code: Yokozuna) has been completely redesigned and now directly with Apache Solr full-text search engine. Riak and Solr provides a reliable solution for full-text content indexing, high availability and easy to expand. In addition, Riak Search version 2.0 also supports all of the Solr client query APIs, which allow (customers) to integrate existing software solutions (which can be home-grown and can also be commercial). Responsible for Yokozuna engineers have created a resource page, which contains the transcript, Solr document links, as well as the topic of this book. 4. Security Basho Riak in time to the idea of design CRITICAL data. Whether it is the impact of data suffered, user experience, and even the patient's health (NHS event of circumstances), Riak will ensure availability of critical data. However, these critical data is very important data. Riak 2.0 of these data is added security, use today's common security authentication mode management authority and plug-ins. The original RFC, describes the security points, including the relevant pull request, can  github.com/basho/riak/issues/355 view. 5. simplify configuration management in Basho, we are proud to provide the user-friendliness of the software can run smoothly when dealing with distributed systems. In the past, Riak is arranged in two files: app.config and vm.args. Riak 2.0 has changed how and where the configuration information is stored. It is no longer using Erlang specific syntax, but provides a more suitable tool for layout and automatic deployment of all operations. The layout is easy to understand, transparent to the administrator. For more information on vision and specific implementation considerations contained in the warehouse  github.com/basho/cuttlefish in. 6. Bucket type before Riak version 2.0, is composed of two key components: bucket and they belong to a unique mark in the bucket. Bucket as a namespace to allow merged into a similar set of keys. Moreover, they provide a way to configure a old version of Riak to process data. In Riak 2.0, the new features (especially security and strong consistency) need to interact with a bucket collection. For this purpose, Riak 2.0 Bucket type comprising the concept. Bucket and allows new features without special prefix name, and developer Riak operator may define a collection bucket share the same properties, only the type of information stored for each Bucket, rather than a single bucket. For more information about Bucket type can be found in  Github Issuegithub.com/basho/riak/issues/362 found on. This issue describes the functions of planning, discussion and implementation related to the pull request. 7. Change the default values of sibling conflict resolution Riak usually supports both the application side combined with a timestamp such a solution, but also support solutions based on the last writer clock vector winning service side. Before Riak 2.0, based on last write wins vector clock program is the default solution. Later, the new cluster to resolve the conflict at the same level to the program default application processing. Riak run this way the safest, however, this requires developers to develop their own similar solution to the conflict. In an article entitled  "Understanding Riak can be configured to act" series of blog posts, the supporters of Basho John Daily on very detailed discussion of the last write wins configuration and many other options. 8. A more efficient use of physical memory Riak node is designed to manage a cluster demand changes, such as experience network, hardware and other failures. For this purpose, Riak appropriate balance of resources of each node. Riak 2.0 significantly improved by allowing the local database with the cluster load fluctuation to dynamically change the size of the cache, so that LevelDB available physical memory (RAM). In the past, different LevelDB independent cache RAM allocation is necessary. Now no longer the case. In Riak 2.0, the management of key / value data or active anti-entropy LevelDB database share a single pool of memory, administrators can allocate the available RAM LevelDB needed to deploy them. Detailed implementation documents can be found on the basho / leveldb wiki. 9. Riak Ruby Vagrant project if you are interested in testing Riak 2.0, a client that contains Riak Ruby environment, Basho engineer Bryce Kerley to Riak-Ruby-Vagrant repository are put together. In addition, the test environment can be very easily combined in hand Riak 2.0 features with other clients. Original Source: http: //basho.com/introducing-riak-2-0/

Reproduced in: https: //my.oschina.net/766/blog/210866

Guess you like

Origin blog.csdn.net/weixin_33842328/article/details/91547787