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
- 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 =========================================== ...
- 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 ...
- 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 ...
- 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 ...
- 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 ...
- 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 ...
- .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 ...
- [ 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 ...
- 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 ...
- 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
- 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> ...
- 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 ...
- Java The simplest calculator —— Use Args Parameters
public class Test{ public static void main(String[] args){ if(args.length<3){ System.out.println( ...
- 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 ...
- 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 ...
- 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 ...
- 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 ...
- 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] ...
- 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 ...
- 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 ...