Abstract ：GaussDB(for Redis)（ Hereinafter referred to as Gauss Redis） It is a compatible product independently developed by Huawei's cloud database team Redis Protocol cloud native database , The database adopts the architecture of computing and storage separation , Break open source Redis Memory limit of , It can be easily extended to PB Levels of storage .
This article will focus on the storage architecture 、 Four characteristics 、 Competitive power 、 Application scenarios are introduced .
gaussian Redis Based on computing storage separation architecture , The computing layer implements thermal data caching , The storage layer realizes the drop of full data , Through the middle RDMA High speed network interconnection , Through the algorithm to predict the user's access law , Realize the automatic hot and cold exchange of data , The ultimate performance improvement .
The architecture is based on Huawei's powerful and widely used self-developed distributed storage system DFV, A set of Share Everything Cloud native architecture , Give full play to the original elasticity of the cloud 、 The advantages of resource sharing , Make Gauss Redis Have strong consistency 、 Second expansion 、 Low cost 、 Four features of super availability , Perfect to avoid open source Redis The master-slave accumulation of 、 There is no agreement between the master and the slave 、fork shake 、 Memory utilization is only 50%、 Big key Blocking 、gossip Cluster management and so on .
- Strong consistency
Data replication is a matter of storage , So professional things are left to professional teams . Through distributed storage DFV, gaussian Redis Easy to achieve 3 Copy strongly consistent , And it's easy to support 6 copy , For the industry's first .
In a strongly consistent Architecture , Users no longer have to worry about open source Redis The master-slave accumulation of , The loss of data 、 atypism 、OOM And so on , Not to worry about business mistakes , Like counters 、 Current limiter 、 Interview Statistics 、hash Fields, etc .
- Second expansion
After the expansion of data , Expansion is a high-risk and difficult operation . gaussian Redis Based on cloud native architecture , Divide the expansion into computing layer and storage layer . Computing layer expansion , No need for data relocation , Just modify the route map , It can be completed in seconds . Storage layer is a super data lake , Its capacity is huge , And the expansion is cut into fineness 64MB Data partition , Almost no sense of the upper database business .
So Gauss Redis It can easily support the large-scale expansion of business , And really calculate / Storage tiered on-demand expansion and purchase .
- Low cost
gaussian Redis Compared to open source Redis, Disk is used instead of memory on the storage medium . One side , Due to the separation of storage and computation architecture , Half the computing resources , That is, there is no slave node ; On the other hand , Storage resources are purchased on demand , No waste , And it uses logic / Physical compression . Final , Every time GB The comprehensive cost is less than that of open source Redis One tenth of .
- Super available
Open source Redis Or friends Redis Whether it's a single piece or a cluster , Its data replication adopts master-slave architecture , Lead to N Cluster of nodes , If you hang up a couple of masters and slaves at the same time （ namely 2 Nodes ）, The entire cluster is not available . And Gauss Redis After the separation of storage and calculation , Each computing node can see and share all the data , therefore N Nodes , I can tolerate hanging up at most N-1 Nodes , Really achieve higher availability than high availability .
gaussian Redis Not only is performance close to caching , And its storage capacity （ Extensibility 、 High performance 、 Ease of use ） Beyond databases . So in addition to caching scenes, you can choose Gauss Redis outside , Up to PB Level of large-scale data storage can choose Gauss Redis. The scene reference is as follows ：
compatible 5.0 agreement , Include string/hast/list/zset/set/stream/geo/ HyperLogLog/bitmap/pubsub wait , But for performance and security reasons , Disable individual danger commands ,
A detailed reference ：https://support.huaweicloud.com/usermanual-nosql/nosql_09_0076.html
In the past, users chose open source Redis When , Need to buy memory , For example, user data is 100G, Because of open source Redis Half the memory usage , Need to buy 200G Memory , And for high availability , You have to buy 200G The slave node , So that adds up to 400G Of memory . But buy Gauss Redis when , Users only need to store data according to the actual size , Choose to buy storage space on demand , Memory is just for performance acceleration （ Memory / The larger the disk ratio , The better the performance ）.
attach ： Reference
1.《 Hua Wei Yun GaussDB(for Redis) And self built open source Redis Compare the cost of 》
2. 《 One by fork Timeout caused , Let's revisit Redis The jitter problem of 》https://bbs.huaweicloud.com/blogs/227525
3. 《 When Redis Meet computing storage separation 》
4. 《GaussDB(for Redis) With native Redis Performance comparison of 》