Interview with Mo Tianlun | Huawei Cloud Wen Yun Bo: From the perspective of customers, where is the "scent" of GaussDB (for Redis)?

Guest speaker : Wen Yunbo , R&D engineer of Huawei Cloud Database NoSQL team Organized by : Motianlun Community

Introduction GaussDB (for Redis) adopts a cloud-native distributed architecture, is fully compatible with the Redis protocol, and supports rich data types. It provides one-stop services such as real-time data persistence, strong consistency of multiple copies, and real-time monitoring, elastic scaling, and automatic backup. What I want to share with you today is what value GaussDB (for Redis) can bring from the perspective of customers .

Introduction to GaussDB (for Redis)

1. What is GaussDB (for Redis)

First, the idea I want to convey is: GaussDB (for Redis) is Redis .

At present, there are a large number of users who use Redis in the industry. I believe they experience various pain points in the process of using it. Our GaussDB (for Redis) is compatible with open source redis and realizes zero business relocation and transformation. GaussDB (for Redis)

It adopts a cloud-native distributed architecture, is fully compatible with the Redis protocol, supports rich data types, and provides real-time data persistence, multi-copy strong consistency guarantee, and one-stop services such as real-time monitoring, elastic scaling, and automatic backup.

More product information about GaussDB (for Redis): https://bbs.huaweicloud.com/blogs/248875

Figure 1 GaussDB(for Redis) Advantages

2. GaussDB (for Redis) software architecture

HUAWEI CLOUD has many sub-products in the fields of storage, database, and big data, such as Hadoop, Hbase, and Hive in the field of big data. In fact, the bottom layer of them will be based on a high-performance distributed storage pool to realize the separation of storage and computing, and bring enterprise-level capabilities through such an architecture.

GaussDB (for Redis) has an advanced storage-computation separation architecture :

  • Computing layer: Provides scalable throughput performance. ELB+Proxy architecture, the client can quickly access services with a single-machine mode client.
  • Storage layer: Provides highly reliable data storage capabilities. Three copies of data, strong consistent storage. The expansion is completed in seconds, and the service is 0 aware.

At the same time, the most critical feature is that the data is not stored in the computing layer, and the data is fully sunk in the storage pool. Regarding the storage pool itself, it has data persistence capability and is stored in the form of three copies, so the data persistence capability is relatively high.

Figure 2 GaussDB (for Redis) software architecture

Pain points solved by GaussDB (for Redis)

1. Solve cost pain points

The first is reflected in the instance price . GaussDB (for Redis) saves 20%-70% compared to open source. At the same time, the larger the capacity, the higher the cost performance. The standard capacity can be expanded to 12TB.

The second is data compression . The combination of logical compression and physical compression saves more space than open source Redis. Space saving means cost reduction. According to actual business tests, in GaussDB (for Redis) instances, common structures such as string and hash occupy only 70%~85% of the storage space of open source Redis.

Finally, it is reflected in the later expansion . Different from the local memory of each node of open source Redis to load data shards, GaussDB (for Redis) can achieve independent storage expansion without having to pay for excess computing power. At the same time, the capacity is adjusted according to the strength of 1GB, and the on-demand use is also a way to save costs.

To sum up, the pain point of cost can be completely solved here.

Figure 3 GaussDB (for Redis) solution in terms of cost

2. Solve stability pain points

  • Stability Index

As a hidden indicator, stability can easily affect the efficiency of development and operation and maintenance.

Figure 4 Comparison of stability indicators between GaussDB (for Redis) and open source Redis

  • Cross-Region Disaster Recovery

Cross-region disaster recovery is to implement a RsyncServer process, which is responsible for data replication between nodes in the cluster, and implements a logically complete disaster recovery plan based on this.

In addition to providing the above 3AZ strong consistency solution, Gaussian Redis also provides cross-region disaster recovery, that is, asynchronous disaster recovery between two instances. A Rsync-Server module is added to the solution to subscribe to the newly added logs on the primary instance, and then the logs are de-encoded into the corresponding format, and forwarded to the standby instance of the opposite end, which can be played back by the standby instance. This solution can realize two-way synchronization, resuming transmission from breakpoints, conflict resolution and so on.

