DEV Community

Qing
Qing

Posted on

Using MOT(3)

MOT Deployment
· The following sections describe various mandatory and optional settings for optimal deployment.

· MOT Server Optimization – x86
Generally, databases are bounded by the following components –

· CPU – A faster CPU speeds up any CPU-bound database.
· Disk – High-speed SSD/NVME speeds up any I/O-bound database.
· Network – A faster network speeds up any SQL\Net-bound database.
In addition to the above, the following general-purpose server settings are used by default and may significantly affect a database's performance.

MOT performance tuning is a crucial step for ensuring fast application functionality and data retrieval. MOT can utilize state-of-the-art hardware, and therefore it is extremely important to tune each system in order to achieve maximum throughput.

The following are optional settings for optimizing MOT database performance running on an Intel x86 server. These settings are optimal for high throughput workloads –

BIOS
· Hyper Threading – ON

Activation (HT=ON) is highly recommended.

We recommend turning hyper threading ON while running OLTP workloads on MOT. When hyper‑threading is used, some OLTP workloads demonstrate performance gains of up to40%.

OS Environment Settings
· NUMA

Disable NUMA balancing, as described below. MOT performs its own memory management with extremely efficient NUMA-awareness, much more than the default methods used by the operating system.

Image description

· Services

Disable Services, as described below –

Image description

· Tuned Service

The following section is mandatory.

The server must run the throughput-performance profile –

Image description

The throughput-performance profile is broadly applicable tuning that provides excellent performance across a variety of common server workloads.

Other less suitable profiles for openGauss and MOT server that may affect MOT's overall performance are – balanced, desktop, latency-performance, network-latency, network-throughput and powersave.

· Sysctl

The following lists the recommended operating system settings for best performance.

· Add the following settings to /etc/sysctl.conf and run sysctl -p

Image description

· Update the section of /etc/security/limits.conf to the following –

Image description

The soft and a hard limit settings specify the quantity of files that a process may have opened at once. The soft limit may be changed by each process running these limits up to the hard limit value.

· Disk/SSD

The following describes how to ensure that disk R/W performance is suitable for database synchronous commit mode.

To do so, test your disk bandwidth using the following

Image description

In case the disk bandwidth is significantly below the above number (789 MB/s), it may create a performance bottleneck for openGauss, and especially for MOT.

Network
Use a 10Gbps network or higher.

To verify, use iperf, as follows –

Image description

· rc.local – Network Card Tuning

The following optional settings have a significant effect on performance –

  1. Copy set_irq_affinity.sh from https://gist.github.com/SaveTheRbtz/8875474 to /var/scripts/.

  2. Put in /etc/rc.d/rc.local and run chmod in order to ensure that the following script is executed during boot –

Image description

Top comments (0)