Abstract :Codis Cluster in China Redis Ecosphere is very popular , The community has stopped maintenance . This article compares the architecture and features , Take you to Huawei cloud GaussDB(for Redis) New value of .

This article is shared from Huawei cloud community 《 Hua Wei Yun GaussDB(for Redis) Uncover secrets 19 period :GaussDB(for Redis) Overall comparison Codis》, author : gaussian Redis The official blog .

One 、Codis How hot it is ?

say Codis It is the most popular self built in China Redis Cluster solution , Not at all . The customer once said :

“Codis Don't you know? ? Our company has used it for many years , Good stuff .”

You bet , Compared to open source with decentralized architecture Redis Cluster,Codis such proxy Agent clusters are obviously more “ To use ”, Even even RedisLabs Officials have launched similar functions redis-cluster-proxy To make up for tradition Cluster shortcoming .

But in fact, from N Years ago ,Codis There is no one to maintain the community , Our client project manager, Mr. Haipeng, often helps clients build their own projects Codis Moving to the cloud GaussDB(for Redis).

Codis It's really excellent , But we can responsibly say :

Hua Wei Yun KV database GaussDB(for Redis) Better !

Two 、GaussDB(for Redis) vs Codis: Architecture Competition

First , Let's look at the difference between the two products from the perspective of technical architecture .

Pictured , The differences in architecture are clear at a glance , We can analyze it from the top down :

1、 Non-standard SDK vs standard SDK

Public cloud users generally hate “ Make special ”, However Codis We have to do something special .Codis Kidnapping users must use non-standard Jodis SDK To solve the single point of failure of the agent layer . But if users prefer to use standards SDK( As famous as Jedis) Well ?Codis Express : I'm sorry , Say goodbye to Gao Ke .

contrary ,GaussDB(for Redis) It is very friendly in use , The business side uses any standard SDK Will do , At the same time, it is highly available 、 Automatic load balancing capabilities are all in . When moving to the cloud ,GaussDB(for Redis) Compatibility is also very mature , No matter what the customer's original code is StandAlone, still Cluster、Sentinel Equal mode , Fine 0 Transform the cloud , Really use it out of the box , Excellent experience .

2、 No load balancing vs Professional ELB

Codis Although the agent layer of provides horizontal expansion capability , But it's not easy to use : Or sacrifice high to use standards SDK Connecting a single point ; Or use Jodis SDK, But the price is that the business is going to be non-standard .

and GaussDB(for Redis) Provide ELB, It is convenient for users to access uniformly , While simplifying client complexity , It also brings professional load balancing capability . With this unified access IP, Users are equivalent to using a single machine with super large capacity Redis, You don't need to worry about the bottom details .

3、 Storage and calculation coupling vs Deposit is separate

It can be said that ,Codis It is in multiple sets Redis A layer of packaging is made on the chip , The architecture model is the traditional memory computing coupling . At large key、 Data consistency 、 Slice failure 、 In typical scenarios such as expansion and contraction , Both continue open source Redis Long term “ Pain points ”.

GaussDB(for Redis) Adopt the architecture of separation of storage and calculation , The computing layer focuses on data services , The storage tier is based on high-performance distributed shared storage pools , Ensure that the storage of three copies of data is strongly consistent , Ultra high reliability . At the same time, the hardware cost is greatly saved , Help reduce business burden .

3、 ... and 、GaussDB(for Redis) vs Codis: Feature competition

From the comparison of architecture dimensions mentioned above, we can see ,GaussDB(for Redis) There are ELB Let the business side “ Better to use ”, There is a storage pool for data “ More reliable ”, Compared with self built Codis The cluster is too good .

Let's talk about it from the feature dimension ,GaussDB(for Redis) What value can it bring to the business side .

1、 Compatibility

GaussDB(for Redis) Fully compatible with Redis agreement , Compatible with StandAlone/Cluster/Sentinel Many other kinds SDK Pattern , Facilitate business relocation to the cloud . and Codis The compatibility of is very poor .

2、 stability

build by oneself Codis Cluster stability strongly depends on open source Redis Ability , Whether it is expansion or expansion key scene , All have the same pain points , No more details here .

GaussDB(for Redis) The self-developed architecture completely solves the problem of open source Redis Of fork problem , Greatly improved stability ; meanwhile , Under the deep cooperation with the distributed storage pool Architecture , The reliability of the data is also better than Codis.

3、 cost

Codis It is still traditional pure memory Redis Encapsulation , The business will touch the cost pain point if it does not save much . With the long-term development of the business , Gradually, there will be data cooling ( Such as APP Cold users of ), here Codis The proportion of really valuable thermal data in the market is getting lower and lower , The cost of full data in memory can be quite high .

GaussDB(for Redis) The calculating power of is selected according to needs , Low storage prices , Very suitable for large capacity KV Storage scenarios .

Four 、 summary

Codis It was once favored by many students in development and operation , It is the memory of the times , however , Technology is developing rapidly . ad locum , It is suggested to use Codis You can consider using GaussDB(for Redis), Feel the enterprise class of huaweiyun KV The new value of databases .

5、 ... and 、 appendix

  • The author of this article :

Huawei cloud database GaussDB(for Redis) The team

  • More product information , Welcome to the official blog :

bbs.huaweicloud.com/blogs/248875

Click to follow , The first time to learn about Huawei's new cloud technology ~

