Learning Product Knowledge
openGauss is a relational database. It uses the client/server, single-process multi-thread architecture, and supports standalone and one-primary and multiple-standby deployment modes. In the primary/standby deployment mode, the standby node can be read, and HA and read expansion are supported.
Product Features
Compared with other open-source databases, openGauss has the following features: composite application scenarios, high performance, and high availability.
Composite application scenarios
- Row-store, supporting frequent service data updates
- Column-store, supporting service data appending and analysis
- Memory table, supporting high throughput, low latency, and ultra-high performance
High performance
- The multi-core data structure, incremental checkpoints, and large memory buffer management are used to implement 1 million transactions per minute (tpmC).
- The server connection pool supports tens of thousands of concurrent connections.
High availability (HA)
- Replication between the primary and standby nodes can be deployed in synchronous or asynchronous mode.
- Data page CRC check is supported. Damaged data pages are automatically restored by the standby node.
- The standby node recovers in parallel and can be promoted to primary to provide services within 10 seconds.
Software Architecture
openGauss includes the openGauss servers, client driver, and OM modules. This chapter describes the relationship between these modules.
Figure 1 shows the openGauss software architecture. In the documentation of openGauss, each openGauss server is called an instance.
Figure 1 Software architecture
For details about the meaning of each module in the figure, see Table 1.
Table 1 Module description
Typical Networking
To ensure the security of application data, you are advised to divide an openGauss typical network into two independent networks: front-end service network and data management and storage network.
Table 2 describes the network division.
Table 2 Network division
The typical networking has the following advantages:
- The service network is isolated from the database management and storage network, effectively protecting the security of back-end storage data.
- The isolation between the service network and database management and storage network prevents attackers from managing database servers through the Internet, improving system security.
Network exclusiveness and 1:1 bandwidth convergence ratio are the basic requirements for openGauss database network performance. Therefore, in the production system, the back-end storage network shown in Figure 2 must meet the requirements of exclusiveness and 1:1 bandwidth convergence ratio. For example, in Figure 3, the Fat-tree networking is used. To achieve a convergence ratio of 1:1, the bandwidth doubles each time the switching network layer is increased by one layer. In the figure, each bold line indicates the 80GE bandwidth, that is, the sum of the bandwidth upper limits of eight physical machines. At the access layer, each switch provides 160GE downlink bandwidth and 160GE uplink bandwidth. The convergence ratio is 1:1. The access bandwidth of each switch at the aggregation layer is 320GE.
For the test system, the preceding requirements can be lowered.