Figure 5 GaussDB (for Redis) cross-region disaster recovery

3. Solve the pain points of expansion

When the business continues to expand, the open source Redis can only add shards, which leads to problems such as tossing in expansion, inability to balance data in a timely manner, and soaring costs. GaussDB (for Redis) can achieve three values ​​in terms of capacity expansion: flexibility, non-stop service, and cost savings.

Figure 6 GaussDB (for Redis) solution for expansion

GaussDB (for Redis) case sharing

1. Case 1: Large-scale mobile game cross-server battle

In the case of a large-scale mobile game cross-server battle, the GaussDB (for Redis) database solves the global cache and cross-server cache, helping to easily cope with the peak traffic of cross-server multiplayer battles.

  • High stability, easy to deal with peak changes in business
  • Elastic scaling to achieve second-level lossless expansion, real-time expansion and ease of use during the peak battle on the first day of service, with zero impact on business;
  • Provide a three-copy disaster recovery solution, ensure data consistency from the bottom, avoid the appearance of dirty data from the source, and effectively assist customers to simplify the upper-layer business logic architecture.

Figure 7 The application case of GaussDB (for Redis) in the cross-server battle of large-scale mobile games

2. Case 2: Commodity Inventory System

In the scenario of a commodity inventory system, the GaussDB (for Redis) solution can achieve strong consistency, no dirty reads, and no overselling.

E-commerce systems often involve high concurrent access. Customers originally used open source redis, and the unrobust master-slave structure would have the risk of data loss, resulting in overselling. After switching to GaussDB (for Redis), using the strong consistency capability, the three copies of data in the storage pool are consistent, and there is no data inconsistency or loss. Whether the inventory system is online or in spikes, there will be no data inconsistency to avoid oversold.

Figure 8 Application case of GaussDB (for Redis) in commodity inventory

3. Case 3: Feature Platform

The third case is feature platforms. Combined with big data, massive user features and product features are poured into storage, and feature data and user portraits are extracted with low latency and high concurrency, and online or offline data processing is performed, and recommended to users in real time.

The solution of GaussDB (for Redis) can achieve: high resistance to writing, reliable data storage without loss, cost control, high throughput, and low latency.

Figure 9 Application case of GaussDB (for Redis) on the feature platform

4. Case 4: National Vehicle Driving Behavior Log

In the national vehicle driving behavior log, the solution of GaussDB (for Redis) realizes 100TB-level data storage and strong persistent storage, and at the same time achieves the effect of reducing costs.

Figure 10 Application case of GaussDB (for Redis) in the national vehicle driving behavior log

4. Summary of the advantages of GaussDB (for Redis)

Finally, I summarize the advantages of GaussDB (for Redis) with six points.

  • Performance advantages Latency: sub-millisecond to millisecond throughput: horizontal expansion with the number of nodes

  • Cost advantage Experience can reduce the cost by 20%~70%. The cost reduction effect of replacing large-scale Redis is remarkable.

  • Advantages of business 0 transformation Do you need transformation? 0 transformation, fully compatible with open source Redis in use

  • Capacity advantage A single instance supports 12TB (open source Redis is more than 512G and sold out all the year round)

  • Fast capacity expansion advantage Capacity expansion: completed in seconds, business 0-perceived expansion capacity: completed in minutes, only seconds affected

  • No data is lost, and it can be persistently stored one by one command

Finally, you are welcome to visit the official website of HUAWEI CLOUD GaussDB (for Redis) for more details.

https://www.huaweicloud.com/product/gaussdbforredis.html

For more exciting content, you are welcome to watch the live video playback and conference materials video playback: https://www.modb.pro/video/6185Conference materials: https://www.modb.pro/doc/58548


Motianlun provides one-stop comprehensive services around the learning and growth of data people, creating a unified platform that integrates news, online Q&A, live events, online courses, document reading, resource downloads, knowledge sharing, and online operation and maintenance. Continue to promote knowledge dissemination and technological innovation in the field of data.

Follow the official public account: Motianlun, Motianlun platform, Motianlun growth camp, database localization, database information

{{o.name}}
{{m.name}}

Guess you like

Origin my.oschina.net/u/4559794/blog/5503153