reveal GaussDB(for Redis): Overall comparison Codis More articles about

  1. Lesson Eleven ——codis-server High availability , contrast codis and redis cluster Advantages and disadvantages

    [ Job description ] 1. To configure codis-ha 2. Sum up the comparison codis Cluster mode and redis Of cluster The advantages and disadvantages of clustering =========================================== ...

  2. Hua Wei Yun PB Level database GaussDB(for Redis) Unveiling the seventh issue : gaussian Redis Consistent with strong

    Abstract : stay KV Database domain ," Strong consistency " It's not just a technical term , It is an important requirement of business and operation and maintenance . Qingming just passed , May Day holiday is coming . Great spring , Why don't you go to Wuyuan to see rape flowers ! Xiao Yun opens quickly APP The rest of the tickets 2 Zhang , catch ...

  3. Hua Wei Yun PB Level database GaussDB(for Redis) Unveiling the eighth issue : Use Gauss Redis Count

    Abstract : gaussian Redis, The best choice for counting ! One . background When we turn on our mobile phone and tweet , It's time to start dealing with all kinds of counters . After we sign up for an account , Weibo will record a set of data for us : Pay attention to several . Number of fans . Dynamic number -: When we brush posts , Focus on ...

  4. In depth evaluation GaussDB(for Redis) Big Key The impact of the operation

    This article is shared from Huawei cloud community < Ink Sky Wheel evaluation :GaussDB(for Redis) Big Key The impact of the operation >, author : gaussian Redis The official blog . In the previous article < Ink Sky Wheel evaluation :GaussDB(for R ...

  5. Ignite Performance testing and the evaluation of redis Comparison of

    The test method In order to Ignite Make a basic understanding of , Did a performance test , The test method is also relatively simple, mainly for client Pattern , Because this method and use redis It's like . The test method is very simple, mainly the following points : No parameter optimization , Default ...

  6. Pea clip Redis Solution Codis Source code analysis :Proxy agent

    Pea clip Redis Solution Codis Source code analysis :Proxy agent 1. Preliminary knowledge 1.1 Codis Codis I won't go into details , Take an excerpt GitHub Some of the project descriptions on : Codis is a proxy b ...

  7. .NET Use in the environment RabbitMQ RabbitMQ And Redis Queue comparison RabbitMQ Introduction and use

    .NET Use in the environment RabbitMQ   In the field of enterprise application system , Will face the communication between different systems . Integration and integration , Especially when faced with heterogeneous systems , This kind of distributed call and communication becomes more and more important . secondly , In general, there are many systems that do not require high real-time performance ...

  8. [ Re posting ]TimesTen And Redis Comparison of

    TimesTen And Redis Comparison of 2017-02-23 17:25:27 dingdingfish  Read the number 3682 more Category column : TimesTen Oracle Redis In-Memory ...

  9. RabbitMQ And Redis Queue comparison

    This article is only for RabbitMQ And Redis Compare the queue application with the specific implementation method , It also depends on the actual needs of the system Brief introduction RabbitMQ RabbitMQ It's the realization of AMQP( Advanced message queue protocol ) In the news of ...

  10. memcache、redis Principle Comparison

    One . problem :      The database table has a large amount of data ( Ten million ), It is required to make the server respond to the needs of users more quickly .   Two . Solution :      1. Through high-speed servers Cache Cache database data      2. In-memory database     ( ...

Random recommendation

  1. JS Realization base64 Encryption and decryption

    JS Realization base64 Encryption and decryption Reprinted from http://blog.csdn.net/fengzheng0306/archive/2006/04/25/676055.aspx Method 1 : <HTML> ...

  2. java classpath Go into detail ( turn )

    http://developer.51cto.com/art/200509/2786.htm Set classpath   structure   Can be based on JDK Tool use -classpath Options ( Preferred method ) Or set CLASSPA ...

  3. Java The simplest calculator —— Use Args Parameters

    public class Test{ public static void main(String[] args){ if(args.length<3){ System.out.println( ...

  4. UML Basic drawing of class diagram

    from :http://www.cnblogs.com/import-this/p/5330501.html 1. class Classes include attribute methods The life in the figure below is an attribute Metabolism is the method 2. Basic relationship a. generalization (Gener ...

  5. 201521123066 《Java Programming 》 The third week is the summary

    1. This week's learning summary Learning object-oriented , I will learn a lot of fragmented concepts and knowledge . Try to learn how to use mind maps to break up these concepts . Knowledge is organized . Please use pen and paper or the following tools to draw the knowledge points learned this week . Take a picture or upload it . 2. In writing ...

  6. LeetCode 204. Count Primes ( The number of prime numbers )

    Description: Count the number of prime numbers less than a non-negative number, n. Title Tag :Hash Table topic ...

  7. When inline Element package block Element

    There are often picture links written as follows : <a href="www.baidu.com"><img src="baidu.jpg" /></a&g ...

  8. Eclipse Set author date, etc Java Comment template

    Eclipse As JavaIDE(Integrated Development Environment, Integrated development environment ), It can be added automatically by setting Javadoc Annotation information , Such as @author The author's name [email protected] ...

  9. python subprocess.Popen Console output Real time monitoring of Baidu ping value

    import subprocess file_out = subprocess.Popen('ping www.baidu.com', shell=True, stdout=subprocess.PI ...

  10. 1458 Common Subsequence

    The simplest LIS; Set the string to a = acc  b = cc be dp The array is 0 0 1 1 1 2 b[0] = a[1], b[1] = a[1] To prevent this from counting two To be clear Why don't you double calculate That is to say ...